@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.2.4
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@import url("//fast.fonts.net/t/1.css?apiType=css&projectid=1012bedb-31f8-45fb-b456-920da8a1de29");
.slide-in-down.mui-enter, .slide-in-left.mui-enter, .slide-in-up.mui-enter, .slide-in-right.mui-enter, .slide-out-down.mui-leave, .slide-out-right.mui-leave, .slide-out-up.mui-leave, .slide-out-left.mui-leave, .fade-in.mui-enter, .fade-out.mui-leave, .hinge-in-from-top.mui-enter, .hinge-in-from-right.mui-enter, .hinge-in-from-bottom.mui-enter, .hinge-in-from-left.mui-enter, .hinge-in-from-middle-x.mui-enter, .hinge-in-from-middle-y.mui-enter, .hinge-out-from-top.mui-leave, .hinge-out-from-right.mui-leave, .hinge-out-from-bottom.mui-leave, .hinge-out-from-left.mui-leave, .hinge-out-from-middle-x.mui-leave, .hinge-out-from-middle-y.mui-leave, .scale-in-up.mui-enter, .scale-in-down.mui-enter, .scale-out-up.mui-leave, .scale-out-down.mui-leave, .spin-in.mui-enter, .spin-out.mui-leave, .spin-in-ccw.mui-enter, .spin-out-ccw.mui-leave {
  transition-duration: 500ms;
  transition-timing-function: linear; }

/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
   * 1. Set default font family to sans-serif.
   * 2. Prevent iOS and IE text size adjust after device orientation change,
   *    without disabling user zoom.
   */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
   * Remove default margin.
   */
body {
  margin: 0; }

/* HTML5 display definitions
     ========================================================================== */
/**
   * Correct `block` display not defined for any HTML5 element in IE 8/9.
   * Correct `block` display not defined for `details` or `summary` in IE 10/11
   * and Firefox.
   * Correct `block` display not defined for `main` in IE 11.
   */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

/**
   * 1. Correct `inline-block` display not defined in IE 8/9.
   * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
   */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
   * Prevent modern browsers from displaying `audio` without controls.
   * Remove excess height in iOS 5 devices.
   */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
   * Address `[hidden]` styling not present in IE 8/9/10.
   * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
   */
[hidden],
template {
  display: none; }

/* Links
     ========================================================================== */
/**
   * Remove the gray background color from active links in IE 10.
   */
a {
  background-color: transparent; }

/**
   * Improve readability of focused elements when they are also in an
   * active/hover state.
   */
a:active,
a:hover {
  outline: 0; }

/* Text-level semantics
     ========================================================================== */
/**
   * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
   */
abbr[title] {
  border-bottom: 1px dotted; }

/**
   * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
   */
b,
strong {
  font-weight: bold; }

/**
   * Address styling not present in Safari and Chrome.
   */
dfn {
  font-style: italic; }

/**
   * Address variable `h1` font-size and margin within `section` and `article`
   * contexts in Firefox 4+, Safari, and Chrome.
   */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
   * Address styling not present in IE 8/9.
   */
mark {
  background: #ff0;
  color: #000; }

/**
   * Address inconsistent and variable font size in all browsers.
   */
small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
     ========================================================================== */
/**
   * Remove border when inside `a` element in IE 8/9/10.
   */
img {
  border: 0; }

/**
   * Correct overflow not hidden in IE 9/10/11.
   */
svg:not(:root) {
  overflow: hidden; }

/* Grouping content
     ========================================================================== */
/**
   * Address margin not present in IE 8/9 and Safari.
   */
figure {
  margin: 1em 40px; }

/**
   * Address differences between Firefox and other browsers.
   */
hr {
  box-sizing: content-box;
  height: 0; }

/**
   * Contain overflow in all browsers.
   */
pre {
  overflow: auto; }

/**
   * Address odd `em`-unit font size rendering in all browsers.
   */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
     ========================================================================== */
/**
   * Known limitation: by default, Chrome and Safari on OS X allow very limited
   * styling of `select`, unless a `border` property is set.
   */
/**
   * 1. Correct color not being inherited.
   *    Known issue: affects color of disabled elements.
   * 2. Correct font properties not being inherited.
   * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
   */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
   * Address `overflow` set to `hidden` in IE 8/9/10/11.
   */
button {
  overflow: visible; }

/**
   * Address inconsistent `text-transform` inheritance for `button` and `select`.
   * All other form control elements do not inherit `text-transform` values.
   * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
   * Correct `select` style inheritance in Firefox.
   */
button,
select {
  text-transform: none; }

/**
   * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
   *    and `video` controls.
   * 2. Correct inability to style clickable `input` types in iOS.
   * 3. Improve usability and consistency of cursor style between image-type
   *    `input` and others.
   */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
   * Re-set default cursor for disabled elements.
   */
button[disabled],
html input[disabled] {
  cursor: not-allowed; }

/**
   * Remove inner padding and border in Firefox 4+.
   */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
   * Address Firefox 4+ setting `line-height` on `input` using `!important` in
   * the UA stylesheet.
   */
input {
  line-height: normal; }

/**
   * It's recommended that you don't attempt to style these elements.
   * Firefox's implementation doesn't respect box-sizing, padding, or width.
   *
   * 1. Address box sizing set to `content-box` in IE 8/9/10.
   * 2. Remove excess padding in IE 8/9/10.
   */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Fix the cursor style for Chrome's increment/decrement buttons. For certain
   * `font-size` values of the `input`, it causes the cursor style of the
   * decrement button to change from `default` to `text`.
   */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
   * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
   * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
   */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

/**
   * Remove inner padding and search cancel button in Safari and Chrome on OS X.
   * Safari (but not Chrome) clips the cancel button when the search input has
   * padding (and `textfield` appearance).
   */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
   * Define consistent border, margin, and padding.
   * [NOTE] We don't enable this ruleset in Foundation, because we want the <fieldset> element to have plain styling.
   */
/* fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
  } */
/**
   * 1. Correct `color` not being inherited in IE 8/9/10/11.
   * 2. Remove padding so people aren't caught out if they zero out fieldsets.
   */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
   * Remove default vertical scrollbar in IE 8/9/10/11.
   */
textarea {
  overflow: auto; }

/**
   * Don't inherit the `font-weight` (applied by a rule above).
   * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
   */
optgroup {
  font-weight: bold; }

/* Tables
     ========================================================================== */
/**
   * Remove most spacing between table cells.
   */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

.foundation-mq {
  font-family: "small=0em&smallmedium=30em&medium=48em&large=64em&xlarge=80em&xxlarge=90em&xxxlarge=118.75em"; }

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

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

body {
  padding: 0;
  margin: 0;
  font-family: "Heuristica";
  font-weight: normal;
  line-height: 1.5;
  color: #2c2f2f;
  background: #fefefe;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

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

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

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

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

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

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

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

.row {
  max-width: 93.125rem;
  margin-left: auto;
  margin-right: auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap; }
  .row .row {
    margin-left: -1.25rem;
    margin-right: -1.25rem; }
    @media screen and (min-width: 48em) {
      .row .row {
        margin-left: -3.125rem;
        margin-right: -3.125rem; } }
    @media screen and (min-width: 64em) {
      .row .row {
        margin-left: -1.25rem;
        margin-right: -1.25rem; } }
  .row.expanded {
    max-width: none; }
  .row.collapse > .column, .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.is-collapse-child,
  .row.collapse > .column > .row,
  .row.collapse > .columns > .row {
    margin-left: 0;
    margin-right: 0; }

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

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

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

.small-1 {
  -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-left: 0;
  padding-right: 0; }

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

@media screen and (min-width: 48em) {
  .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 screen and (min-width: 48em) and (min-width: 48em) {
  .medium-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; } }

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

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

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

@media screen and (min-width: 30em) and (min-width: 30em) {
  .smallmedium-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; } }

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

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

@media 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 screen and (min-width: 64em) and (min-width: 64em) {
  .large-expand {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; } }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.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;
      align-self: center; }

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

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

.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 screen and (min-width: 48em) {
  .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 screen and (min-width: 30em) {
  .smallmedium-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .smallmedium-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .smallmedium-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .smallmedium-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .smallmedium-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .smallmedium-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

@media 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; } }

@media screen and (min-width: 80em) {
  .xlarge-order-1 {
    -ms-flex-order: 1;
        order: 1; }
  .xlarge-order-2 {
    -ms-flex-order: 2;
        order: 2; }
  .xlarge-order-3 {
    -ms-flex-order: 3;
        order: 3; }
  .xlarge-order-4 {
    -ms-flex-order: 4;
        order: 4; }
  .xlarge-order-5 {
    -ms-flex-order: 5;
        order: 5; }
  .xlarge-order-6 {
    -ms-flex-order: 6;
        order: 6; } }

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

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

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

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

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

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

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Heuristica";
  font-weight: normal;
  font-style: normal;
  color: inherit;
  text-rendering: optimizeLegibility;
  margin-top: 0;
  margin-bottom: 0.5rem;
  line-height: 1.4; }
  h1 small,
  h2 small,
  h3 small,
  h4 small,
  h5 small,
  h6 small {
    color: #676767;
    line-height: 0; }

h1 {
  font-size: 1.5rem; }

h2 {
  font-size: 1.25rem; }

h3 {
  font-size: 1.1875rem; }

h4 {
  font-size: 1.125rem; }

h5 {
  font-size: 1.0625rem; }

h6 {
  font-size: 1rem; }

@media screen and (min-width: 48em) {
  h1 {
    font-size: 3rem; }
  h2 {
    font-size: 2.5rem; }
  h3 {
    font-size: 1.9375rem; }
  h4 {
    font-size: 1.5625rem; }
  h5 {
    font-size: 1.25rem; }
  h6 {
    font-size: 1rem; } }

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

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

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

li {
  font-size: inherit; }

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

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 #676767; }
  blockquote, blockquote p {
    line-height: 1.6;
    color: #8a8a8a; }

cite {
  display: block;
  font-size: 0.8125rem;
  color: #8a8a8a; }
  cite:before {
    content: '\2014 \0020'; }

abbr {
  color: #2c2f2f;
  cursor: help;
  border-bottom: 1px dotted #0a0a0a; }

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

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

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

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

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

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

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

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

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

@media print {
  * {
    background: transparent !important;
    color: black !important;
    box-shadow: none !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; } }

.button {
  display: inline-block;
  text-align: center;
  line-height: 1;
  cursor: pointer;
  -webkit-appearance: none;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  vertical-align: middle;
  border: 1px solid transparent;
  border-radius: 0;
  padding: 0.85em 1em;
  margin: 0 0 1rem 0;
  font-size: 0.9rem;
  background-color: #0B8651;
  color: #fefefe; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button:hover, .button:focus {
    background-color: #097245;
    color: #fefefe; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-right: 0; }
  .button.primary {
    background-color: #0B8651;
    color: #fefefe; }
    .button.primary:hover, .button.primary:focus {
      background-color: #096b41;
      color: #fefefe; }
  .button.secondary {
    background-color: #777;
    color: #fefefe; }
    .button.secondary:hover, .button.secondary:focus {
      background-color: #5f5f5f;
      color: #fefefe; }
  .button.success {
    background-color: #3adb76;
    color: #fefefe; }
    .button.success:hover, .button.success:focus {
      background-color: #22bb5b;
      color: #fefefe; }
  .button.warning {
    background-color: #ffae00;
    color: #fefefe; }
    .button.warning:hover, .button.warning:focus {
      background-color: #cc8b00;
      color: #fefefe; }
  .button.alert {
    background-color: #ec5840;
    color: #fefefe; }
    .button.alert:hover, .button.alert:focus {
      background-color: #da3116;
      color: #fefefe; }
  .button.hollow {
    border: 1px solid #0B8651;
    color: #0B8651; }
    .button.hollow, .button.hollow:hover, .button.hollow:focus {
      background-color: transparent; }
    .button.hollow:hover, .button.hollow:focus {
      border-color: #064329;
      color: #064329; }
    .button.hollow.primary {
      border: 1px solid #0B8651;
      color: #0B8651; }
      .button.hollow.primary:hover, .button.hollow.primary:focus {
        border-color: #064329;
        color: #064329; }
    .button.hollow.secondary {
      border: 1px solid #777;
      color: #777; }
      .button.hollow.secondary:hover, .button.hollow.secondary:focus {
        border-color: #3c3c3c;
        color: #3c3c3c; }
    .button.hollow.success {
      border: 1px solid #3adb76;
      color: #3adb76; }
      .button.hollow.success:hover, .button.hollow.success:focus {
        border-color: #157539;
        color: #157539; }
    .button.hollow.warning {
      border: 1px solid #ffae00;
      color: #ffae00; }
      .button.hollow.warning:hover, .button.hollow.warning:focus {
        border-color: #805700;
        color: #805700; }
    .button.hollow.alert {
      border: 1px solid #ec5840;
      color: #ec5840; }
      .button.hollow.alert:hover, .button.hollow.alert:focus {
        border-color: #881f0e;
        color: #881f0e; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
    .button.disabled:hover, .button.disabled:focus, .button[disabled]:hover, .button[disabled]:focus {
      background-color: #0B8651;
      color: #fefefe; }
    .button.disabled.primary, .button[disabled].primary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary:hover, .button[disabled].primary:focus {
        background-color: #0B8651;
        color: #fefefe; }
    .button.disabled.secondary, .button[disabled].secondary {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
        background-color: #777;
        color: #fefefe; }
    .button.disabled.success, .button[disabled].success {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success:hover, .button[disabled].success:focus {
        background-color: #3adb76;
        color: #fefefe; }
    .button.disabled.warning, .button[disabled].warning {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning:hover, .button[disabled].warning:focus {
        background-color: #ffae00;
        color: #fefefe; }
    .button.disabled.alert, .button[disabled].alert {
      opacity: 0.25;
      cursor: not-allowed; }
      .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert:hover, .button[disabled].alert:focus {
        background-color: #ec5840;
        color: #fefefe; }
  .button.dropdown::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    border-color: #fefefe transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    position: relative;
    top: 0.4em;
    float: right;
    margin-left: 1em;
    display: inline-block; }
  .button.arrow-only::after {
    margin-left: 0;
    float: none;
    top: -0.1em; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #676767;
  margin: 0 0 1rem;
  font-family: inherit;
  font-size: 1rem;
  color: #0a0a0a;
  background-color: #fefefe;
  box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  border-radius: 0;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  -webkit-appearance: none;
  -moz-appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    border: 1px solid #8a8a8a;
    background-color: #fefefe;
    outline: none;
    box-shadow: 0 0 5px #676767;
    transition: box-shadow 0.5s, border-color 0.25s ease-in-out; }

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

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

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

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #e6e6e6;
  cursor: default; }

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

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

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

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

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

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

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

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #0a0a0a; }

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

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

.input-group-label {
  text-align: center;
  padding: 0 1rem;
  background: #e6e6e6;
  color: #0a0a0a;
  border: 1px solid #676767;
  white-space: nowrap;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .input-group-label:first-child {
    border-right: 0; }
  .input-group-label:last-child {
    border-left: 0; }

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

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }
  .input-group-button a,
  .input-group-button input,
  .input-group-button button {
    margin: 0; }

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

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

.fieldset {
  border: 1px solid #676767;
  padding: 1.25rem;
  margin: 1.125rem 0; }
  .fieldset legend {
    background: #fefefe;
    padding: 0 0.1875rem;
    margin: 0;
    margin-left: -0.1875rem; }

select {
  height: 2.4375rem;
  padding: 0.5rem;
  border: 1px solid #676767;
  margin: 0 0 1rem;
  font-size: 1rem;
  font-family: inherit;
  line-height: normal;
  color: #0a0a0a;
  background-color: #fefefe;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%28138, 138, 138%29'></polygon></svg>");
  background-size: 9px 6px;
  background-position: right -1rem center;
  background-origin: content-box;
  background-repeat: no-repeat;
  padding-right: 1.5rem; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:disabled {
    background-color: #e6e6e6;
    cursor: default; }
  select::-ms-expand {
    display: none; }
  select[multiple] {
    height: auto;
    background-image: none; }

.is-invalid-input:not(:focus) {
  background-color: rgba(236, 88, 64, 0.1);
  border-color: #ec5840; }

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

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #ec5840; }
  .form-error.is-visible {
    display: block; }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

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

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

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

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

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

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

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

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

@media screen and (min-width: 30em) and (max-width: 47.9375em) {
  .hide-for-smallmedium-only {
    display: none !important; } }

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

@media 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: 79.9375em) {
  .hide-for-large-only {
    display: none !important; } }

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

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

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

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

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

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

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

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

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

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

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

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

@media screen and (max-width: 89.9375em), screen and (min-width: 118.75em) {
  .show-for-xxlarge-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;
  height: auto;
  width: 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 !important; }

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

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

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

.clearfix::after {
  clear: both; }

.accordion {
  list-style-type: none;
  background: #fefefe;
  margin-left: 0; }

.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 {
  display: block;
  padding: 1.25rem 1rem;
  line-height: 1;
  font-size: 0.75rem;
  color: #0B8651;
  position: relative;
  border: 1px solid #e6e6e6;
  border-bottom: 0; }
  :last-child:not(.is-active) > .accordion-title {
    border-radius: 0 0 0 0;
    border-bottom: 1px solid #e6e6e6; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: #e6e6e6; }
  .accordion-title::before {
    content: '+';
    position: absolute;
    right: 1rem;
    top: 50%;
    margin-top: -0.5rem; }
  .is-active > .accordion-title::before {
    content: '–'; }

.accordion-content {
  padding: 1rem;
  display: none;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #e6e6e6; }

.badge {
  display: inline-block;
  padding: 0.3em;
  min-width: 2.1em;
  font-size: 0.6rem;
  text-align: center;
  border-radius: 50%;
  background: #0B8651;
  color: #fefefe; }
  .badge.secondary {
    background: #777;
    color: #fefefe; }
  .badge.success {
    background: #3adb76;
    color: #fefefe; }
  .badge.warning {
    background: #ffae00;
    color: #fefefe; }
  .badge.alert {
    background: #ec5840;
    color: #fefefe; }

.breadcrumbs {
  list-style: none;
  margin: 0 0 1rem 0; }
  .breadcrumbs::before, .breadcrumbs::after {
    content: ' ';
    display: table;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .breadcrumbs::after {
    clear: both; }
  .breadcrumbs li {
    float: left;
    color: #0a0a0a;
    font-size: 0.6875rem;
    cursor: default;
    text-transform: uppercase; }
    .breadcrumbs li:not(:last-child)::after {
      color: #676767;
      content: "/";
      margin: 0 0.75rem;
      position: relative;
      top: 1px;
      opacity: 1; }
  .breadcrumbs a {
    color: #0B8651; }
    .breadcrumbs a:hover {
      text-decoration: underline; }
  .breadcrumbs .disabled {
    color: #676767;
    cursor: not-allowed; }

.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 {
    content: ' ';
    display: table;
    -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: 0.9rem;
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
    .button-group .button:last-child {
      margin-right: 0; }
  .button-group.tiny .button {
    font-size: 0.6rem; }
  .button-group.small .button {
    font-size: 0.75rem; }
  .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: #0B8651;
    color: #fefefe; }
    .button-group.primary .button:hover, .button-group.primary .button:focus {
      background-color: #096b41;
      color: #fefefe; }
  .button-group.secondary .button {
    background-color: #777;
    color: #fefefe; }
    .button-group.secondary .button:hover, .button-group.secondary .button:focus {
      background-color: #5f5f5f;
      color: #fefefe; }
  .button-group.success .button {
    background-color: #3adb76;
    color: #fefefe; }
    .button-group.success .button:hover, .button-group.success .button:focus {
      background-color: #22bb5b;
      color: #fefefe; }
  .button-group.warning .button {
    background-color: #ffae00;
    color: #fefefe; }
    .button-group.warning .button:hover, .button-group.warning .button:focus {
      background-color: #cc8b00;
      color: #fefefe; }
  .button-group.alert .button {
    background-color: #ec5840;
    color: #fefefe; }
    .button-group.alert .button:hover, .button-group.alert .button:focus {
      background-color: #da3116;
      color: #fefefe; }
  .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 screen and (min-width: 48em) {
    .button-group.stacked-for-small .button {
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
      margin-bottom: 0; } }
  @media 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: 29.9375em) {
    .button-group.stacked-for-small.expanded {
      display: block; }
      .button-group.stacked-for-small.expanded .button {
        display: block;
        margin-right: 0; } }

.callout {
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
  position: relative;
  color: #2c2f2f;
  background-color: white; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #ccfbe7; }
  .callout.secondary {
    background-color: #ebebeb; }
  .callout.success {
    background-color: #e1faea; }
  .callout.warning {
    background-color: #fff3d9; }
  .callout.alert {
    background-color: #fce6e2; }
  .callout.small {
    padding-top: 0.5rem;
    padding-right: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 0.5rem; }
  .callout.large {
    padding-top: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    padding-left: 3rem; }

.close-button {
  position: absolute;
  color: #8a8a8a;
  right: 1rem;
  top: 0.5rem;
  font-size: 2em;
  line-height: 1;
  cursor: pointer; }
  [data-whatinput='mouse'] .close-button {
    outline: 0; }
  .close-button:hover, .close-button:focus {
    color: #0a0a0a; }

.is-drilldown {
  position: relative;
  overflow: hidden; }
  .is-drilldown li {
    display: block !important; }

.is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  transition: transform 0.15s linear; }
  .is-drilldown-submenu.is-active {
    z-index: 1;
    display: block;
    -ms-transform: translateX(-100%);
        transform: translateX(-100%); }
  .is-drilldown-submenu.is-closing {
    -ms-transform: translateX(100%);
        transform: translateX(100%); }

.is-drilldown-submenu-parent > a {
  position: relative; }
  .is-drilldown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 6px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0;
    position: absolute;
    top: 50%;
    margin-top: -6px;
    right: 1rem; }

.js-drilldown-back > a::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  border-color: transparent #0B8651 transparent transparent;
  border-right-style: solid;
  border-left-width: 0;
  border-left-width: 0;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem; }

.dropdown-pane {
  background-color: #fefefe;
  border: 1px solid #676767;
  border-radius: 0;
  display: block;
  font-size: 1rem;
  padding: 1rem;
  position: absolute;
  visibility: hidden;
  width: 300px;
  z-index: 10; }
  .dropdown-pane.is-open {
    visibility: visible; }

.dropdown-pane.tiny {
  width: 100px; }

.dropdown-pane.small {
  width: 200px; }

.dropdown-pane.large {
  width: 400px; }

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 0;
  top: 100%; }

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 0;
  top: 100%; }

.dropdown.menu > li.is-dropdown-submenu-parent > a {
  padding-right: 1.5rem;
  position: relative; }

.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: #0B8651 transparent transparent;
  border-top-style: solid;
  border-bottom-width: 0;
  right: 5px;
  margin-top: -2px; }

[data-whatinput='mouse'] .dropdown.menu a {
  outline: 0; }

.no-js .dropdown.menu ul {
  display: none; }

.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0; }

.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  left: auto;
  right: 100%; }

.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%; }

.dropdown.menu.vertical > li > a::after {
  right: 14px;
  margin-top: -3px; }

.dropdown.menu.vertical > li.opens-left > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent #0B8651 transparent transparent;
  border-right-style: solid;
  border-left-width: 0; }

.dropdown.menu.vertical > li.opens-right > a::after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border: inset 5px;
  border-color: transparent transparent transparent #0B8651;
  border-left-style: solid;
  border-right-width: 0; }

@media screen and (min-width: 48em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 30em) {
  .dropdown.menu.smallmedium-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.smallmedium-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.smallmedium-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.smallmedium-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.smallmedium-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.smallmedium-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.smallmedium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.smallmedium-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.smallmedium-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.smallmedium-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 80em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

@media screen and (min-width: 90em) {
  .dropdown.menu.xxlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 0;
    top: 100%; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a {
    padding-right: 1.5rem;
    position: relative; }
  .dropdown.menu.xxlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: #0B8651 transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    right: 5px;
    margin-top: -2px; }
  .dropdown.menu.xxlarge-vertical > li .is-dropdown-submenu {
    top: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }
  .dropdown.menu.xxlarge-vertical > li > a::after {
    right: 14px;
    margin-top: -3px; }
  .dropdown.menu.xxlarge-vertical > li.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .dropdown.menu.xxlarge-vertical > li.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; } }

.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  left: auto;
  right: 0; }

.is-dropdown-menu.vertical {
  width: 100px; }
  .is-dropdown-menu.vertical.align-right {
    float: right; }

.is-dropdown-submenu-parent {
  position: relative; }
  .is-dropdown-submenu-parent a::after {
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -2px; }
  .is-dropdown-submenu-parent.opens-inner > .is-dropdown-submenu {
    top: 100%;
    left: auto; }
  .is-dropdown-submenu-parent.opens-left > .is-dropdown-submenu {
    left: auto;
    right: 100%; }
  .is-dropdown-submenu-parent.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%; }

.is-dropdown-submenu {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  min-width: 200px;
  z-index: 1;
  background: #fefefe;
  border: 1px solid #676767; }
  .is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
    right: 14px;
    margin-top: -3px; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent #0B8651 transparent transparent;
    border-right-style: solid;
    border-left-width: 0; }
  .is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 5px;
    border-color: transparent transparent transparent #0B8651;
    border-left-style: solid;
    border-right-width: 0; }
  .is-dropdown-submenu .is-dropdown-submenu {
    margin-top: -1px; }
  .is-dropdown-submenu > li {
    width: 100%; }
  .is-dropdown-submenu.js-dropdown-active {
    display: block; }

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

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  border-radius: 0;
  background: #0B8651;
  color: #fefefe; }
  .label.secondary {
    background: #777;
    color: #fefefe; }
  .label.success {
    background: #3adb76;
    color: #fefefe; }
  .label.warning {
    background: #ffae00;
    color: #fefefe; }
  .label.alert {
    background: #ec5840;
    color: #fefefe; }

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

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

.menu {
  margin: 0;
  list-style-type: none;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap; }
  .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.7rem 1rem;
    line-height: 1; }
  .menu input,
  .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 > li {
    -ms-flex: 0 0 auto;
        flex: 0 0 auto; }
  .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-align: start;
          align-items: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  @media screen and (min-width: 48em) {
    .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-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-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  @media screen and (min-width: 30em) {
    .menu.smallmedium-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.smallmedium-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.smallmedium-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.smallmedium-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.smallmedium-vertical > li > a {
        -ms-flex-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  @media 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-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-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  @media screen and (min-width: 80em) {
    .menu.xlarge-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.xlarge-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.xlarge-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.xlarge-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.xlarge-vertical > li > a {
        -ms-flex-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  @media screen and (min-width: 90em) {
    .menu.xxlarge-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.xxlarge-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.xxlarge-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.xxlarge-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.xxlarge-vertical > li > a {
        -ms-flex-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  @media screen and (min-width: 90em) {
    .menu.xxlarge-horizontal {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .menu.xxlarge-horizontal > li {
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
    .menu.xxlarge-vertical {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .menu.xxlarge-vertical > li {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; }
      .menu.xxlarge-vertical > li > a {
        -ms-flex-align: start;
            align-items: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start; } }
  .menu.simple li {
    line-height: 1;
    display: inline-block;
    margin-right: 1rem; }
  .menu.simple a {
    padding: 0; }
  .menu.align-right {
    -ms-flex-pack: end;
        justify-content: flex-end; }
  .menu.expanded > li {
    -ms-flex: 1 1 0px;
        flex: 1 1 0px; }
  .menu.expanded > li:first-child:last-child {
    width: 100%; }
  .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;
          align-self: stretch;
      text-align: center;
      margin-bottom: 0.25rem; }
  .menu.nested {
    margin-left: 1rem; }
  .menu .active > a {
    color: #fefefe;
    background: #0B8651; }

.menu-text {
  font-weight: bold;
  color: inherit;
  line-height: 1;
  padding-top: 0;
  padding-bottom: 0;
  padding: 0.7rem 1rem; }

.menu-centered {
  text-align: center; }
  .menu-centered > .menu {
    display: inline-block; }

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

html,
body {
  height: 100%; }

.off-canvas-wrapper {
  width: 100%;
  overflow-x: hidden;
  position: relative;
  backface-visibility: hidden;
  -webkit-overflow-scrolling: auto; }

.off-canvas-wrapper-inner {
  position: relative;
  width: 100%;
  min-height: 100%;
  transition: transform 0.5s ease; }
  .off-canvas-wrapper-inner::before, .off-canvas-wrapper-inner::after {
    content: ' ';
    display: table;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .off-canvas-wrapper-inner::after {
    clear: both; }

.off-canvas-content,
.off-canvas-content {
  min-height: 100%;
  background: #fefefe;
  transition: transform 0.5s ease;
  backface-visibility: hidden;
  z-index: 1;
  padding-bottom: 0.1px;
  box-shadow: 0 0 10px rgba(10, 10, 10, 0.5); }

.js-off-canvas-exit {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(254, 254, 254, 0.25);
  cursor: pointer;
  transition: background 0.5s ease; }

.off-canvas {
  position: absolute;
  background: #e6e6e6;
  z-index: -1;
  max-height: 100%;
  overflow-y: auto;
  -ms-transform: translateX(0);
      transform: translateX(0); }
  [data-whatinput='mouse'] .off-canvas {
    outline: 0; }
  .off-canvas.position-left {
    left: -250px;
    top: 0;
    width: 250px; }
    .is-open-left {
      -ms-transform: translateX(250px);
          transform: translateX(250px); }
  .off-canvas.position-right {
    right: -250px;
    top: 0;
    width: 250px; }
    .is-open-right {
      -ms-transform: translateX(-250px);
          transform: translateX(-250px); }

@media screen and (min-width: 48em) {
  .position-left.reveal-for-medium {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-medium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-medium {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-medium ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 30em) {
  .position-left.reveal-for-smallmedium {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-smallmedium ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-smallmedium {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-smallmedium ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-large ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-large {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-large ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 80em) {
  .position-left.reveal-for-xlarge {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-xlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xlarge {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-xlarge ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; } }

@media screen and (min-width: 90em) {
  .position-left.reveal-for-xxlarge {
    left: 0;
    z-index: auto;
    position: fixed; }
    .position-left.reveal-for-xxlarge ~ .off-canvas-content {
      margin-left: 250px; }
  .position-right.reveal-for-xxlarge {
    right: 0;
    z-index: auto;
    position: fixed; }
    .position-right.reveal-for-xxlarge ~ .off-canvas-content {
      margin-right: 250px; } }

.orbit {
  position: relative; }

.orbit-container {
  position: relative;
  margin: 0;
  overflow: hidden;
  list-style: none; }

.orbit-slide {
  width: 100%;
  max-height: 100%; }
  .orbit-slide.no-motionui.is-active {
    top: 0;
    left: 0; }

.orbit-figure {
  margin: 0; }

.orbit-image {
  margin: 0;
  width: 100%;
  max-width: 100%; }

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding: 1rem;
  margin-bottom: 0;
  color: #fefefe;
  background-color: rgba(10, 10, 10, 0.5); }

.orbit-previous, .orbit-next {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  z-index: 10;
  padding: 1rem;
  color: #fefefe; }
  [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(10, 10, 10, 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;
    background-color: #676767;
    border-radius: 50%; }
    .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 {
    content: ' ';
    display: table;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .pagination::after {
    clear: both; }
  .pagination li {
    font-size: 0.875rem;
    margin-right: 0.0625rem;
    border-radius: 0;
    display: none; }
    .pagination li:last-child, .pagination li:first-child {
      display: inline-block; }
    @media screen and (min-width: 48em) {
      .pagination li {
        display: inline-block; } }
  .pagination a,
  .pagination button {
    color: #0a0a0a;
    display: block;
    padding: 0.1875rem 0.625rem;
    border-radius: 0; }
    .pagination a:hover,
    .pagination button:hover {
      background: #e6e6e6; }
  .pagination .current {
    padding: 0.1875rem 0.625rem;
    background: #0B8651;
    color: #fefefe;
    cursor: default; }
  .pagination .disabled {
    padding: 0.1875rem 0.625rem;
    color: #676767;
    cursor: not-allowed; }
    .pagination .disabled:hover {
      background: transparent; }
  .pagination .ellipsis::after {
    content: '\2026';
    padding: 0.1875rem 0.625rem;
    color: #0a0a0a; }

.pagination-previous a::before,
.pagination-previous.disabled::before {
  content: '\00ab';
  display: inline-block;
  margin-right: 0.5rem; }

.pagination-next a::after,
.pagination-next.disabled::after {
  content: '\00bb';
  display: inline-block;
  margin-left: 0.5rem; }

.progress {
  background-color: #676767;
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0; }
  .progress.primary .progress-meter {
    background-color: #0B8651; }
  .progress.secondary .progress-meter {
    background-color: #777; }
  .progress.success .progress-meter {
    background-color: #3adb76; }
  .progress.warning .progress-meter {
    background-color: #ffae00; }
  .progress.alert .progress-meter {
    background-color: #ec5840; }

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #0B8651; }

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  position: absolute;
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap; }

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-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: #676767;
  transition: all 0.2s ease-in-out; }
  .slider-fill.is-dragging {
    transition: all 0s linear; }

.slider-handle {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  position: absolute;
  left: 0;
  z-index: 1;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #0B8651;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  border-radius: 0; }
  [data-whatinput='mouse'] .slider-handle {
    outline: 0; }
  .slider-handle:hover {
    background-color: #097245; }
  .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;
  -ms-transform: scale(1, -1);
      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;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }

.sticky-container {
  position: relative; }

.sticky {
  position: absolute;
  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: absolute;
  left: auto;
  right: auto; }
  .sticky.is-anchored.is-at-bottom {
    bottom: 0; }

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

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

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

.reveal {
  display: none;
  z-index: 1006;
  padding: 1rem;
  border: 1px solid #676767;
  background-color: #fefefe;
  border-radius: 0;
  position: relative;
  top: 100px;
  margin-left: auto;
  margin-right: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media screen and (min-width: 48em) {
    .reveal {
      min-height: 0; } }
  .reveal .column, .reveal .columns,
  .reveal .columns {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 48em) {
    .reveal {
      width: 600px;
      max-width: 93.125rem; } }
  @media screen and (min-width: 48em) {
    .reveal .reveal {
      left: auto;
      right: auto;
      margin: 0 auto; } }
  .reveal.collapse {
    padding: 0; }
  @media screen and (min-width: 48em) {
    .reveal.tiny {
      width: 30%;
      max-width: 93.125rem; } }
  @media screen and (min-width: 48em) {
    .reveal.small {
      width: 50%;
      max-width: 93.125rem; } }
  @media screen and (min-width: 48em) {
    .reveal.large {
      width: 90%;
      max-width: 93.125rem; } }
  .reveal.full {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    height: 100vh;
    min-height: 100vh;
    max-width: none;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media screen and (max-width: 29.9375em) {
    .reveal {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      height: 100vh;
      min-height: 100vh;
      max-width: none;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.switch {
  height: 2rem;
  margin-bottom: 1rem;
  outline: 0;
  position: relative;
  -webkit-user-select: none;
      -ms-user-select: none;
          user-select: none;
  color: #fefefe;
  font-weight: bold;
  font-size: 0.875rem; }

.switch-input {
  opacity: 0;
  position: absolute;
  margin-bottom: 0; }

.switch-paddle {
  background: #676767;
  cursor: pointer;
  display: block;
  position: relative;
  width: 4rem;
  height: 2rem;
  transition: all 0.25s ease-out;
  border-radius: 0;
  color: inherit;
  font-weight: inherit; }
  input + .switch-paddle {
    margin: 0; }
  .switch-paddle::after {
    background: #fefefe;
    content: '';
    display: block;
    position: absolute;
    height: 1.5rem;
    left: 0.25rem;
    top: 0.25rem;
    width: 1.5rem;
    transition: all 0.25s ease-out;
    transform: translate3d(0, 0, 0);
    border-radius: 0; }
  input:checked ~ .switch-paddle {
    background: #0B8651; }
    input:checked ~ .switch-paddle::after {
      left: 2.25rem; }
  [data-whatinput='mouse'] input:focus ~ .switch-paddle {
    outline: 0; }

.switch-active, .switch-inactive {
  position: absolute;
  top: 50%;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%); }

.switch-active {
  left: 8%;
  display: none; }
  input:checked + label > .switch-active {
    display: block; }

.switch-inactive {
  right: 15%; }
  input:checked + label > .switch-inactive {
    display: none; }

.switch.tiny {
  height: 1.5rem; }
  .switch.tiny .switch-paddle {
    width: 3rem;
    height: 1.5rem;
    font-size: 0.625rem; }
  .switch.tiny .switch-paddle::after {
    width: 1rem;
    height: 1rem; }
  .switch.tiny input:checked ~ .switch-paddle::after {
    left: 1.75rem; }

.switch.small {
  height: 1.75rem; }
  .switch.small .switch-paddle {
    width: 3.5rem;
    height: 1.75rem;
    font-size: 0.75rem; }
  .switch.small .switch-paddle::after {
    width: 1.25rem;
    height: 1.25rem; }
  .switch.small input:checked ~ .switch-paddle::after {
    left: 2rem; }

.switch.large {
  height: 2.5rem; }
  .switch.large .switch-paddle {
    width: 5rem;
    height: 2.5rem;
    font-size: 1rem; }
  .switch.large .switch-paddle::after {
    width: 2rem;
    height: 2rem; }
  .switch.large input:checked ~ .switch-paddle::after {
    left: 2.75rem; }

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

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

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

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

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

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

table.hover tbody tr:nth-of-type(even):hover {
  background-color: #ececec; }

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

.tabs {
  margin: 0;
  list-style-type: none;
  background: #fefefe;
  border: 1px solid #e6e6e6; }
  .tabs::before, .tabs::after {
    content: ' ';
    display: table;
    -ms-flex-preferred-size: 0;
        flex-basis: 0;
    -ms-flex-order: 1;
        order: 1; }
  .tabs::after {
    clear: both; }

.tabs.vertical > li {
  width: auto;
  float: none;
  display: block; }

.tabs.simple > li > a {
  padding: 0; }
  .tabs.simple > li > a:hover {
    background: transparent; }

.tabs.primary {
  background: #0B8651; }
  .tabs.primary > li > a {
    color: #fefefe; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #0c975b; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    line-height: 1;
    font-size: 0.75rem; }
    .tabs-title > a:hover {
      background: #fefefe; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #e6e6e6; }

.tabs-content {
  background: #fefefe;
  transition: all 0.5s ease;
  border: 1px solid #e6e6e6;
  border-top: 0; }

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

.thumbnail {
  border: solid 4px #fefefe;
  box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  transition: box-shadow 200ms ease-out;
  border-radius: 0;
  margin-bottom: 1rem; }
  .thumbnail:hover, .thumbnail:focus {
    box-shadow: 0 0 6px 1px rgba(11, 134, 81, 0.5); }

.title-bar {
  background: #0a0a0a;
  color: #fefefe;
  padding: 0.5rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between; }
  .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 {
  font-weight: bold;
  vertical-align: middle;
  display: inline-block; }

.has-tip {
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  position: relative;
  display: inline-block;
  cursor: help; }

.tooltip {
  background-color: #0a0a0a;
  color: #fefefe;
  font-size: 75%;
  padding: 0.75rem;
  position: absolute;
  z-index: 10;
  top: calc(100% + 0.6495rem);
  max-width: 10rem !important;
  border-radius: 0; }
  .tooltip::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent transparent #0a0a0a;
    border-bottom-style: solid;
    border-top-width: 0;
    bottom: 100%;
    position: absolute;
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
  .tooltip.top::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: #0a0a0a transparent transparent;
    border-top-style: solid;
    border-bottom-width: 0;
    top: 100%;
    bottom: auto; }
  .tooltip.left::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent transparent transparent #0a0a0a;
    border-left-style: solid;
    border-right-width: 0;
    bottom: auto;
    left: 100%;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
  .tooltip.right::before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border: inset 0.75rem;
    border-color: transparent #0a0a0a transparent transparent;
    border-right-style: solid;
    border-left-width: 0;
    bottom: auto;
    left: auto;
    right: 100%;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }

.top-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 0.5rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .top-bar,
  .top-bar ul {
    background-color: #e6e6e6; }
  .top-bar input {
    max-width: 200px;
    margin-right: 1rem; }
  .top-bar .input-group-field {
    width: 100%;
    margin-right: 0; }
  .top-bar input.button {
    width: auto; }
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    max-width: 100%; }
  @media screen and (min-width: 48em) {
    .top-bar {
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap; }
      .top-bar .top-bar-left {
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
      .top-bar .top-bar-right {
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; } }
  @media screen and (max-width: 63.9375em) {
    .top-bar.stacked-for-medium {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-medium .top-bar-left,
      .top-bar.stacked-for-medium .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 47.9375em) {
    .top-bar.stacked-for-smallmedium {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-smallmedium .top-bar-left,
      .top-bar.stacked-for-smallmedium .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 79.9375em) {
    .top-bar.stacked-for-large {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-large .top-bar-left,
      .top-bar.stacked-for-large .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 89.9375em) {
    .top-bar.stacked-for-xlarge {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-xlarge .top-bar-left,
      .top-bar.stacked-for-xlarge .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 118.6875em) {
    .top-bar.stacked-for-xxlarge {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-xxlarge .top-bar-left,
      .top-bar.stacked-for-xxlarge .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }
  @media screen and (max-width: 118.6875em) {
    .top-bar.stacked-for-xxlarge {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .top-bar.stacked-for-xxlarge .top-bar-left,
      .top-bar.stacked-for-xxlarge .top-bar-right {
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
        max-width: 100%; } }

.top-bar-title {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto;
  margin-right: 1rem; }

.top-bar-left,
.top-bar-right {
  -ms-flex: 0 0 auto;
      flex: 0 0 auto; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.fade-in.mui-enter {
  opacity: 0;
  transition-property: opacity; }

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

.fade-out.mui-leave {
  opacity: 1;
  transition-property: opacity; }

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

.hinge-in-from-top.mui-enter {
  transform: perspective(2000px) rotateX(-90deg);
  -ms-transform-origin: top;
      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 {
  transform: perspective(2000px) rotateY(-90deg);
  -ms-transform-origin: right;
      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 {
  transform: perspective(2000px) rotateX(90deg);
  -ms-transform-origin: bottom;
      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 {
  transform: perspective(2000px) rotateY(90deg);
  -ms-transform-origin: left;
      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 {
  transform: perspective(2000px) rotateX(-90deg);
  -ms-transform-origin: center;
      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 {
  transform: perspective(2000px) rotateY(-90deg);
  -ms-transform-origin: center;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: top;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: right;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: bottom;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: left;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: center;
      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 {
  transform: perspective(2000px) rotate(0deg);
  -ms-transform-origin: center;
      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 {
  -ms-transform: scale(0.5);
      transform: scale(0.5);
  transition-property: transform, opacity;
  opacity: 0; }

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

.scale-in-down.mui-enter {
  -ms-transform: scale(1.5);
      transform: scale(1.5);
  transition-property: transform, opacity;
  opacity: 0; }

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

.scale-out-up.mui-leave {
  -ms-transform: scale(1);
      transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

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

.scale-out-down.mui-leave {
  -ms-transform: scale(1);
      transform: scale(1);
  transition-property: transform, opacity;
  opacity: 1; }

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

.spin-in.mui-enter {
  -ms-transform: rotate(-0.75turn);
      transform: rotate(-0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

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

.spin-out.mui-leave {
  -ms-transform: rotate(0);
      transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

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

.spin-in-ccw.mui-enter {
  -ms-transform: rotate(0.75turn);
      transform: rotate(0.75turn);
  transition-property: transform, opacity;
  opacity: 0; }

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

.spin-out-ccw.mui-leave {
  -ms-transform: rotate(0);
      transform: rotate(0);
  transition-property: transform, opacity;
  opacity: 1; }

.spin-out-ccw.mui-leave.mui-leave-active {
  -ms-transform: rotate(-0.75turn);
      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); } }

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

/************
 Use

.box {
  &.arrow-top-left {@include arrow('top','left', 10px, #4fade3)}
  &.arrow-top-right {@include arrow('top','right', 10px, #4fade3)}
  &.arrow-top-center {@include arrow('top','center', 10px, #4fade3)}
  &.arrow-bottom-left {@include arrow('bottom','left', 10px, #4fade3)}
  &.arrow-bottom-right {@include arrow('bottom','right', 10px, #4fade3)}
  &.arrow-bottom-center {@include arrow('bottom','center', 10px, #4fade3)}
  &.arrow-left-top {@include arrow('left','top', 10px, #4fade3)}
  &.arrow-left-center {@include arrow('left','center', 10px, #4fade3)}
  &.arrow-left-bottom {@include arrow('left','bottom', 10px, #4fade3)}
  &.arrow-right-top {@include arrow('right','top', 10px, #4fade3)}
  &.arrow-right-center {@include arrow('right','center', 10px, #4fade3)}
  &.arrow-right-bottom {@include arrow('right','bottom', 10px, #4fade3)}
}


.box-with-border {
  &.arrow-top-left {@include arrow('top','left', 10px, #eee, #4fade3, 6px)}
  &.arrow-top-right {@include arrow('top','right', 10px, #eee, #4fade3, 6px)}
  &.arrow-top-center {@include arrow('top','center', 10px, #eee, #4fade3, 6px)}
  &.arrow-bottom-left {@include arrow('bottom','left', 10px, #eee, #4fade3, 6px)}
  &.arrow-bottom-right {@include arrow('bottom','right', 10px, #eee, #4fade3, 6px)}
  &.arrow-bottom-center {@include arrow('bottom','center', 10px, #eee, #4fade3, 6px)}
  &.arrow-left-top {@include arrow('left','top', 10px, #eee, #4fade3, 6px)}
  &.arrow-left-center {@include arrow('left','center', 10px, #eee, #4fade3, 6px)}
  &.arrow-left-bottom {@include arrow('left','bottom', 10px, #eee, #4fade3, 6px)}
  &.arrow-right-top {@include arrow('right','top', 10px, #eee, #4fade3, 6px)}
  &.arrow-right-center {@include arrow('right','center', 10px, #eee, #4fade3, 6px)}
  &.arrow-right-bottom {@include arrow('right','bottom', 10px, #eee, #4fade3, 6px)}
}


************/
/* usage example
.div {  
  &:after {
    @include wf-icon (icon, font-size, color);
    display:block;
    width:50px;
    height:50px;    
  }
}

*/
.animated {
  animation-duration: 1s;
  animation-fill-mode: both; }

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-10%, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }

.fadeInLeft {
  animation-name: fadeInLeft; }

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(10%, 0, 0); }
  to {
    opacity: 1;
    transform: none; } }

.fadeInRight {
  animation-name: fadeInRight; }

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 10%, 0); }
  to {
    opacity: 1;
    transform: none; } }

.fadeInUp {
  animation-name: fadeInUp; }

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
*,
*:before,
*:after {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }
  a:link {
    text-decoration: none; }
  a:visited {
    text-decoration: none; }
  a:active {
    text-decoration: none; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible; }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */ }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto; }

/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/* Helper classes
 ========================================== */
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main {
  display: block; }

html,
body {
  height: 100%;
  line-height: 1; }

body {
  width: 100%;
  font-family: Heuristica; }

ol, ul {
  list-style: none;
  margin: 0;
  padding: 0; }

ul li {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  transition: all 200ms ease-in-out; }

input {
  transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
  -o-transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out; }

/*label{
  transition: all 200ms ease-in-out;
  -webkit-transition: all 200ms ease-in-out;
  -o-transition: all 200ms ease-in-out;
  -moz-transition: all 200ms ease-in-out;
}*/
.clear {
  clear: both;
  float: none; }

.titleNamePage h3 {
  padding: 20px 0 15px 0; }

.pinkBtn19 {
  font-size: 19px;
  line-height: 16px; }

.pinkBtn24 {
  font-size: 24px;
  line-height: 23px; }

.pinkSubmit {
  font-family: interface, Arial, sans-serif;
  font-size: 19px;
  display: inline-block;
  background: #af1478;
  font-weight: 400;
  color: #ffffff;
  padding: 10px 15px; }
  .pinkSubmit.postComment {
    font-family: interface, Arial, sans-serif;
    font-size: 24px; }

.fs16 {
  font-size: 16px; }

.bR {
  border-right: 1px solid #e9e9e9; }

.bRGray {
  border-right: 1px solid #b7b7b7; }

.bB {
  border-bottom: 1px solid #e9e9e9; }

@media only screen and (max-width: 640px) {
  .bR {
    border: none; }
  .bRGray {
    border: none; } }

/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
/* '' */
@font-face {
  font-family: "Stolzl W00 Book";
  src: url("../fonts/d4eb3f3d-4d40-42cc-80eb-005aaacd2d01.eot?#iefix");
  src: url("../fonts/d4eb3f3d-4d40-42cc-80eb-005aaacd2d01.eot?#iefix") format("eot"), url("../fonts/df3260a8-4249-4876-b2ea-9d30ca8a5d84.woff2") format("woff2"), url("../fonts/f9997371-f2b0-4efd-9afa-aedc523bda83.woff") format("woff"), url("../fonts/484c03db-6da4-413f-85e7-bfced6277476.ttf") format("truetype"), url("../fonts/e1f9b8d5-2990-491b-9461-6410a197eeb6.svg#e1f9b8d5-2990-491b-9461-6410a197eeb6") format("svg"); }

@font-face {
  font-family: "Stolzl W00 Medium";
  src: url("../fonts/e25e6f46-99c9-46b7-9780-31f5e37ed20f.eot?#iefix");
  src: url("../fonts/e25e6f46-99c9-46b7-9780-31f5e37ed20f.eot?#iefix") format("eot"), url("../fonts/94d3fcc0-2a96-4771-91b7-a39f4ddd4917.woff2") format("woff2"), url("../fonts/b23dfc87-bbe4-47fa-a0b9-454796f8f75a.woff") format("woff"), url("../fonts/2533cb43-c267-46c5-a23b-3f3be5eb0b50.ttf") format("truetype"), url("../fonts/f2bf489f-d58b-4625-980f-8757b63ed83a.svg#f2bf489f-d58b-4625-980f-8757b63ed83a") format("svg"); }

@font-face {
  font-family: "Stolzl W00 Bold";
  src: url("../fonts/9b0dbcc3-3fdf-4321-ade3-7be3a588eb0f.eot?#iefix");
  src: url("../fonts/9b0dbcc3-3fdf-4321-ade3-7be3a588eb0f.eot?#iefix") format("eot"), url("../fonts/dfa5170a-7728-49da-950a-b4eab5029ac7.woff2") format("woff2"), url("../fonts/976de71c-b5d0-44d7-89f1-4749bd1ac432.woff") format("woff"), url("../fonts/be9e29a6-2d3e-4168-8e1f-d840d2f57c93.ttf") format("truetype"), url("../fonts/3e145975-2bf8-4a99-a341-fa89742af631.svg#3e145975-2bf8-4a99-a341-fa89742af631") format("svg"); }

@font-face {
  font-family: "FoundersGroteskCond-Bold";
  src: url("../fonts/FoundersGroteskCond-Bold.eot?#iefix");
  src: url("../fonts/FoundersGroteskCond-Bold.eot?#iefix") format("eot"), url("../fonts/FoundersGroteskCond-Bold.woff2") format("woff2"), url("../fonts/FoundersGroteskCond-Bold.woff") format("woff"), url("../fonts/FoundersGroteskCond-Bold.ttf") format("truetype"), url("../fonts/FoundersGroteskCond-Bold.svg") format("svg"); }

@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot") format("eot"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/slick.svg#slick") format("svg"); }

@font-face {
  font-family: "Avenir";
  src: url("../fonts/avenir/AvenirLTProRoman.woff") format("woff"); }

@font-face {
  font-family: "Avenir Bold";
  src: url("../fonts/avenir/AvenirLTProHeavy.woff") format("woff"); }

@font-face {
  font-family: "Avenir Light";
  src: url("../fonts/avenir/AvenirLTProLight.woff") format("woff"); }

@font-face {
  font-family: "Heuristica";
  src: url("../fonts/heuristica/heuristica-regular-webfont.eot");
  src: url("../fonts/heuristica/heuristica-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/heuristica/heuristica-regular-webfont.woff") format("woff"), url("../fonts/heuristica/heuristica-regular-webfont.ttf") format("truetype"), url("../fonts/heuristica/heuristica-regular-webfont.svg#Heuristica") format("svg"); }

@font-face {
  font-family: "Heuristica Bold";
  src: url("../fonts/heuristica/heuristica-bold-webfont.eot");
  src: url("../fonts/heuristica/heuristica-bold-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/heuristica/heuristica-bold-webfont.woff") format("woff"), url("../fonts/heuristica/heuristica-bold-webfont.ttf") format("truetype"), url("../fonts/heuristica/heuristica-bold-webfont.svg#Heuristica Bold") format("svg"); }

@font-face {
  font-family: "Heuristica Italic";
  src: url("../fonts/heuristica/heuristica-italic-webfont.eot");
  src: url("../fonts/heuristica/heuristica-italic-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/heuristica/heuristica-italic-webfont.woff") format("woff"), url("../fonts/heuristica/heuristica-italic-webfont.ttf") format("truetype"), url("../fonts/heuristica/heuristica-italic-webfont.svg#Heuristica Italic") format("svg"); }

@font-face {
  font-family: "WesfarmersIcons";
  src: url("../fonts/wesfarmers-icons/wesfarmers-icons.eot");
  src: url("../fonts/wesfarmers-icons/wesfarmers-icons.eot?#iefix") format("embedded-opentype"), url("../fonts/wesfarmers-icons/wesfarmers-icons.woff") format("woff"), url("../fonts/wesfarmers-icons/wesfarmers-icons.ttf") format("truetype"), url("../fonts/wesfarmers-icons/wesfarmers-icons.svg#WesfarmersIcons") format("svg"); }

@font-face {
  font-family: "Stolzl W00 Light";
  src: url("../fonts/stolzl/stolzl-light-webfont.eot");
  src: url("../fonts/stolzl/stolzl-light-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/stolzl/stolzl-light-webfont.woff") format("woff"), url("../fonts/stolzl/stolzl-light-webfont.ttf") format("truetype"), url("../fonts/stolzl/stolzl-light-webfont.svg#Stolzl W00 Light") format("svg"); }

/*
@font-face {
  font-family: "Stolzl W00 Light";
  src: url("../fonts/Stolzl-Light.otf") format("otf");
}
@font-face {
  font-family: "Heuristica";
  src: url("../fonts/Heuristica-Regular.otf") format("otf");
}
@font-face { 
  font-family: "Heuristica Bold";
  src: url("../fonts/Heuristica-Bold.otf") format("otf");
}
@font-face {
  font-family: "Heuristica Italic";
  src: url('../fonts/Heuristica-Italic.otf') format("otf");
}
*/
html {
  font-family: 'Stolzl W00 Book', Arial, sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased; }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #2c2f2f;
  padding: 0; }

h2, h3, h4, h5, h6 {
  font-family: "Heuristica Bold"; }

h1 {
  font-family: "Stolzl W00 Medium";
  font-size: 1.25em;
  margin-bottom: 15px; }
  @media screen and (min-width: 48em) {
    h1 {
      font-size: 2.375em;
      margin-bottom: 20px; } }

h2 {
  font-size: 1.375em;
  line-height: 1.18182em;
  margin-bottom: 15px; }
  @media screen and (min-width: 48em) {
    h2 {
      font-size: 1.875em;
      margin-bottom: 20px; } }

h3 {
  font-size: 1.25em;
  margin-bottom: 15px; }
  @media screen and (min-width: 48em) {
    h3 {
      font-size: 1.5em; } }

h4 {
  font-size: 1.125em;
  margin-bottom: 15px; }
  @media screen and (min-width: 48em) {
    h4 {
      font-size: 1.25em; } }

h5 {
  font-size: 1em;
  margin-bottom: 15px; }
  @media screen and (min-width: 48em) {
    h5 {
      font-size: 1.125em;
      color: #0B8651; } }

p {
  font-size: 1.0625em;
  line-height: 1.47059em;
  padding: 0;
  margin: 0 0 10px 0; }
  @media screen and (min-width: 48em) {
    p {
      font-size: 1.125em;
      line-height: 1.44444em;
      padding: 0;
      margin: 0 0 15px 0; } }
  p .btn {
    font-size: 1em; }
    @media screen and (min-width: 48em) {
      p .btn {
        font-size: 1em; } }

a {
  text-decoration: none;
  transition: all 150ms ease-in-out;
  color: #2c2f2f;
  cursor: pointer; }
  a:hover, a:focus {
    color: #000;
    text-decoration: none; }

@media screen and (min-width: 48em) {
  p > a:hover, p > a:focus {
    color: #000;
    text-decoration: underline; } }

ul, ol {
  margin: 0 0 1em 1em; }
  @media screen and (min-width: 48em) {
    ul, ol {
      margin: 0 0 1.1875em 1.1875em; } }

ul li, ol li {
  font-size: 1.0625em;
  line-height: 1.5625em; }
  @media screen and (min-width: 48em) {
    ul li, ol li {
      font-size: 1.125em;
      line-height: 1.44444em; } }

li ul, li ol {
  margin: 0.5em 0 0.5em 1.1875em; }

li ul li, li ol li {
  font-size: 1em;
  line-height: 1.1875em; }
  @media screen and (min-width: 48em) {
    li ul li, li ol li {
      font-size: 1em;
      line-height: 1.5em; } }

ul {
  list-style-type: disc; }

ol {
  list-style-type: decimal; }

ol ol {
  list-style: upper-alpha; }

ol ol ol {
  list-style: lower-roman; }

ol ol ol ol {
  list-style: lower-alpha; }

strong {
  font-weight: normal; }

abbr[title] {
  border: 0;
  cursor: pointer; }

blockquote, q {
  font-family: "Stolzl W00 Book";
  font-size: 1.0625em;
  line-height: 1.47059em;
  text-transform: uppercase;
  color: #2c2f2f;
  quotes: none;
  padding-left: 20px;
  max-width: 100%;
  margin: 20px 0;
  border-left: 9px solid #00e862; }
  blockquote:before, q:before {
    content: "";
    display: table;
    clear: both; }
  blockquote:after, q:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 48em) {
    blockquote, q {
      font-size: 1.25em;
      line-height: 1.5em;
      border-left: 15px solid #00e862;
      padding-left: 30px;
      margin: 30px 0;
      max-width: 90%; } }
  @media screen and (min-width: 64em) {
    blockquote, q {
      font-size: 1.625em;
      line-height: 1.73077em;
      border-left: 23px solid #00e862;
      padding-left: 40px;
      margin: 30px 0;
      max-width: 90%; } }

table {
  position: relative;
  width: 100%;
  table-layout: fixed;
  border-spacing: 0;
  border-collapse: collapse;
  margin: 0;
  overflow-x: auto; }
  @media screen and (min-width: 48em) {
    table {
      display: inline-table; } }
  table caption {
    position: absolute;
    left: -999999em; }
  table th, table td {
    vertical-align: top;
    padding: 15px 20px; }
  table th {
    background: #969797; }
  table tr.highlight {
    background: #e7f4f9;
    font-weight: 700; }
  table td {
    border-bottom: solid 1px #969797; }
  table tr:nth-child(even) {
    background-color: #eaeaea; }
  table tr:hover {
    background-color: #e7f4f9; }
  table .active {
    background: #00e862; }

.small {
  font-size: 0.875em; }
  @media screen and (min-width: 48em) {
    .small {
      font-size: 1em; } }

.large {
  font-size: 1.1875em;
  font-weight: 700; }
  @media screen and (min-width: 48em) {
    .large {
      font-size: 1.5em; } }

i {
  font-family: 'WesfarmersIcons';
  font-style: normal;
  font-weight: normal; }

article > :first-child {
  margin-top: 30px; }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  article {
    margin-left: 100px;
    margin-right: 100px; } }

@media all and (max-width: 48em) {
  html {
    overflow-x: hidden; } }

body {
  overflow-x: hidden;
  height: auto; }
  body.ftr-fix {
    height: 100%; }

.wrapper {
  max-width: 100%;
  min-height: 100%;
  position: relative;
  margin: auto; }
  @media screen and (min-width: 48em) {
    .wrapper {
      overflow: hidden; } }

#main:before {
  content: "";
  display: table;
  clear: both; }

#main:after {
  content: "";
  display: table;
  clear: both; }

#main.overlay {
  position: relative; }
  #main.overlay:before {
    position: absolute;
    z-index: 3;
    width: 100%;
    height: 100%;
    display: block;
    background: #2c2f2f;
    opacity: .35; }

.container {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 15px; }
  @media screen and (min-width: 48em) {
    .container {
      padding: 0 20px; } }
  .container > *:last-child {
    margin-bottom: 0; }

section {
  margin: 0; }
  section.grey {
    background: #ebf0f1; }
  section.panels {
    padding: 0; }
    @media screen and (min-width: 30em) {
      section.panels {
        padding: 30px; } }
    @media screen and (min-width: 48em) {
      section.panels {
        padding: 45px 20px; } }
    @media screen and (min-width: 64em) {
      section.panels {
        padding: 45px 20px; } }
    @media screen and (min-width: 80em) {
      section.panels {
        padding-top: 75px; } }
  section.indent-medium {
    margin: 0 auto; }
    @media screen and (min-width: 118.75em) {
      section.indent-medium {
        max-width: 1345px; } }
  section.indent-small {
    margin: 0 auto; }
    @media screen and (min-width: 64em) {
      section.indent-small {
        max-width: 800px; } }
    @media screen and (min-width: 80em) {
      section.indent-small {
        max-width: 1060px; } }
  section.spaced {
    margin-top: 40px;
    margin-bottom: 40px; }

a {
  color: #616363;
  text-decoration: underline; }
  a:hover {
    color: #616363;
    text-decoration: none; }

.btn.close {
  text-indent: -9999em;
  text-align: left;
  background: transparent url("../img/icons/icon-close.png") no-repeat 5px 8px; }
  .btn.close:hover {
    background: transparent url("../img/icons/icon-close-active.png") no-repeat 5px 8px; }

.btn.filter {
  color: #616363;
  background: #fff;
  border: solid 1px #646464;
  text-transform: uppercase;
  font-size: small;
  margin-left: 10px;
  line-height: 30px;
  margin-bottom: 10px; }
  .btn.filter:hover, .btn.filter:focus, .btn.filter:active {
    border: solid 1px #00e862;
    background: #00e862;
    color: #fff; }

.btn.invert {
  background: #fff;
  color: #ec671c; }
  .btn.invert:hover, .btn.invert:focus {
    background: #fff;
    color: #ec671c; }
  .btn.invert:visited {
    color: #ec671c; }

.btn-submit {
  font-family: "Stolzl W00 Medium";
  font-size: 0.75em;
  font-weight: normal;
  text-transform: uppercase;
  letter-spacing: 0.15em;
  color: #fff;
  background-color: #00e862;
  border-radius: 50%;
  height: 80px;
  width: 80px;
  margin-top: 25px; }
  .btn-submit:active, .btn-submit:visited {
    background-color: #00e862; }
  .btn-submit:hover {
    background-color: #616363; }

.btnFilter {
  padding-bottom: 50px;
  padding-left: 15px; }

.btnFilter span {
  font-size: small;
  text-transform: uppercase;
  padding-bottom: 10px; }

.page-intro {
  text-align: center;
  background: #ebf0f1;
  padding-top: 35px;
  padding-bottom: 35px;
  margin-bottom: 0; }
  .page-intro > *:last-child {
    margin-bottom: 0; }
  .page-intro .wysiwyg > :first-child {
    margin-top: 0; }
  .page-intro .wysiwyg > div *:last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 48em) {
    .page-intro {
      background: transparent;
      padding-top: 30px;
      padding-bottom: 30px;
      margin-bottom: 20px; } }
  @media screen and (min-width: 64em) {
    .page-intro {
      padding-top: 50px;
      padding-bottom: 20px; } }
  @media screen and (min-width: 80em) {
    .page-intro {
      padding-top: 60px;
      padding-bottom: 15px; } }
  @media screen and (min-width: 90em) {
    .page-intro {
      padding-top: 80px;
      padding-bottom: 35px;
      margin-bottom: 25px; } }
  @media screen and (min-width: 118.75em) {
    .page-intro {
      padding-top: 105px;
      padding-bottom: 42px; } }
  .page-intro h1 {
    text-transform: uppercase;
    letter-spacing: 0.0375em; }
    @media screen and (min-width: 48em) {
      .page-intro h1 {
        font-size: 1.625em; } }
    @media screen and (min-width: 64em) {
      .page-intro h1 {
        font-size: 1.75em; } }
    @media screen and (min-width: 80em) {
      .page-intro h1 {
        font-size: 2em; } }
    @media screen and (min-width: 118.75em) {
      .page-intro h1 {
        font-size: 2.625em; } }
  @media screen and (min-width: 48em) {
    .page-intro p {
      margin: 0 auto;
      margin-bottom: 10px;
      text-align: center;
      max-width: 500px; } }
  @media screen and (min-width: 64em) {
    .page-intro p {
      margin: 0 auto;
      text-align: center;
      max-width: 700px;
      margin-bottom: 15px; } }
  .page-intro a {
    text-decoration: underline; }
  .page-intro.shallow {
    margin-bottom: 0; }

.hidden {
  position: absolute;
  left: -9999em; }

.round-img {
  border-radius: 80%; }

.resp-img {
  width: 100%;
  height: auto;
  display: block; }

.align-center {
  margin: 0 auto; }

.content-page strong, .row-section strong {
  font-weight: 700;
  font-weight: bold; }

@media screen and (min-width: 80em) {
  .content-page .row, .row-section .row {
    max-width: 100%; } }

.content-page .row.gallery-info, .row-section .row.gallery-info {
  margin-bottom: 20px; }
  @media screen and (min-width: 64em) {
    .content-page .row.gallery-info, .row-section .row.gallery-info {
      max-width: 980px;
      margin-bottom: 10px auto 80px auto; } }
  @media screen and (min-width: 80em) {
    .content-page .row.gallery-info, .row-section .row.gallery-info {
      max-width: 1280px;
      margin: 20px auto 120px auto; } }
  .content-page .row.gallery-info abbr, .row-section .row.gallery-info abbr {
    padding: 0 15px 0 0; }

@media only screen and (min-device-width: 1024px) and (max-device-width: 1279px) {
  .large-collapse .column, .large-collapse .columns,
  .large-collapse .columns {
    padding-left: 50px;
    padding-right: 50px; } }

#main .investors {
  background-color: #2c2f2f; }
  #main .investors .page-intro {
    background-color: #2c2f2f;
    border-bottom: 6px solid #00e862; }
    #main .investors .page-intro h1 {
      color: #fff; }
  @media screen and (min-width: 48em) {
    #main .investors {
      background-color: transparent; }
      #main .investors .page-intro {
        margin-bottom: 40px; } }
  @media screen and (min-width: 90em) {
    #main .investors {
      border-bottom-width: 10px; } }
  @media screen and (min-width: 90em) {
    #main .investors {
      background-color: #2c2f2f;
      margin-bottom: 80px;
      border-bottom: 6px solid #00e862; }
      #main .investors .page-intro {
        margin-bottom: 0;
        border-bottom: none; } }

::-webkit-input-placeholder {
  color: #cacbcb;
  text-align: left; }

::-moz-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

:-moz-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

::-ms-input-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

:-ms-input-placeholder {
  color: #cacbcb;
  text-align: left; }

::placeholder {
  color: #cacbcb;
  text-align: left; }

.subscribe ::-webkit-input-placeholder {
  color: #cacbcb;
  text-align: left; }

.subscribe ::-moz-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

.subscribe :-moz-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

.subscribe ::-ms-input-placeholder {
  opacity: 1;
  color: #cacbcb;
  text-align: left; }

.subscribe :-ms-input-placeholder {
  color: #cacbcb;
  text-align: left; }

.subscribe ::placeholder {
  color: #cacbcb;
  text-align: left; }

/*
// sticky footer
@include breakpoint (medium) {
  html, body {
      height: 100%;
  }

  #wrapper {
     height: 100%;
  }

  #main {
      min-height:100%;
  }


}*/
ul.no-bullet, ol.no-bullet, nav .global,
nav .util, nav .global-sub .global-sub-nav, .content-nav ul, .related-content ul, footer nav ul, footer .ftr-util-wrapper .ftr-social, .home-news-list ul, .investor-centre .share-promo .share-price .stock-updated-list, .investor-centre .tile-links ul, .gallery-wrapper .mg-grid, .gallery-filter .options, .gallery-filter .options li ul {
  margin: 0;
  padding: 0;
  list-style-type: none; }

.btn {
  font-family: 'Stolzl W00 Book', Arial, sans-serif;
  padding: 0 15px;
  background-color: #ec671c;
  color: #fff;
  display: inline-block;
  text-decoration: none;
  font-size: 1.1875em;
  cursor: pointer;
  border: 0;
  line-height: 40px; }
  .btn:hover, .btn:focus {
    text-decoration: none;
    background-color: #222;
    color: #fff; }
  .btn:visited {
    color: #fff; }

.ui-datepicker {
  display: none;
  padding: 8px;
  z-index: 1005 !important; }

.ui-datepicker-header {
  background-color: #f4f4f4;
  height: 40px;
  font-size: 0.8125em;
  color: #fff; }
  .ui-datepicker-header a {
    width: 36px;
    height: 40px;
    cursor: pointer; }
    .ui-datepicker-header a:hover {
      background-color: #e7e7e7; }
    .ui-datepicker-header a.ui-state-disabled {
      background: none;
      cursor: default; }

.ui-datepicker-title {
  font-weight: bold;
  text-align: center;
  line-height: 40px; }

.ui-datepicker-prev {
  float: left;
  border-right: 1px solid #fff;
  background: url(../img/icons/icon-arw-lft-wht.png) no-repeat center; }

.ui-datepicker-next {
  float: right;
  border-left: 1px solid #fff;
  background: url(../img/icons/icon-arw-rght-wht.png) no-repeat center; }

.ui-datepicker-month, .ui-datepicker-year {
  width: 65px;
  height: 30px;
  -webkit-appearance: none;
  border-radius: 0;
  border: solid 1px #e5e7e8;
  padding: 2px 20px 2px 2px;
  margin: 5px 0 0 0;
  font-family: "soleil", sans-serif;
  font-weight: 400;
  font-size: 1em;
  -webkit-appearance: none;
  /*Removes default chrome and safari style*/
  -moz-appearance: none;
  /* Removes Default Firefox style*/
  background: #fff url(../img/icons/icon--ui-cal-down.png) no-repeat;
  /*Adds background-image*/
  background-position: right 10px;
  /*Position of the background-image*/
  text-indent: 0.01px;
  /* Removes default arrow from firefox*/
  text-overflow: "";
  /*Removes default arrow from firefox*/ }

.ui-datepicker-month::-ms-expand, .ui-datepicker-year::-ms-expand {
  display: none; }

.no-csscolumns .ui-datepicker-month, .no-csscolumns .ui-datepicker-year {
  background: #fff;
  padding: 5px; }

.ui-datepicker-month {
  margin-right: 15px; }

.ui-datepicker-calendar {
  border: 0;
  margin: 0;
  display: table;
  table-layout: auto; }
  .ui-datepicker-calendar thead {
    display: table-header-group;
    float: none; }
  .ui-datepicker-calendar tbody {
    display: table-row-group;
    white-space: normal; }
  .ui-datepicker-calendar thead tr,
  .ui-datepicker-calendar tbody tr {
    display: table-row; }
  .ui-datepicker-calendar th,
  .ui-datepicker-calendar td {
    background-color: #ff0000;
    border: 1px solid #d9d9d9;
    font-weight: bold;
    font-size: 0.8125em;
    padding: 0;
    width: 35px;
    height: 35px;
    text-align: center;
    vertical-align: middle;
    display: table-cell; }
    .ui-datepicker-calendar th.ui-datepicker-today,
    .ui-datepicker-calendar td.ui-datepicker-today {
      background: #f4f4f4; }
      .ui-datepicker-calendar th.ui-datepicker-today a,
      .ui-datepicker-calendar td.ui-datepicker-today a {
        color: #fff; }
  .ui-datepicker-calendar th {
    cursor: default; }
  .ui-datepicker-calendar td {
    background-color: #fefefe; }
    .ui-datepicker-calendar td a {
      color: #ddd;
      display: table-cell;
      width: 32px;
      height: 32px;
      vertical-align: middle; }

.ui-datepicker-unselectable {
  color: #999;
  cursor: default; }

.ui-datepicker-calendar .ui-datepicker-other-month a {
  color: #999; }

td.ui-datepicker-current-day a {
  border: 2px solid #1c6802; }

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-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 {
  -ms-transform: translate3d(0, 0, 0);
  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; }

.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-slide:focus {
    outline: none; }

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

/* Slider */
.slick-loading .slick-list {
  background: #fff url("../img/icons/ajax-loader.gif") center center no-repeat; }

/* Icons */
@font-face {
  font-family: "slick";
  src: url("../fonts/slick.eot");
  src: url("../fonts/slick.eot?#iefix") format("embedded-opentype"), url("../fonts/slick.woff") format("woff"), url("../fonts/slick.ttf") format("truetype"), url("../fonts/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%;
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.75; }
  .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 {
  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: 15px;
        line-height: 20px;
        text-align: center;
        color: #2c2f2f;
        opacity: 0.75;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: #ec671c;
      opacity: 0.75; }

header {
  background: #fff;
  padding: 0;
  position: relative;
  border-bottom: solid 1px #282828;
  padding: 10px 0; }
  header:before {
    content: "";
    display: table;
    clear: both; }
  header:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 48em) {
    header {
      padding: 9px 0 20px 0; } }
  @media screen and (min-width: 80em) {
    header {
      padding: 15px 0 0 0; } }
  @media screen and (min-width: 118.75em) {
    header {
      padding: 15px 0 0 0; } }
  header .container {
    padding: 0; }
    @media screen and (min-width: 80em) {
      header .container {
        max-width: 100%;
        padding: 0 40px; } }
    @media screen and (min-width: 118.75em) {
      header .container {
        margin: 0 auto;
        max-width: 2560px; } }
  header .logo {
    position: relative;
    margin: 0 auto;
    width: 104px;
    height: auto; }
    header .logo > a {
      display: block;
      width: 100%;
      height: 50px;
      background: url("../img/wf-logo.svg") center center no-repeat;
      background-size: contain; }
    @media screen and (min-width: 48em) {
      header .logo {
        margin-top: 10px;
        width: 122px; } }
    @media screen and (min-width: 80em) {
      header .logo {
        margin-top: 28px;
        margin-bottom: 15px;
        width: 140px;
        position: relative;
        z-index: 20; } }
    @media screen and (min-width: 90em) {
      header .logo {
        width: 156px;
        position: relative;
        z-index: 20; }
        header .logo > a {
          height: 64px; } }
  header .global-search {
    background: #282828;
    padding: 15px 30px;
    margin: 0 0 30px 0; }
    header .global-search:before {
      content: "";
      display: table;
      clear: both; }
    header .global-search:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 80em) {
      header .global-search {
        padding: 0;
        margin: -7px 0 0;
        background: transparent;
        float: right; } }
    header .global-search fieldset {
      position: relative; }
      header .global-search fieldset legend,
      header .global-search fieldset label {
        position: absolute;
        left: -99999em; }
      header .global-search fieldset .form-row {
        padding: 0;
        margin: 0;
        position: relative; }
        header .global-search fieldset .form-row input[type='text'] {
          border: 0;
          margin: 0;
          padding: 0;
          font-family: "Stolzl W00 Book";
          font-size: 1.0625em;
          color: #fff;
          text-transform: uppercase;
          background: transparent;
          width: 100%;
          padding-right: 40px; }
          header .global-search fieldset .form-row input[type='text']:hover, header .global-search fieldset .form-row input[type='text']:focus {
            color: #fff; }
          @media screen and (min-width: 80em) {
            header .global-search fieldset .form-row input[type='text'] {
              font-family: "Stolzl W00 Book";
              font-size: 0.8125em;
              color: #969797;
              height: auto;
              padding: 10px 20px 5px 2px;
              border-bottom: solid 1px #cacbcb;
              width: 12.5em; }
              header .global-search fieldset .form-row input[type='text']:hover, header .global-search fieldset .form-row input[type='text']:focus {
                outline: 0; } }
          @media screen and (min-width: 118.75em) {
            header .global-search fieldset .form-row input[type='text'] {
              font-family: "Stolzl W00 Book";
              font-size: 0.875em; } }
        header .global-search fieldset .form-row input[type='text']:focus {
          border-bottom: 1px solid rgba(255, 255, 255, 0.5);
          color: #eaeaea; }
        @media screen and (min-width: 80em) {
          header .global-search fieldset .form-row input[type='text']:focus {
            border-bottom-color: #000;
            color: #2c2f2f; } }
        header .global-search fieldset .form-row input[type='submit'] {
          position: absolute;
          margin: 0;
          padding: 0;
          top: 8px;
          right: 0;
          text-align: left;
          text-indent: -9999em;
          border: 0;
          width: 20px;
          height: 20px;
          background-color: transparent;
          cursor: pointer; }
        header .global-search fieldset .form-row i {
          position: absolute;
          top: 40%;
          right: 5px;
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
          font-size: 22px;
          color: #fff;
          background-color: transparent;
          opacity: .5;
          cursor: pointer; }
        @media screen and (min-width: 80em) {
          header .global-search fieldset .form-row i {
            color: #3c3e3e;
            font-size: 18px;
            height: 68%; } }
  header .burger-button {
    position: absolute;
    right: 34px;
    bottom: 14px; }
    @media screen and (min-width: 80em) {
      header .burger-button {
        display: none; } }
    header .burger-button .burger-icon {
      position: relative;
      margin-top: 7px;
      margin-bottom: 7px;
      -webkit-user-select: none;
      -ms-user-select: none;
      user-select: none; }
      header .burger-button .burger-icon, header .burger-button .burger-icon::before, header .burger-button .burger-icon::after {
        display: block;
        width: 25px;
        height: 1px;
        background-color: #222;
        transition-property: background-color, transform;
        transition-duration: 0.3s; }
      header .burger-button .burger-icon::before, header .burger-button .burger-icon::after {
        position: absolute;
        content: ""; }
      header .burger-button .burger-icon::before {
        top: -7px; }
      header .burger-button .burger-icon::after {
        top: 7px; }
    header .burger-button.is-active .burger-icon {
      background-color: transparent; }
    header .burger-button.is-active .burger-icon::before {
      -ms-transform: translateY(7px) rotate(45deg);
      transform: translateY(7px) rotate(45deg); }
    header .burger-button.is-active .burger-icon::after {
      -ms-transform: translateY(-7px) rotate(-45deg);
      transform: translateY(-7px) rotate(-45deg); }

header.home {
  min-height: 80px;
  border-bottom-color: #fff; }
  header.home .logo {
    margin-top: 4px; }
  header.home .burger-button {
    bottom: 20px; }
  @media screen and (min-width: 48em) {
    header.home {
      min-height: 90px; }
      header.home .logo {
        margin-top: 10px; } }
  @media screen and (min-width: 80em) {
    header.home {
      padding: 60px 0 0 0;
      min-height: none;
      max-height: 160px; }
      header.home .global-sub {
        border-top: 1px solid #2c2f2f; } }
  @media screen and (min-width: 90em) {
    header.home .logo {
      width: 175px; }
      header.home .logo > a {
        height: 70px; } }
  @media screen and (min-width: 118.75em) {
    header.home .logo {
      margin-top: 0;
      width: 205px; }
      header.home .logo > a {
        height: 80px; } }

/*
@include breakpoint(xlarge) {
    nav .investors .global-sub {
        display: inline-block!important;
        //width:100%!important;
    }
}
*/
.nav-wrapper {
  position: relative;
  z-index: 1;
  transition-duration: 450ms;
  -ms-transform: translate(100%);
      transform: translate(100%);
  position: absolute;
  top: calc(100% + 1px);
  left: auto;
  right: -320px;
  width: 320px;
  display: block;
  background: #fff;
  z-index: 10;
  padding-bottom: 100%; }
  @media screen and (min-width: 48em) {
    .nav-wrapper {
      right: -320px;
      width: 320px; } }
  @media screen and (min-width: 80em) {
    .nav-wrapper {
      transition: none;
      transition-duration: 0;
      position: relative;
      -ms-transform: translate(0);
          transform: translate(0);
      left: auto;
      right: auto;
      top: auto;
      width: auto;
      background: transparent;
      padding-bottom: 0; } }
  .nav-wrapper.mbl-active {
    right: 0px;
    -ms-transform: translate(0);
        transform: translate(0);
    display: block;
    z-index: 99999; }
    @media screen and (min-width: 48em) {
      .nav-wrapper.mbl-active {
        right: 0px; } }

nav:before {
  content: "";
  display: table;
  clear: both; }

nav:after {
  content: "";
  display: table;
  clear: both; }

nav .columns {
  padding-left: 1.25rem;
  padding-right: 1.25rem; }

nav .menu-title {
  display: block;
  padding: 0 0 10px;
  margin: 4px 30px 30px;
  font-family: "Stolzl W00 Medium";
  letter-spacing: 0.0375em;
  font-size: 0.8125em;
  color: #616363;
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  border-bottom: 1px solid #616363; }

nav .global,
nav .util {
  padding: 0 30px; }
  nav .global:before,
  nav .util:before {
    content: "";
    display: table;
    clear: both; }
  nav .global:after,
  nav .util:after {
    content: "";
    display: table;
    clear: both; }
  nav .global > li,
  nav .util > li {
    padding: 0 0 1.125em 0;
    margin: 0;
    font-family: Heuristica;
    color: #2c2f2f; }
    nav .global > li:before,
    nav .util > li:before {
      content: "";
      display: table;
      clear: both; }
    nav .global > li:after,
    nav .util > li:after {
      content: "";
      display: table;
      clear: both; }
    nav .global > li > span,
    nav .global > li > a,
    nav .util > li > span,
    nav .util > li > a {
      transition: color .15s;
      display: block;
      color: #2c2f2f;
      cursor: pointer; }
      nav .global > li > span:hover, nav .global > li > span:focus, nav .global > li > span.active,
      nav .global > li > a:hover,
      nav .global > li > a:focus,
      nav .global > li > a.active,
      nav .util > li > span:hover,
      nav .util > li > span:focus,
      nav .util > li > span.active,
      nav .util > li > a:hover,
      nav .util > li > a:focus,
      nav .util > li > a.active {
        text-decoration: underline;
        color: #616363; }
    nav .global > li .global-sub,
    nav .util > li .global-sub {
      transition-duration: 450ms;
      -ms-transform: translate(100%);
          transform: translate(100%);
      position: absolute;
      left: auto;
      width: 100%;
      display: block;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: #eaeaea;
      z-index: 6; }
      nav .global > li .global-sub .global-sub-intro,
      nav .util > li .global-sub .global-sub-intro {
        display: none; }
      nav .global > li .global-sub.is-active,
      nav .util > li .global-sub.is-active {
        -ms-transform: translate(0);
            transform: translate(0); }
        nav .global > li .global-sub.is-active .global-sub-nav,
        nav .util > li .global-sub.is-active .global-sub-nav {
          padding: 0 10px; }
      nav .global > li .global-sub .row,
      nav .util > li .global-sub .row {
        max-width: none; }
      nav .global > li .global-sub .global-sub-nav > li span,
      nav .global > li .global-sub .global-sub-nav > li a,
      nav .util > li .global-sub .global-sub-nav > li span,
      nav .util > li .global-sub .global-sub-nav > li a {
        color: #2c2f2f;
        font-family: "Heuristica"; }
      nav .global > li .global-sub .global-sub-nav > li:hover > span,
      nav .global > li .global-sub .global-sub-nav > li:hover > a, nav .global > li .global-sub .global-sub-nav > li:focus > span,
      nav .global > li .global-sub .global-sub-nav > li:focus > a, nav .global > li .global-sub .global-sub-nav > li.active > span,
      nav .global > li .global-sub .global-sub-nav > li.active > a,
      nav .util > li .global-sub .global-sub-nav > li:hover > span,
      nav .util > li .global-sub .global-sub-nav > li:hover > a,
      nav .util > li .global-sub .global-sub-nav > li:focus > span,
      nav .util > li .global-sub .global-sub-nav > li:focus > a,
      nav .util > li .global-sub .global-sub-nav > li.active > span,
      nav .util > li .global-sub .global-sub-nav > li.active > a {
        color: #616363;
        text-decoration: underline; }
      nav .global > li .global-sub .menu-title,
      nav .util > li .global-sub .menu-title {
        color: #0B8651;
        border-bottom-color: #0B8651;
        margin: 14px 10px 30px; }

nav .global > li.investors .global-sub .row .columns .row {
  max-width: 1480px; }

/*
@include breakpoint(smallmedium) {
    nav {}
}
*/
@media screen and (min-width: 48em) {
  nav .columns {
    padding-left: 2.15rem;
    padding-right: 2.15rem; }
  nav .global > li,
  nav .util > li {
    font-size: 1.0625em;
    line-height: 1.5625em; } }

@media screen and (min-width: 64em) {
  nav .columns {
    padding-left: 1.25rem;
    padding-right: 1.25rem; } }

@media screen and (min-width: 80em) {
  nav {
    margin-top: -35px; }
    nav .global-sub > .row {
      -ms-flex-flow: row;
          flex-flow: row; }
    nav .global-sub .global-sub-nav {
      padding: 0 !important; }
      nav .global-sub .global-sub-nav .global-sub-nav {
        display: none !important; }
    nav .columns {
      padding-left: 1.25rem;
      padding-right: 1.25rem; }
    nav .columns {
      -ms-flex: 1 auto;
          flex: 1 auto; }
      nav .columns .global-sub-nav,
      nav .columns .sub-title {
        max-width: 380px; }
    nav .menu-title,
    nav .global-sub .menu-title {
      display: none; }
    nav .global,
    nav .util {
      float: left;
      padding: 0; }
      nav .global > li,
      nav .util > li {
        display: inline-block;
        padding: 0; }
        nav .global > li > span,
        nav .global > li > a,
        nav .util > li > span,
        nav .util > li > a {
          margin-right: 18px;
          color: #2c2f2f;
          font-size: 0.78125em;
          min-height: 60px; }
          nav .global > li > span:after,
          nav .global > li > a:after,
          nav .util > li > span:after,
          nav .util > li > a:after {
            transition: none;
            background-color: #00e862; }
        nav .global > li:hover > span,
        nav .global > li:hover > a, nav .global > li:focus > span,
        nav .global > li:focus > a, nav .global > li.active > span,
        nav .global > li.active > a,
        nav .util > li:hover > span,
        nav .util > li:hover > a,
        nav .util > li:focus > span,
        nav .util > li:focus > a,
        nav .util > li.active > span,
        nav .util > li.active > a {
          text-decoration: none; }
          nav .global > li:hover > span:after,
          nav .global > li:hover > a:after, nav .global > li:focus > span:after,
          nav .global > li:focus > a:after, nav .global > li.active > span:after,
          nav .global > li.active > a:after,
          nav .util > li:hover > span:after,
          nav .util > li:hover > a:after,
          nav .util > li:focus > span:after,
          nav .util > li:focus > a:after,
          nav .util > li.active > span:after,
          nav .util > li.active > a:after {
            content: '';
            display: block;
            position: absolute;
            left: -5px;
            bottom: -8px;
            z-index: 3;
            width: 100%;
            height: 7px;
            background-color: #00e862; }
        nav .global > li .global-sub,
        nav .util > li .global-sub {
          transition: none;
          transition-duration: 0;
          -ms-transform: translate(0);
              transform: translate(0);
          display: none;
          padding: 50px 0 30px;
          position: absolute;
          z-index: 2;
          top: 100%;
          right: auto;
          left: auto;
          margin-left: -5px;
          width: 105%;
          width: calc(100% + 45px);
          background: #fff;
          border-top: 1px solid #2c2f2f; }
          nav .global > li:nth-child(2) .global-sub .nav-list {
            margin-left: 20px;
          }
          nav .global > li .global-sub .nav-list,
          nav .util > li .global-sub .nav-list {
            padding-left: 0;
            padding-right: 0;
            max-width: 260px; }
          nav .global > li .global-sub .global-sub-intro,
          nav .util > li .global-sub .global-sub-intro {
            display: block;
            -ms-flex: 1 0 200px;
                flex: 1 0 200px;
            max-width: 200px;
            margin-left: 90px;
            padding-left: 0;
            padding-right: 0;
            font-family: 'Heuristica';
            font-size: 1em;
            letter-spacing: 0;
            text-transform: none; }
            nav .global > li .global-sub .global-sub-intro .image-link,
            nav .util > li .global-sub .global-sub-intro .image-link {
              display: block;
              position: relative;
              max-width: 330px;
              border-bottom: 1px #cacbcb solid; }
              nav .global > li .global-sub .global-sub-intro .image-link > .image,
              nav .util > li .global-sub .global-sub-intro .image-link > .image {
                position: relative;
                overflow: hidden;
                display: block; }
                nav .global > li .global-sub .global-sub-intro .image-link > .image > img,
                nav .util > li .global-sub .global-sub-intro .image-link > .image > img {
                  -ms-transform: scale(1.02);
                      transform: scale(1.02);
                  transition: all .3s ease-in-out;
                  vertical-align: top; }
                nav .global > li .global-sub .global-sub-intro .image-link > .image:before,
                nav .util > li .global-sub .global-sub-intro .image-link > .image:before {
                  display: block;
                  position: absolute;
                  content: '';
                  z-index: 999;
                  background-color: #2c2f2f;
                  width: 100%;
                  height: 100%;
                  opacity: 0;
                  transition: opacity .3s; }
              nav .global > li .global-sub .global-sub-intro .image-link > span,
              nav .util > li .global-sub .global-sub-intro .image-link > span {
                display: block;
                position: relative;
                padding-left: 26px;
                font-family: "Stolzl W00 Medium";
                letter-spacing: 0.0375em;
                font-size: 0.8125em;
                color: #2c2f2f;
                text-transform: uppercase;
                height: auto;
                transition: color .3s ease-in-out;
                margin-top: 16px;
                margin-bottom: 16px; }
                nav .global > li .global-sub .global-sub-intro .image-link > span:after,
                nav .util > li .global-sub .global-sub-intro .image-link > span:after {
                  content: "";
                  font-family: 'WesfarmersIcons';
                  font-size: 18px;
                  color: #00e862;
                  display: block;
                  position: absolute;
                  left: 0px;
                  top: 50%;
                  -ms-transform: translateY(-50%);
                      transform: translateY(-50%);
                  background-color: transparent; }
              nav .global > li .global-sub .global-sub-intro .image-link:hover > .image > img, nav .global > li .global-sub .global-sub-intro .image-link:focus > .image > img,
              nav .util > li .global-sub .global-sub-intro .image-link:hover > .image > img,
              nav .util > li .global-sub .global-sub-intro .image-link:focus > .image > img {
                -ms-transform: scale(1.1);
                    transform: scale(1.1); }
              nav .global > li .global-sub .global-sub-intro .image-link:hover > .image:before, nav .global > li .global-sub .global-sub-intro .image-link:focus > .image:before,
              nav .util > li .global-sub .global-sub-intro .image-link:hover > .image:before,
              nav .util > li .global-sub .global-sub-intro .image-link:focus > .image:before {
                opacity: .33; }
              nav .global > li .global-sub .global-sub-intro .image-link:hover > p, nav .global > li .global-sub .global-sub-intro .image-link:focus > p,
              nav .util > li .global-sub .global-sub-intro .image-link:hover > p,
              nav .util > li .global-sub .global-sub-intro .image-link:focus > p {
                color: #00cf57;
                text-decoration: none; }
            nav .global > li .global-sub .global-sub-intro p,
            nav .util > li .global-sub .global-sub-intro p {
              display: block;
              max-width: 260px;
              margin-top: -2px;
              font-size: 0.875em; }
          nav .global > li .global-sub .sub-title,
          nav .util > li .global-sub .sub-title {
            cursor: default;
            font-size: 0.8125em;
            margin-top: 0;
            margin-bottom: 0;
            min-height: 38px;
            font-family: "Stolzl W00 Book";
            padding-left: 5px;
            padding-right: 0; }
          nav .global > li .global-sub .global-sub-nav > li,
          nav .util > li .global-sub .global-sub-nav > li {
            padding-top: 5px;
            padding-bottom: 5px;
            padding-left: 5px;
            transition: background-color .3s, border .3s;
            border-top: 1px #cacbcb solid; }
            nav .global > li .global-sub .global-sub-nav > li > span,
            nav .global > li .global-sub .global-sub-nav > li > a,
            nav .util > li .global-sub .global-sub-nav > li > span,
            nav .util > li .global-sub .global-sub-nav > li > a {
              font-family: 'Heuristica';
              font-size: 0.9375em;
              letter-spacing: 0; }
            nav .global > li .global-sub .global-sub-nav > li:last-child,
            nav .util > li .global-sub .global-sub-nav > li:last-child {
              border-bottom: 1px #cacbcb solid; }
            nav .global > li .global-sub .global-sub-nav > li:last-child:hover, nav .global > li .global-sub .global-sub-nav > li:last-child:focus, nav .global > li .global-sub .global-sub-nav > li:last-child.active,
            nav .util > li .global-sub .global-sub-nav > li:last-child:hover,
            nav .util > li .global-sub .global-sub-nav > li:last-child:focus,
            nav .util > li .global-sub .global-sub-nav > li:last-child.active {
              border-bottom-color: #00e862; }
            nav .global > li .global-sub .global-sub-nav > li:hover, nav .global > li .global-sub .global-sub-nav > li:focus, nav .global > li .global-sub .global-sub-nav > li.active,
            nav .util > li .global-sub .global-sub-nav > li:hover,
            nav .util > li .global-sub .global-sub-nav > li:focus,
            nav .util > li .global-sub .global-sub-nav > li.active {
              background-color: #00e862;
              border-top-color: #00e862; }
              nav .global > li .global-sub .global-sub-nav > li:hover > span,
              nav .global > li .global-sub .global-sub-nav > li:hover > a, nav .global > li .global-sub .global-sub-nav > li:focus > span,
              nav .global > li .global-sub .global-sub-nav > li:focus > a, nav .global > li .global-sub .global-sub-nav > li.active > span,
              nav .global > li .global-sub .global-sub-nav > li.active > a,
              nav .util > li .global-sub .global-sub-nav > li:hover > span,
              nav .util > li .global-sub .global-sub-nav > li:hover > a,
              nav .util > li .global-sub .global-sub-nav > li:focus > span,
              nav .util > li .global-sub .global-sub-nav > li:focus > a,
              nav .util > li .global-sub .global-sub-nav > li.active > span,
              nav .util > li .global-sub .global-sub-nav > li.active > a {
                text-decoration: none;
                color: #000; }
              nav .global > li .global-sub .global-sub-nav > li:hover + li, nav .global > li .global-sub .global-sub-nav > li:focus + li, nav .global > li .global-sub .global-sub-nav > li.active + li,
              nav .util > li .global-sub .global-sub-nav > li:hover + li,
              nav .util > li .global-sub .global-sub-nav > li:focus + li,
              nav .util > li .global-sub .global-sub-nav > li.active + li {
                border-top-color: #00e862; }
    nav .global {
      padding: 0;
      float: left; }
      nav .global > li {
        font-family: "Stolzl W00 Medium";
        text-transform: uppercase;
        letter-spacing: 0.0375em;
        font-size: 1.0625em; }
        nav .global > li > span,
        nav .global > li > a {
          display: block;
          position: relative; }
          nav .global > li > span:before,
          nav .global > li > a:before {
            content: "";
            display: table;
            clear: both; }
          nav .global > li > span:after,
          nav .global > li > a:after {
            content: "";
            display: table;
            clear: both; }
        nav .global > li:hover span, nav .global > li:hover a, nav .global > li:focus span, nav .global > li:focus a, nav .global > li.active span, nav .global > li.active a {
          color: #0B8651; }
          nav .global > li:hover span:after, nav .global > li:hover a:after, nav .global > li:focus span:after, nav .global > li:focus a:after, nav .global > li.active span:after, nav .global > li.active a:after {
            display: block; }
        nav .global > li:hover .global-sub, nav .global > li:focus .global-sub {
          display: block; }
        nav .global > li.investors .nav-list-investors > .row:first-child {
          width: 100%; }
        nav .global > li.investors .nav-list-investors > .row:not(:first-child) {
          -ms-flex-flow: row;
              flex-flow: row; }
        nav .global > li.investors .sub-title + .global-sub-nav {
          display: block !important; }
        nav .global > li:nth-child(2) > span,
        nav .global > li:nth-child(2) > a,
        nav .global > li.investors > span,
        nav .global > li.investors > a {
          margin-left: 20px; }
          nav .global > li:nth-child(2) > span:before,
          nav .global > li:nth-child(2) > a:before,
          nav .global > li.investors > span:before,
          nav .global > li.investors > a:before {
            display: block;
            position: absolute;
            left: -20px;
            top: 3px;
            z-index: 3;
            width: 1px;
            height: 20px;
            background: #616363; }
        nav .global > li.investors .image-link {
          margin-top: 95px; }
        nav .global > li.investors .global-sub-intro {
          margin-left: 0; }
        nav .global > li.investors .global-sub {
          left: 0;
          padding-right: 20px; }
          nav .global > li.investors .global-sub .row {
            max-width: 100%; }
          nav .global > li.investors .global-sub .inv-centre {
            position: relative;
            margin-bottom: 0;
            color: #2c2f2f;
            font-size: 0.90625em;
            padding-left: 30px;
            height: auto;
            min-height: none;
            margin-left: -5px;
            margin-bottom: 30px; }
            nav .global > li.investors .global-sub .inv-centre:before {
              content: "";
              font-family: 'WesfarmersIcons';
              font-size: 22px;
              color: #00e862;
              display: block;
              position: absolute;
              left: 0px;
              top: 50%;
              -ms-transform: translateY(-50%);
                  transform: translateY(-50%); }
            nav .global > li.investors .global-sub .inv-centre:hover, nav .global > li.investors .global-sub .inv-centre:focus, nav .global > li.investors .global-sub .inv-centre.active {
              color: #00cf57;
              text-decoration: none; }
          nav .global > li.investors .global-sub .global-sub-nav > li:first-child {
            margin-top: 0;
            border-top-color: transparent !important; }
    nav .util {
      padding: 0;
      float: right; }
      nav .util > span,
      nav .util > a {
        position: relative;
        display: block;
        margin-right: 20px; }
        nav .util > span:before,
        nav .util > a:before {
          content: "";
          display: table;
          clear: both; }
        nav .util > span:after,
        nav .util > a:after {
          content: "";
          display: table;
          clear: both; }
        nav .util > span:hover, nav .util > span:focus,
        nav .util > a:hover,
        nav .util > a:focus {
          color: #0B8651; }
      nav .util > li {
        position: relative;
        font-family: "Stolzl W00 Book";
        letter-spacing: 0.0375em;
        text-transform: uppercase; }
        nav .util > li > span,
        nav .util > li > a {
          display: block;
          position: relative;
          font-size: 0.75em; }
        nav .util > li .global-sub {
          display: none;
          right: auto;
          left: -20px;
          width: 600px;
          -ms-transform: translate(0);
              transform: translate(0);
          padding-left: 20px;
          /*
                    &:before {
                        display: block;
                        left: 100%;
                        z-index: 0;
                    }
                    */ }
          nav .util > li .global-sub:before, nav .util > li .global-sub:after {
            display: none !important; }
        nav .util > li:hover .global-sub:before, nav .util > li:hover .global-sub:after, nav .util > li:focus .global-sub:before, nav .util > li:focus .global-sub:after, nav .util > li.active .global-sub:before, nav .util > li.active .global-sub:after {
          display: none !important; }
        nav .util > li:hover > span,
        nav .util > li:hover > a, nav .util > li:focus > span,
        nav .util > li:focus > a, nav .util > li.active > span,
        nav .util > li.active > a {
          color: #0B8651; }
          nav .util > li:hover > span:after,
          nav .util > li:hover > a:after, nav .util > li:focus > span:after,
          nav .util > li:focus > a:after, nav .util > li.active > span:after,
          nav .util > li.active > a:after {
            display: block !important; }
        nav .util > li:hover .global-sub, nav .util > li:focus .global-sub, nav .util > li.active .global-sub {
          display: block; }
      nav .util > li.exc > span:after,
      nav .util > li.exc > a:after {
        display: none !important; }
  /* nasty specific hack */
  .home nav .util > li:hover > span:after,
  .home nav .util > li:hover > a:after, .home nav .util > li:focus > span:after,
  .home nav .util > li:focus > a:after, .home nav .util > li.active > span:after,
  .home nav .util > li.active > a:after,
  .home nav .global > li:hover > span:after,
  .home nav .global > li:hover > a:after,
  .home nav .global > li:focus > span:after,
  .home nav .global > li:focus > a:after,
  .home nav .global > li.active > span:after,
  .home nav .global > li.active > a:after {
    bottom: -5px; } }

@media screen and (min-width: 90em) {
  nav .global > li > span,
  nav .global > li > a,
  nav .util > li > span,
  nav .util > li > a {
    margin-right: 30px;
    font-size: 0.84375em;
    min-height: 62px; }
  nav .global > li .global-sub,
  nav .util > li .global-sub {
    padding-top: 60px; }
    nav .global > li .global-sub .global-sub-intro,
    nav .util > li .global-sub .global-sub-intro {
      max-width: 430px;
      -ms-flex: 1 0 430px;
          flex: 1 0 430px; }
      nav .global > li .global-sub .global-sub-intro p,
      nav .util > li .global-sub .global-sub-intro p {
        margin-top: -2px;
        font-size: 1em; }
      nav .global > li .global-sub .global-sub-intro .image-link,
      nav .util > li .global-sub .global-sub-intro .image-link {
        margin-top: 80px; }
    nav .global > li .global-sub .sub-title,
    nav .util > li .global-sub .sub-title {
      min-height: 20px; }
  nav .global > li:nth-child(2) > span,
  nav .global > li:nth-child(2) > a,
  nav .global > li.investors > span,
  nav .global > li.investors > a {
    margin-left: 14px; }
    nav .global > li:nth-child(2) > span:before,
    nav .global > li:nth-child(2) > a:before,
    nav .global > li.investors > span:before,
    nav .global > li.investors > a:before {
      top: 0;
      height: 24px; } }
  nav .global > li:nth-child(2) .global-sub .nav-list {
    margin-left: 14px;
  }

@media screen and (min-width: 118.75em) {
  nav .global > li > span,
  nav .global > li > a,
  nav .util > li > span,
  nav .util > li > a {
    margin-right: 36px;
    color: #2c2f2f;
    font-size: 0.9375em; }
  nav .global > li.investors .global-sub-intro {
    margin-left: 0; }
  nav .global > li:nth-child(2) > span,
  nav .global > li:nth-child(2) > a,
  nav .global > li.investors > span,
  nav .global > li.investors > a {
    margin-left: 24px; }
    nav .global > li:nth-child(2) > span:before,
    nav .global > li:nth-child(2) > a:before,
    nav .global > li.investors > span:before,
    nav .global > li.investors > a:before {
      left: -28px;
      height: 26px; }
  nav .global > li:nth-child(2) .global-sub .nav-list {
    margin-left: 24px;
  }
  nav .global > li.investors .global-sub-intro {
    margin-top: -2px;
    min-width: 492px;
    -ms-flex: 1 0 492px;
        flex: 1 0 492px; }
  nav .util > li span,
  nav .util > li a {
    font-size: 0.78125em; } }

nav .global-sub .columns {
  background-color: transparent;
  transition: background-color .4s ease-in-out; }

nav .global-sub .global-sub-intro {
  display: none; }
  nav .global-sub .global-sub-intro p {
    color: #616363; }
    nav .global-sub .global-sub-intro p strong {
      font-weight: bold;
      color: #2c2f2f; }

nav .global-sub .sub-title {
  cursor: pointer;
  font-size: 0.84375em;
  line-height: 1.1;
  font-family: "Stolzl W00 Medium";
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  color: #2c2f2f;
  padding-bottom: 10px;
  padding-right: 40px;
  margin: 10px 10px 0;
  transition: border .4s;
  white-space: nowrap; }
  nav .global-sub .sub-title + .global-sub-nav {
    display: block;
    max-height: 0;
    transition: max-height .4s ease-in-out;
    overflow: hidden; }
    nav .global-sub .sub-title + .global-sub-nav > li:first-child {
      margin-top: 20px; }

nav .global-sub .is-active {
  background-color: #fff; }
  nav .global-sub .is-active .sub-title {
    border-bottom: 1px solid #2c2f2f; }
    nav .global-sub .is-active .sub-title + .global-sub-nav {
      display: block;
      max-height: 1000px; }

nav .global-sub .global-sub-nav {
  padding: 0 10px; }
  nav .global-sub .global-sub-nav:before {
    content: "";
    display: table;
    clear: both; }
  nav .global-sub .global-sub-nav:after {
    content: "";
    display: table;
    clear: both; }
  nav .global-sub .global-sub-nav li {
    font-family: 'Heuristica';
    padding-bottom: 20px;
    text-transform: none; }
    nav .global-sub .global-sub-nav li > a,
    nav .global-sub .global-sub-nav li > span {
      color: #2c2f2f; }
      nav .global-sub .global-sub-nav li > a:hover, nav .global-sub .global-sub-nav li > a:focus,
      nav .global-sub .global-sub-nav li > span:hover,
      nav .global-sub .global-sub-nav li > span:focus {
        color: #616363;
        text-decoration: underline; }

@media screen and (min-width: 48em) {
  nav .global-sub .global-sub-nav li {
    font-size: 1em;
    line-height: 1.1875em; } }

@media screen and (min-width: 80em) {
  nav .global-sub {
    padding-top: 65px;
    min-height: 490px;
    position: relative; }
    nav .global-sub:before {
      content: "";
      display: table;
      clear: both; }
    nav .global-sub:after {
      content: "";
      display: table;
      clear: both; }
    nav .global-sub:before {
      position: absolute;
      width: 9999px;
      top: 0;
      bottom: 0;
      left: -9999px;
      background: #fff;
      display: block; }
    nav .global-sub .global-sub-intro {
      display: block; }
    nav .global-sub .global-sub-nav {
      padding: 0 0 50px;
      max-height: none; }
      nav .global-sub .global-sub-nav > li {
        padding-bottom: 14px;
        font-size: 1em; }
    nav .global-sub .sub-title {
      max-height: none;
      margin-left: 0;
      margin-right: 0;
      padding-bottom: 8px;
      font-size: 0.84375em;
      border-bottom: 1px solid #616363; }
      nav .global-sub .sub-title + .global-sub-nav {
        max-height: none; } }

@media screen and (max-width: 79.9375em) {
  nav .global-sub .row .columns {
    padding-left: 20px;
    padding-right: 20px; }
  nav .investors .row .columns {
    padding: 0; }
  nav .investors .row .row {
    margin: 0; }
    nav .investors .row .row .columns {
      padding-left: 20px;
      padding-right: 20px; }
  nav .global-sub .sub-title {
    position: relative; }
    nav .global-sub .sub-title:after {
      content: '\e804';
      font-family: 'WesfarmersIcons';
      font-size: 0.875em;
      color: #0B8651;
      display: block;
      text-align: center;
      position: absolute;
      top: 50%;
      right: 0;
      width: 30px;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
      transition: all 150ms ease-in-out;
      -ms-transform-origin: 50% 50% 0;
          transform-origin: 50% 50% 0;
      margin-top: -5px; }
  nav .global-sub .is-active .sub-title {
    color: #2c2f2f; }
    nav .global-sub .is-active .sub-title:after {
      color: #2c2f2f;
      -ms-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg); }
  nav .global-sub .global-sub-nav .global-sub-nav {
    max-height: 0;
    transition: max-height .4s ease-in-out;
    overflow: hidden; }
    nav .global-sub .global-sub-nav .global-sub-nav > li:first-child {
      margin-top: 20px; }
  nav .global-sub .sub-nav > a {
    position: relative;
    display: block; }
    nav .global-sub .sub-nav > a:after {
      content: '\e804';
      font-family: 'WesfarmersIcons';
      font-size: 0.875em;
      color: #2c2f2f;
      display: block;
      text-align: center;
      position: absolute;
      top: 50%;
      right: 0;
      width: 30px;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
      transition: all 150ms ease-in-out;
      -ms-transform-origin: 50% 50% 0;
          transform-origin: 50% 50% 0; }
  nav .global-sub .sub-nav:hover > a, nav .global-sub .sub-nav:focus > a {
    text-decoration: none; }
  nav .global-sub .sub-nav.is-active > a:after {
    color: #2c2f2f;
    -ms-transform: translateY(-50%) rotate(180deg);
        transform: translateY(-50%) rotate(180deg); }
  nav .global-sub .sub-nav.is-active .global-sub-nav {
    max-height: 500px; } }

.inv-centre {
  display: block;
  margin: 0 10px 20px;
  transition: all 200ms ease-in-out; }
  .inv-centre:hover, .inv-centre:focus, .inv-centre.active {
    color: #616363;
    text-decoration: underline; }
  @media screen and (min-width: 80em) {
    .inv-centre {
      transition-duration: 0;
      transition: none;
      margin: 0 0 20px; } }

.mbl-back {
  font-family: "Stolzl W00 Medium";
  letter-spacing: 0.0375em;
  font-size: 0.8125em;
  text-transform: uppercase;
  color: #626464;
  display: block;
  padding: 30px 10px;
  position: relative;
  cursor: pointer;
  color: #000; }
  .mbl-back:before {
    content: "";
    display: table;
    clear: both; }
  .mbl-back:after {
    content: "";
    display: table;
    clear: both; }
  .mbl-back:before {
    display: block;
    content: "";
    font-family: 'WesfarmersIcons';
    font-size: 16px;
    color: #2c2f2f;
    position: absolute;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    left: -5px;
    width: 9px;
    height: 14px;
    line-height: 1; }
  @media screen and (min-width: 80em) {
    .mbl-back {
      display: none; } }

@media screen and (min-width: 0\0) and (min-width: 118.75em) {
  nav .global .investors .global-sub-intro {
    margin-left: 0;
    margin-right: -5px; } }

@media screen and (max-width: 79.9375em) {
  .nav-wrapper {
    min-height: 1000px; }
  nav .menu-title {
    border-bottom: none; }
  nav .global > li,
  nav .util > li {
    padding: 0;
    color: #2c2f2f;
    border-top: 1px solid #cacbcb;
    margin: 0 -5px; }
    nav .global > li > span,
    nav .global > li > a,
    nav .util > li > span,
    nav .util > li > a {
      color: #2c2f2f;
      padding: 8px 5px;
      font-family: "Stolzl W00 Medium";
      font-size: 0.8125em;
      letter-spacing: 0.01875em;
      text-transform: uppercase; }
      nav .global > li > span:hover, nav .global > li > span:focus, nav .global > li > span.active,
      nav .global > li > a:hover,
      nav .global > li > a:focus,
      nav .global > li > a.active,
      nav .util > li > span:hover,
      nav .util > li > span:focus,
      nav .util > li > span.active,
      nav .util > li > a:hover,
      nav .util > li > a:focus,
      nav .util > li > a.active {
        background-color: #00e862;
        text-decoration: none;
        color: #000; }
    nav .global > li .global-sub .sub-title,
    nav .util > li .global-sub .sub-title {
      margin: 0 10px;
      padding: 15px 26px 15px 5px;
      border-top: 1px solid #616363; }
      nav .global > li .global-sub .sub-title:after,
      nav .util > li .global-sub .sub-title:after {
        min-height: 100%;
        -ms-transform: translateY(0);
            transform: translateY(0);
        -ms-transform-origin: 15px 7.5px;
            transform-origin: 15px 7.5px;
        color: #616363; }
    nav .global > li .global-sub .is-active .sub-title,
    nav .util > li .global-sub .is-active .sub-title {
      border-top-color: #fff; }
      nav .global > li .global-sub .is-active .sub-title:after,
      nav .util > li .global-sub .is-active .sub-title:after {
        min-height: 100%;
        -ms-transform: translateY(0) rotate(180deg);
            transform: translateY(0) rotate(180deg);
        color: #616363; }
    nav .global > li .global-sub .is-active + .columns .sub-title,
    nav .util > li .global-sub .is-active + .columns .sub-title {
      border-top-color: #fff; }
    nav .global > li .global-sub .menu-title,
    nav .util > li .global-sub .menu-title {
      color: #2c2f2f; }
    nav .global > li .global-sub .global-sub-nav .sub-nav.is-active:hover > a, nav .global > li .global-sub .global-sub-nav .sub-nav.is-active:focus > a, nav .global > li .global-sub .global-sub-nav .sub-nav.is-active.active > a,
    nav .util > li .global-sub .global-sub-nav .sub-nav.is-active:hover > a,
    nav .util > li .global-sub .global-sub-nav .sub-nav.is-active:focus > a,
    nav .util > li .global-sub .global-sub-nav .sub-nav.is-active.active > a {
      background-color: transparent; }
    nav .global > li .global-sub .global-sub-nav,
    nav .global > li .global-sub.is-active .global-sub-nav,
    nav .util > li .global-sub .global-sub-nav,
    nav .util > li .global-sub.is-active .global-sub-nav {
      padding: 0;
      margin: 0 5px; }
      nav .global > li .global-sub .global-sub-nav > li,
      nav .global > li .global-sub.is-active .global-sub-nav > li,
      nav .util > li .global-sub .global-sub-nav > li,
      nav .util > li .global-sub.is-active .global-sub-nav > li {
        padding: 0;
        border-bottom: 1px solid #cacbcb; }
        nav .global > li .global-sub .global-sub-nav > li > a,
        nav .global > li .global-sub .global-sub-nav > li > span,
        nav .global > li .global-sub.is-active .global-sub-nav > li > a,
        nav .global > li .global-sub.is-active .global-sub-nav > li > span,
        nav .util > li .global-sub .global-sub-nav > li > a,
        nav .util > li .global-sub .global-sub-nav > li > span,
        nav .util > li .global-sub.is-active .global-sub-nav > li > a,
        nav .util > li .global-sub.is-active .global-sub-nav > li > span {
          display: block;
          padding: 10px 5px 10px 5px; }
          nav .global > li .global-sub .global-sub-nav > li > a:after,
          nav .global > li .global-sub .global-sub-nav > li > span:after,
          nav .global > li .global-sub.is-active .global-sub-nav > li > a:after,
          nav .global > li .global-sub.is-active .global-sub-nav > li > span:after,
          nav .util > li .global-sub .global-sub-nav > li > a:after,
          nav .util > li .global-sub .global-sub-nav > li > span:after,
          nav .util > li .global-sub.is-active .global-sub-nav > li > a:after,
          nav .util > li .global-sub.is-active .global-sub-nav > li > span:after {
            font-size: 14px; }
        nav .global > li .global-sub .global-sub-nav > li:first-child,
        nav .global > li .global-sub.is-active .global-sub-nav > li:first-child,
        nav .util > li .global-sub .global-sub-nav > li:first-child,
        nav .util > li .global-sub.is-active .global-sub-nav > li:first-child {
          margin-top: 0;
          border-top: 1px solid #616363; }
        nav .global > li .global-sub .global-sub-nav > li:last-child,
        nav .global > li .global-sub.is-active .global-sub-nav > li:last-child,
        nav .util > li .global-sub .global-sub-nav > li:last-child,
        nav .util > li .global-sub.is-active .global-sub-nav > li:last-child {
          margin-bottom: 20px; }
        nav .global > li .global-sub .global-sub-nav > li:hover, nav .global > li .global-sub .global-sub-nav > li:focus, nav .global > li .global-sub .global-sub-nav > li.active,
        nav .global > li .global-sub.is-active .global-sub-nav > li:hover,
        nav .global > li .global-sub.is-active .global-sub-nav > li:focus,
        nav .global > li .global-sub.is-active .global-sub-nav > li.active,
        nav .util > li .global-sub .global-sub-nav > li:hover,
        nav .util > li .global-sub .global-sub-nav > li:focus,
        nav .util > li .global-sub .global-sub-nav > li.active,
        nav .util > li .global-sub.is-active .global-sub-nav > li:hover,
        nav .util > li .global-sub.is-active .global-sub-nav > li:focus,
        nav .util > li .global-sub.is-active .global-sub-nav > li.active {
          text-decoration: none;
          color: #000; }
          nav .global > li .global-sub .global-sub-nav > li:hover > a,
          nav .global > li .global-sub .global-sub-nav > li:hover > span, nav .global > li .global-sub .global-sub-nav > li:focus > a,
          nav .global > li .global-sub .global-sub-nav > li:focus > span, nav .global > li .global-sub .global-sub-nav > li.active > a,
          nav .global > li .global-sub .global-sub-nav > li.active > span,
          nav .global > li .global-sub.is-active .global-sub-nav > li:hover > a,
          nav .global > li .global-sub.is-active .global-sub-nav > li:hover > span,
          nav .global > li .global-sub.is-active .global-sub-nav > li:focus > a,
          nav .global > li .global-sub.is-active .global-sub-nav > li:focus > span,
          nav .global > li .global-sub.is-active .global-sub-nav > li.active > a,
          nav .global > li .global-sub.is-active .global-sub-nav > li.active > span,
          nav .util > li .global-sub .global-sub-nav > li:hover > a,
          nav .util > li .global-sub .global-sub-nav > li:hover > span,
          nav .util > li .global-sub .global-sub-nav > li:focus > a,
          nav .util > li .global-sub .global-sub-nav > li:focus > span,
          nav .util > li .global-sub .global-sub-nav > li.active > a,
          nav .util > li .global-sub .global-sub-nav > li.active > span,
          nav .util > li .global-sub.is-active .global-sub-nav > li:hover > a,
          nav .util > li .global-sub.is-active .global-sub-nav > li:hover > span,
          nav .util > li .global-sub.is-active .global-sub-nav > li:focus > a,
          nav .util > li .global-sub.is-active .global-sub-nav > li:focus > span,
          nav .util > li .global-sub.is-active .global-sub-nav > li.active > a,
          nav .util > li .global-sub.is-active .global-sub-nav > li.active > span {
            background-color: #00e862;
            text-decoration: none;
            color: #000; }
            nav .global > li .global-sub .global-sub-nav > li:hover > a:hover, nav .global > li .global-sub .global-sub-nav > li:hover > a:focus,
            nav .global > li .global-sub .global-sub-nav > li:hover > span:hover,
            nav .global > li .global-sub .global-sub-nav > li:hover > span:focus, nav .global > li .global-sub .global-sub-nav > li:focus > a:hover, nav .global > li .global-sub .global-sub-nav > li:focus > a:focus,
            nav .global > li .global-sub .global-sub-nav > li:focus > span:hover,
            nav .global > li .global-sub .global-sub-nav > li:focus > span:focus, nav .global > li .global-sub .global-sub-nav > li.active > a:hover, nav .global > li .global-sub .global-sub-nav > li.active > a:focus,
            nav .global > li .global-sub .global-sub-nav > li.active > span:hover,
            nav .global > li .global-sub .global-sub-nav > li.active > span:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li:hover > a:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li:hover > a:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li:hover > span:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li:hover > span:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li:focus > a:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li:focus > a:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li:focus > span:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li:focus > span:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li.active > a:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li.active > a:focus,
            nav .global > li .global-sub.is-active .global-sub-nav > li.active > span:hover,
            nav .global > li .global-sub.is-active .global-sub-nav > li.active > span:focus,
            nav .util > li .global-sub .global-sub-nav > li:hover > a:hover,
            nav .util > li .global-sub .global-sub-nav > li:hover > a:focus,
            nav .util > li .global-sub .global-sub-nav > li:hover > span:hover,
            nav .util > li .global-sub .global-sub-nav > li:hover > span:focus,
            nav .util > li .global-sub .global-sub-nav > li:focus > a:hover,
            nav .util > li .global-sub .global-sub-nav > li:focus > a:focus,
            nav .util > li .global-sub .global-sub-nav > li:focus > span:hover,
            nav .util > li .global-sub .global-sub-nav > li:focus > span:focus,
            nav .util > li .global-sub .global-sub-nav > li.active > a:hover,
            nav .util > li .global-sub .global-sub-nav > li.active > a:focus,
            nav .util > li .global-sub .global-sub-nav > li.active > span:hover,
            nav .util > li .global-sub .global-sub-nav > li.active > span:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li:hover > a:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li:hover > a:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li:hover > span:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li:hover > span:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li:focus > a:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li:focus > a:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li:focus > span:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li:focus > span:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li.active > a:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li.active > a:focus,
            nav .util > li .global-sub.is-active .global-sub-nav > li.active > span:hover,
            nav .util > li .global-sub.is-active .global-sub-nav > li.active > span:focus {
              text-decoration: none; }
        nav .global > li .global-sub .global-sub-nav > li .global-sub-nav > li,
        nav .global > li .global-sub.is-active .global-sub-nav > li .global-sub-nav > li,
        nav .util > li .global-sub .global-sub-nav > li .global-sub-nav > li,
        nav .util > li .global-sub.is-active .global-sub-nav > li .global-sub-nav > li {
          font-size: 0.9375em; }
          nav .global > li .global-sub .global-sub-nav > li .global-sub-nav > li:last-child,
          nav .global > li .global-sub.is-active .global-sub-nav > li .global-sub-nav > li:last-child,
          nav .util > li .global-sub .global-sub-nav > li .global-sub-nav > li:last-child,
          nav .util > li .global-sub.is-active .global-sub-nav > li .global-sub-nav > li:last-child {
            border-bottom: none; }
      nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav):hover > a,
      nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav):hover > span, nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav):focus > a,
      nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav):focus > span, nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav).active > a,
      nav .global > li .global-sub .global-sub-nav > li:not(.sub-nav).active > span,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):hover > a,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):hover > span,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):focus > a,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):focus > span,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav).active > a,
      nav .global > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav).active > span,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav):hover > a,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav):hover > span,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav):focus > a,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav):focus > span,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav).active > a,
      nav .util > li .global-sub .global-sub-nav > li:not(.sub-nav).active > span,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):hover > a,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):hover > span,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):focus > a,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav):focus > span,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav).active > a,
      nav .util > li .global-sub.is-active .global-sub-nav > li:not(.sub-nav).active > span {
        background-color: #00e862; }
  nav .global > li:first-child {
    border-top: 1px solid #616363; }
  nav .global > li.investors .global-sub .global-sub-nav {
    margin: 0 10px; }
    nav .global > li.investors .global-sub .global-sub-nav > li:first-child {
      border-top: none; }
  nav .global > li.investors .global-sub .inv-centre {
    border-top: 1px solid #616363;
    position: relative;
    margin-bottom: 0;
    color: #2c2f2f;
    font-family: "Stolzl W00 Medium";
    letter-spacing: 0.01875em;
    text-transform: uppercase;
    font-size: 0.875em;
    padding: 15px 0 15px 30px;
    height: auto;
    min-height: none;
    margin: 0 10px; }
    nav .global > li.investors .global-sub .inv-centre:before {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 22px;
      color: #00e862;
      display: block;
      position: absolute;
      left: 0px;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
    nav .global > li.investors .global-sub .inv-centre:hover,
    nav .global > li.investors .global-sub .inv-centre:focus nav .global > li.investors .global-sub .inv-centre.active {
      text-decoration: none;
      color: #00b54c; }
  nav .util > li:last-child {
    border-top: 1px solid #cacbcb; } }

@media screen and (min-width: 80em) {
  header {
    position: fixed;
    z-index: 99999;
    width: 100%; }
  header,
  header .container,
  .logo {
    backface-visibility: hidden;
    transition: all .5s ease-in-out; }
  header .container .global > li:hover .global-sub,
  header .container .global > li:hover > span:after,
  header .container .util > li:hover .global-sub,
  header .container .util > li:hover > span:after {
    transition: transform .5s ease-in-out; }
  #main {
    margin-top: 126px;
    backface-visibility: hidden;
    transition: margin-top .5s ease-in-out; }
  .sticky-header #main {
    margin-top: 60px !important; }
  .sticky-header header {
    -ms-transform: translateY(-60px);
        transform: translateY(-60px); }
    .sticky-header header .container {
      -ms-transform: translateY(11px);
          transform: translateY(11px); }
      .sticky-header header .container .logo {
        -ms-transform: translateY(22px) scale(0.6);
            transform: translateY(22px) scale(0.6); }
      .sticky-header header .container .global-sub {
        -ms-transform: translateY(-11px) !important;
            transform: translateY(-11px) !important; }
      .sticky-header header .container .global > li > a:after,
      .sticky-header header .container .global > li > span:after,
      .sticky-header header .container .util > li > a:after,
      .sticky-header header .container .util > li > span:after {
        -ms-transform: translateY(-11px) !important;
            transform: translateY(-11px) !important; }
  #home #main {
    margin-top: 160px; }
  #home.sticky-header #main {
    margin-top: 60px !important; }
  #home.sticky-header header {
    -ms-transform: translateY(-94px);
        transform: translateY(-94px);
    border-bottom: 1px solid #2c2f2f; }
    #home.sticky-header header .container {
      -ms-transform: translateY(14px);
          transform: translateY(14px); }
      #home.sticky-header header .container .logo {
        -ms-transform: translateY(15px) scale(0.75);
            transform: translateY(15px) scale(0.75); }
      #home.sticky-header header .container .global-sub {
        -ms-transform: translateY(-15px) !important;
            transform: translateY(-15px) !important; }
      #home.sticky-header header .container .global > li > a:after,
      #home.sticky-header header .container .global > li > span:after,
      #home.sticky-header header .container .util > li > a:after,
      #home.sticky-header header .container .util > li > span:after {
        -ms-transform: translateY(-12px) !important;
            transform: translateY(-12px) !important; } }

@media screen and (min-width: 90em) {
  #main {
    margin-top: 150px; }
  .sticky-header header {
    -ms-transform: translateY(-80px);
        transform: translateY(-80px); }
    .sticky-header header .container {
      -ms-transform: translateY(15px);
          transform: translateY(15px); }
      .sticky-header header .container .global-sub {
        -ms-transform: translateY(-15px) !important;
            transform: translateY(-15px) !important; }
      .sticky-header header .container .global > li > a:after,
      .sticky-header header .container .global > li > span:after,
      .sticky-header header .container .util > li > a:after,
      .sticky-header header .container .util > li > span:after {
        -ms-transform: translateY(-15px) !important;
            transform: translateY(-15px) !important; }
  #home #main {
    margin-top: 182px; }
  #home.sticky-header header {
    -ms-transform: translateY(-97px);
        transform: translateY(-97px); }
    #home.sticky-header header .container {
      -ms-transform: translateY(0);
          transform: translateY(0); }
      #home.sticky-header header .container .logo {
        -ms-transform: translateY(25px) scale(0.55);
            transform: translateY(25px) scale(0.55); }
      #home.sticky-header header .container .global-sub {
        -ms-transform: translateY(-23px) !important;
            transform: translateY(-23px) !important; }
      #home.sticky-header header .container .global > li > a:after,
      #home.sticky-header header .container .global > li > span:after,
      #home.sticky-header header .container .util > li > a:after,
      #home.sticky-header header .container .util > li > span:after {
        -ms-transform: translateY(-20px) !important;
            transform: translateY(-20px) !important; } }

.resize header,
.resize header .container,
.resize header .container .global-sub,
.resize .logo,
.resize #main,
.resize .nav-wrapper {
  transition: none; }

.content-nav {
  position: relative; }
  .content-nav .mbl-back {
    margin-left: 4px;
    display: block;
    position: absolute;
    padding-top: 20px;
    padding-bottom: 20px;
    color: #616363;
    transition: color .2s;
    z-index: 999;
    outline: none; }
    .content-nav .mbl-back:hover, .content-nav .mbl-back:focus {
      color: #2c2f2f; }
    @media screen and (min-width: 30em) {
      .content-nav .mbl-back {
        margin-left: 20px; } }
    @media screen and (min-width: 48em) {
      .content-nav .mbl-back {
        margin-left: 4px; } }
    @media screen and (min-width: 64em) {
      .content-nav .mbl-back {
        margin-left: 104px; } }
    @media screen and (min-width: 80em) {
      .content-nav .mbl-back {
        display: none; } }
  .content-nav .mbl-content-nav {
    cursor: pointer;
    display: block;
    text-transform: uppercase;
    text-align: right;
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    letter-spacing: 0.0375em;
    color: #616363;
    margin: 20px 0 0;
    padding: 0 30px 20px 20px;
    position: relative; }
    .content-nav .mbl-content-nav:before {
      content: "";
      display: table;
      clear: both; }
    .content-nav .mbl-content-nav:after {
      content: "";
      display: table;
      clear: both; }
    .content-nav .mbl-content-nav:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 14px;
      color: #616363;
      display: block;
      text-align: center;
      position: absolute;
      top: 0;
      right: 0;
      height: 20px;
      width: 30px;
      transition: all 150ms ease-in-out;
      -ms-transform-origin: 50% 37% 0;
      transform-origin: 50% 37% 0; }
    @media screen and (min-width: 64em) {
      .content-nav .mbl-content-nav {
        margin-right: 100px; } }
    @media screen and (min-width: 80em) {
      .content-nav .mbl-content-nav {
        display: none; } }
    .content-nav .mbl-content-nav.is-active {
      color: #2c2f2f; }
      .content-nav .mbl-content-nav.is-active:after {
        -ms-transform: rotate(180deg);
        transform: rotate(180deg); }
      .content-nav .mbl-content-nav.is-active + ul {
        max-height: 1000px; }
    .content-nav .mbl-content-nav.is-active + ul > li:last-child {
      padding-bottom: 20px;
      border-bottom: solid 1px #cacbcb; }
  .content-nav ul {
    max-height: 0;
    padding: 0;
    overflow: hidden; }
    .content-nav ul:before {
      content: "";
      display: table;
      clear: both; }
    .content-nav ul:after {
      content: "";
      display: table;
      clear: both; }
    .content-nav ul li {
      font-size: 0.90625em;
      line-height: 1.17647em;
      color: #616363;
      margin-bottom: 8px; }
      .content-nav ul li:first-child {
        margin-top: 10px; }
      @media screen and (min-width: 48em) {
        .content-nav ul li {
          font-size: 0.96875em;
          line-height: 1.33333em; } }
      .content-nav ul li a {
        color: #616363; }
        @media screen and (min-width: 80em) {
          .content-nav ul li a:hover, .content-nav ul li a:focus {
            color: #2c2f2f;
            text-decoration: underline; } }
        .content-nav ul li a.active {
          color: #2c2f2f;
          text-decoration: underline; }
      .content-nav ul li:before {
        content: "";
        display: table;
        clear: both; }
      .content-nav ul li:after {
        content: "";
        display: table;
        clear: both; }
      .content-nav ul li.title {
        border-bottom: solid 1px #cacbcb;
        padding-bottom: 5px;
        margin-bottom: 20px; }
        .content-nav ul li.title > a {
          font-family: "Stolzl W00 Medium";
          font-size: 0.8125em;
          line-height: 2.30769em;
          letter-spacing: 0.0375em;
          padding-bottom: 5px;
          margin-bottom: 20px;
          text-transform: uppercase; }
          .content-nav ul li.title > a:hover, .content-nav ul li.title > a:focus {
            text-decoration: none;
            color: #2c2f2f; }
        @media screen and (min-width: 80em) {
          .content-nav ul li.title {
            padding-bottom: 40px; }
            .content-nav ul li.title > a {
              font-size: 0.75em;
              line-height: 1.25em;
              font-family: "Stolzl W00 Book"; } }
    @media screen and (min-width: 30em) {
      .content-nav ul {
        padding-left: 15px;
        padding-right: 15px; } }
    @media screen and (min-width: 48em) {
      .content-nav ul {
        padding-left: 0;
        padding-right: 0; } }
    @media screen and (min-width: 64em) {
      .content-nav ul {
        padding-left: 100px;
        padding-right: 100px; } }
    @media screen and (min-width: 80em) {
      .content-nav ul {
        padding: 0;
        display: block !important;
        max-width: 220px;
        padding-left: 20px; } }
    @media screen and (min-width: 90em) {
      .content-nav ul {
        max-width: 276px;
        padding-left: 40px; } }

.content-nav.mobile-nav {
  display: block; }

.content-nav.desktop-nav {
  display: none; }

@media screen and (min-width: 80em) {
  .content-nav.mobile-nav {
    display: none; }
  .content-nav.desktop-nav {
    display: block; } }

@media screen and (min-width: 80em) {
  .content-nav.desktop-nav {
    margin-bottom: 30px;
    margin-left: -10px; }
    .content-nav.desktop-nav > ul {
      max-height: none;
      padding: 26px 26px 26px 0; }
      .content-nav.desktop-nav > ul > li.dropdown {
        border-bottom: 1px solid #cacbcb; }
        .content-nav.desktop-nav > ul > li.dropdown > .title {
          cursor: pointer;
          display: block;
          position: relative;
          padding-right: 30px;
          font-family: "Stolzl W00 Medium";
          font-size: 0.8125em;
          line-height: 1.1;
          letter-spacing: 0.0375em;
          text-transform: uppercase;
          color: #616363;
          font-weight: normal; }
          .content-nav.desktop-nav > ul > li.dropdown > .title:after {
            content: '\e804';
            font-family: 'WesfarmersIcons';
            font-size: 0.875em;
            color: #616363;
            display: block;
            text-align: center;
            position: absolute;
            top: 50%;
            right: 0;
            width: 30px;
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
            transition: all 150ms ease-in-out;
            -ms-transform-origin: 50% 50% 0;
                transform-origin: 50% 50% 0;
            line-height: 0; }
        .content-nav.desktop-nav > ul > li.dropdown > ul {
          overflow: hidden;
          max-height: 0;
          padding-left: 0;
          padding-right: 0;
          transition: max-height .6s ease-in-out; }
          .content-nav.desktop-nav > ul > li.dropdown > ul > li > a:hover, .content-nav.desktop-nav > ul > li.dropdown > ul > li a:focus {
            text-decoration: underline; }
          .content-nav.desktop-nav > ul > li.dropdown > ul > li:active a {
            text-decoration: underline; }
          .content-nav.desktop-nav > ul > li.dropdown > ul > li > ul {
            overflow: hidden;
            max-height: 0;
            padding-left: 20px;
            padding-right: 0; }
            .content-nav.desktop-nav > ul > li.dropdown > ul > li > ul > li {
              font-size: 0.96875em;
              margin-bottom: 12px; }
              .content-nav.desktop-nav > ul > li.dropdown > ul > li > ul > li > a:hover, .content-nav.desktop-nav > ul > li.dropdown > ul > li > ul > li a:focus {
                text-decoration: underline; }
              .content-nav.desktop-nav > ul > li.dropdown > ul > li > ul > li:active a {
                text-decoration: underline; }
      .content-nav.desktop-nav > ul > li.dropdown.is-active {
        border-bottom-color: transparent; }
        .content-nav.desktop-nav > ul > li.dropdown.is-active > .title {
          color: #2c2f2f; }
          .content-nav.desktop-nav > ul > li.dropdown.is-active > .title:after {
            color: #2c2f2f;
            -ms-transform: rotate(180deg);
            transform: rotate(180deg); }
        .content-nav.desktop-nav > ul > li.dropdown.is-active > ul {
          max-height: 1000px; }
          .content-nav.desktop-nav > ul > li.dropdown.is-active > ul > li.is-active > ul {
            max-height: 1000px; }
        .content-nav.desktop-nav > ul > li.dropdown.is-active > ul {
          border-bottom: 1px solid #cacbcb; } }

@media screen and (min-width: 90em) {
  .content-nav.desktop-nav > ul > li {
    font-size: 1.03125em; } }

@media screen and (min-width: 118.75em) {
  .content-nav.desktop-nav > ul > li {
    font-size: 1.0625em; } }

.hero .container {
  padding: 0; }
  .hero .container img {
    display: block;
    width: 100%; }
  @media screen and (min-width: 48em) {
    .hero .container {
      max-width: 100%;
      position: relative; } }
  .hero .container .hero-copy {
    background: #2c2f2f;
    padding: 20px 20px 40px 20px; }
    .hero .container .hero-copy:before {
      content: "";
      display: table;
      clear: both; }
    .hero .container .hero-copy:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 30em) {
      .hero .container .hero-copy {
        padding: 20px 30px 40px 30px; } }
    @media screen and (min-width: 56.3125em) {
      .hero .container .hero-copy {
        padding: 0;
        background: transparent;
        position: absolute;
        top: 0;
        left: 20px;
        bottom: 0;
        max-width: 290px;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center; }
        .hero .container .hero-copy > * {
          display: inline-block; } }
    @media screen and (min-width: 64em) {
      .hero .container .hero-copy {
        left: 40px; } }
    @media screen and (min-width: 80em) {
      .hero .container .hero-copy {
        max-width: 350px;
        padding: 0; } }
    @media screen and (min-width: 118.75em) {
      .hero .container .hero-copy {
        padding: 0;
        left: 80px; } }
    .hero .container .hero-copy h1 {
      color: #00e862;
      font-family: "Stolzl W00 Medium";
      text-transform: uppercase;
      font-size: 1.25em;
      line-height: 1.1; }
      @media screen and (min-width: 48em) {
        .hero .container .hero-copy h1 {
          float: left;
          max-width: 48%;
          font-size: 1.75em; } }
      @media screen and (min-width: 56.3125em) {
        .hero .container .hero-copy h1 {
          font-size: 1.125em;
          float: none;
          max-width: 80%; } }
      @media screen and (min-width: 80em) {
        .hero .container .hero-copy h1 {
          font-size: 1.75em;
          float: none;
          max-width: 100%; } }
    .hero .container .hero-copy p {
      color: #eaeaea;
      font-size: 1.0625em;
      line-height: 1.41176em; }
      .hero .container .hero-copy p strong {
        font-weight: bold; }
      @media screen and (min-width: 48em) {
        .hero .container .hero-copy p {
          float: right;
          max-width: 48%; } }
      @media screen and (min-width: 56.3125em) {
        .hero .container .hero-copy p {
          max-width: 75%;
          font-size: 1em; } }
      @media screen and (min-width: 64em) {
        .hero .container .hero-copy p {
          font-size: 1.0625em;
          line-height: 1.41176em;
          float: none;
          max-width: 80%; } }
      @media screen and (min-width: 80em) {
        .hero .container .hero-copy p {
          font-size: 1.25em;
          line-height: 1.5em;
          float: none;
          max-width: 100%; } }

input[type='text'], input[type='password'], input[type='date'], input[type='datetime'], input[type='datetime-local'], input[type='month'], input[type='week'], input[type='email'], input[type='number'], input[type='search'], input[type='tel'], input[type='time'], input[type='url'], input[type='color'], textarea {
  -webkit-appearance: none;
  border-radius: 0;
  outline: none;
  letter-spacing: 0;
  line-height: 1.3em; }

fieldset legend {
  position: absolute;
  left: -9999em;
  font-family: 'Stolzl W00 Bold', Arial, sans-serif;
  color: #2c2f2f;
  letter-spacing: 0.0625em; }

fieldset .form-row {
  padding: 0;
  margin: 0 0 20px 0; }
  fieldset .form-row:before {
    content: "";
    display: table;
    clear: both; }
  fieldset .form-row:after {
    content: "";
    display: table;
    clear: both; }

fieldset label {
  font-family: 'Stolzl W00 Bold', Arial, sans-serif;
  letter-spacing: 0.0625em; }

fieldset select {
  -webkit-appearance: none;
  border-radius: 0;
  border: solid 1px #969797;
  padding: 8px 30px 10px 10px;
  margin: 0;
  font-family: 'Stolzl W00 Book', Arial, sans-serif;
  font-weight: 500;
  font-size: 1em;
  -webkit-appearance: none;
  /*Removes default chrome and safari style*/
  -moz-appearance: none;
  /* Removes Default Firefox style*/
  background: #fff url(../img/icons/icon-dd-arrow.png) no-repeat;
  /*Adds background-image*/
  background-position: right 17px;
  /*Position of the background-image*/
  text-indent: 0.01px;
  /* Removes default arrow from firefox*/
  text-overflow: "";
  /*Removes default arrow from firefox*/
  height: 40px;
  min-width: 0; }
  fieldset select:focus {
    outline: none;
    border-bottom: solid 1px #fff; }

fieldset select::-ms-expand {
  /*ie11 get rid of default dd arrow*/
  display: none; }

fieldset input[type='text'], fieldset input[type='password'], fieldset input[type='date'], fieldset input[type='datetime'], fieldset input[type='datetime-local'], fieldset input[type='month'], fieldset input[type='week'], fieldset input[type='email'], fieldset input[type='number'], fieldset input[type='search'], fieldset input[type='tel'], fieldset input[type='time'], fieldset input[type='url'], fieldset input[type='color'], fieldset textarea {
  height: 40px;
  -webkit-appearance: none;
  border-radius: 0;
  margin: 0 0 20px 0;
  border: solid 1px #969797;
  background: #fff;
  box-shadow: none;
  margin: 0;
  padding: 10px;
  letter-spacing: 0.0625em; }
  fieldset input[type='text']:focus, fieldset input[type='password']:focus, fieldset input[type='date']:focus, fieldset input[type='datetime']:focus, fieldset input[type='datetime-local']:focus, fieldset input[type='month']:focus, fieldset input[type='week']:focus, fieldset input[type='email']:focus, fieldset input[type='number']:focus, fieldset input[type='search']:focus, fieldset input[type='tel']:focus, fieldset input[type='time']:focus, fieldset input[type='url']:focus, fieldset input[type='color']:focus, fieldset textarea:focus {
    background: #fff;
    box-shadow: none; }

fieldset > *:last-child {
  margin: 0; }

fieldset .search-input input[type='text'] {
  float: left;
  margin: 0 15px 0 0;
  width: calc(100% - 66px); }

fieldset .search-input .btn {
  float: left;
  background: #ec671c url("../img/icons/icon-search.png") no-repeat 15px 9px;
  display: block;
  width: 51px;
  height: 40px;
  text-indent: 9999em; }

fieldset .search-filters legend {
  position: relative;
  left: auto;
  color: #2c2f2f;
  font-size: 1.5em;
  font-weight: 700;
  margin: 0 0 10px 0; }

fieldset .search-filters select {
  margin: 0 0 10px 0;
  width: 100%; }
  @media screen and (min-width: 48em) {
    fieldset .search-filters select {
      float: left;
      width: 200px;
      margin: 0 15px 0 0; } }

fieldset .search-filters .btn {
  float: left; }

.hor-filter {
  margin-bottom: 15px; }
  .hor-filter legend {
    position: relative;
    left: auto;
    color: #2c2f2f;
    font-size: 1.5em;
    font-weight: 700;
    margin: 0 0 10px 0; }
    @media screen and (min-width: 48em) {
      .hor-filter legend {
        display: block; } }
  .hor-filter .fields {
    overflow: hidden;
    /* Creates a new block format context, which will make this tag fill the remaining width */ }
    .hor-filter .fields:before {
      content: "";
      display: table;
      clear: both; }
    .hor-filter .fields:after {
      content: "";
      display: table;
      clear: both; }
  .hor-filter .field-group, .hor-filter .field-group-wide {
    margin: 0 0 10px 0;
    width: 100%; }
    @media screen and (min-width: 48em) {
      .hor-filter .field-group, .hor-filter .field-group-wide {
        float: left;
        margin: 0;
        padding: 0 15px 0 0;
        width: 282px; } }
    .hor-filter .field-group select, .hor-filter .field-group-wide select {
      width: 100%; }
    .hor-filter .field-group label, .hor-filter .field-group-wide label {
      position: absolute;
      left: -9999em; }
    .hor-filter .field-group-wide, .hor-filter .field-group-wide-wide {
      width: 100%;
      margin: 0 0 10px 0; }
      @media screen and (min-width: 48em) {
        .hor-filter .field-group-wide, .hor-filter .field-group-wide-wide {
          float: left;
          margin: 0;
          padding: 0 15px 0 0;
          width: 846px; } }
  @media screen and (min-width: 48em) {
    .hor-filter input[type='submit'] {
      float: right; } }
  .hor-filter.hide-legend legend {
    position: absolute;
    left: -9999em; }

.simple-select label {
  display: block;
  font-family: 'Stolzl W00 Book', Arial, sans-serif;
  font-size: 1em;
  margin: 0 0 10px 0; }
  @media screen and (min-width: 48em) {
    .simple-select label {
      font-size: 1.1875em; } }

.simple-select select {
  margin: 0 0 10px 0;
  width: 100%; }
  @media screen and (min-width: 48em) {
    .simple-select select {
      width: 50%;
      margin: 0 10px 0 0; } }

.no-csscolumns select {
  background: none;
  padding-right: 10px; }

.content-page .wysiwyg {
  padding-bottom: 20px; }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg {
      padding-bottom: 40px; } }
  .content-page .wysiwyg div.wysiwyg-inner > *:first-child,
  .content-page .wysiwyg > *:first-child {
    margin-top: 30px; }
  @media screen and (min-width: 30em) {
    .content-page .wysiwyg {
      padding-left: 15px;
      padding-right: 15px; } }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg {
      padding-left: 0;
      padding-right: 0; }
      .content-page .wysiwyg div.wysiwyg-inner > *:first-child,
      .content-page .wysiwyg > *:first-child {
        margin-top: 0; } }
  @media screen and (min-width: 64em) {
    .content-page .wysiwyg {
      padding-left: 100px;
      padding-right: 100px; } }
  @media screen and (min-width: 80em) {
    .content-page .wysiwyg {
      padding-left: 0;
      padding-right: 0;
      margin-top: -6px; }
      .content-page .wysiwyg div.wysiwyg-inner > h2:first-child,
      .content-page .wysiwyg > h2:first-child {
        margin-top: -12px; } }
  @media screen and (min-width: 90em) {
    .content-page .wysiwyg {
      padding-left: 0;
      padding-right: 0; } }
  .content-page .wysiwyg strong, .content-page .wysiwyg b {
    font-weight: 700; }
  .content-page .wysiwyg hr {
    margin: 20px 0;
    padding: 0;
    border-bottom: 1px solid #cacbcb; }
  .content-page .wysiwyg h2 {
    margin-top: 30px; }
    @media screen and (min-width: 48em) {
      .content-page .wysiwyg h2 {
        margin-top: 40px; } }
    @media screen and (min-width: 64em) {
      .content-page .wysiwyg h2 {
        margin-top: 50px; } }
  .content-page .wysiwyg h3 {
    margin-top: 20px; }
    @media screen and (min-width: 48em) {
      .content-page .wysiwyg h3 {
        margin-top: 20px; } }
    @media screen and (min-width: 64em) {
      .content-page .wysiwyg h3 {
        margin-top: 40px; } }
  .content-page .wysiwyg h4,
  .content-page .wysiwyg h5 {
    margin-top: 10px; }
    @media screen and (min-width: 48em) {
      .content-page .wysiwyg h4,
      .content-page .wysiwyg h5 {
        margin-top: 20px; } }
    @media screen and (min-width: 64em) {
      .content-page .wysiwyg h4,
      .content-page .wysiwyg h5 {
        margin-top: 30px; } }
  .content-page .wysiwyg a {
    text-decoration: underline; }
  .content-page .wysiwyg sup,
  .content-page .wysiwyg sub {
    font-size: 0.78947em;
    padding: 0 3px; }
  .content-page .wysiwyg ul {
    list-style: none;
    padding: 0;
    margin: 20px 0; }
    .content-page .wysiwyg ul li {
      padding: 0 0 10px 25px;
      position: relative; }
      .content-page .wysiwyg ul li:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "• ";
        color: #00e862; }
  .content-page .wysiwyg ol {
    padding: 0;
    margin: 20px 0 20px 20px; }
    .content-page .wysiwyg ol li {
      padding: 0 0 10px 5px; }
  .content-page .wysiwyg figure {
    margin: 20px 0 15px 0; }
    @media screen and (min-width: 48em) {
      .content-page .wysiwyg figure {
        margin: 40px 0 15px 0; } }
    .content-page .wysiwyg figure img {
      width: 100%;
      display: block; }
    .content-page .wysiwyg figure figcaption {
      font-size: 0.9375em;
      color: #616363;
      padding: 15px 0 0 0;
      line-height: 1.2em; }
      @media screen and (min-width: 48em) {
        .content-page .wysiwyg figure figcaption {
          font-size: 1em;
          padding: 20px 0; } }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg.list-stacked ul {
      -moz-column-count: 2;
      -moz-column-gap: 40px;
      -webkit-column-count: 2;
      -webkit-column-gap: 40px;
      column-count: 2;
      column-gap: 40px; } }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg.list-stacked ul li {
      break-inside: avoid-column; } }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg.list-stacked ol {
      -moz-column-count: 2;
      -moz-column-gap: 50px;
      -webkit-column-count: 2;
      -webkit-column-gap: 50px;
      column-count: 2;
      column-gap: 50px; } }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg.list-stacked ol li {
      break-inside: avoid-column; } }
  @media screen and (min-width: 90em) {
    .content-page .wysiwyg.list-stacked ul, .content-page .wysiwyg.list-stacked ol {
      column-gap: 60px; } }
  .content-page .wysiwyg small {
    font-size: 1.125em; }
  .content-page .wysiwyg .lead {
    font-size: 1.125em;
    line-height: 1.4em; }
  @media screen and (min-width: 48em) {
    .content-page .wysiwyg .lead {
      font-size: 1.25em; } }
  @media screen and (min-width: 80em) {
    .content-page .wysiwyg .lead {
      font-size: 1.375em; } }
  @media screen and (min-width: 118.75em) {
    .content-page .wysiwyg {
      font-size: 1.125em; }
      .content-page .wysiwyg h2:first-of-type {
        margin-top: 6px; }
      .content-page .wysiwyg h3 {
        margin-top: 60px; }
      .content-page .wysiwyg ul, .content-page .wysiwyg ol {
        column-gap: 60px; }
      .content-page .wysiwyg blockquote {
        margin-top: 60px;
        margin-bottom: 60px;
        max-width: 75%; } }

/* Plugin styles */
.social-feed-element.hidden {
  background-color: red !important; }

.social-feed-element .pull-left {
  float: left;
  margin-right: 10px; }

.social-feed-element .pull-right {
  margin-left: 10px; }

.social-feed-element img {
  width: 100%;
  width: auto\9;
  height: auto;
  border: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic; }

.social-feed-element .attachment {
  vertical-align: middle;
  -ms-interpolation-mode: bicubic; }

/* Link styles */
.social-feed-element a {
  color: #0088cc;
  text-decoration: none; }

.social-feed-element a:focus {
  outline: thin dotted #333;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

.social-feed-element a:hover,
.social-feed-element a:active {
  outline: 0;
  color: #005580;
  text-decoration: underline; }

/* Text styles */
.social-feed-element small {
  font-size: 85%; }

.social-feed-element strong {
  font-weight: bold; }

.social-feed-element em {
  font-style: italic; }

.social-feed-element p {
  margin: 0 0 10px; }

.social-feed-element .media-body > p {
  margin-bottom: 4px;
  min-height: 20px; }

.social-feed-element p.social-feed-text {
  margin: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical; }

/* Message styles */
.social-feed-element,
.social-feed-element .media-body {
  overflow: hidden;
  zoom: 1;
  *overflow: visible; }

.social-feed-element .media-body .social-network-icon {
  margin-top: -3px;
  margin-right: 5px;
  width: 16px; }

.social-feed-element .media-body div {
  color: #666;
  line-height: 20px; }

.social-feed-element:first-child {
  margin-top: 0; }

.social-feed-element .media-object {
  display: block;
  width: 48px;
  border-radius: 50%; }

.social-feed-element .media-heading {
  margin: 0 0 5px; }

.social-feed-element .media-list {
  margin-left: 0;
  list-style: none; }

.social-feed-element .muted {
  color: #999; }

.social-feed-element a.muted:hover,
.social-feed-element a.muted:focus {
  color: #808080; }

.social-feed-element {
  box-shadow: 0 0 10px 0 rgba(10, 10, 10, 0.2);
  transition: 0.25s;
  -webkit-backface-visibility: hidden;
  margin: -1px;
  margin-top: 25px;
  background-color: #fff;
  color: #333;
  text-align: left;
  font-size: 14px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 16px; }

.social-feed-element:hover {
  box-shadow: 0 0 20px 0 rgba(10, 10, 10, 0.4); }

.social-feed-element .content {
  padding: 15px; }

.social-feed-element .social-network-icon {
  opacity: 0.7; }

.social-feed-element .author-title {
  color: #444;
  line-height: 1.5em;
  font-weight: 500; }

.twitter-feed {
  margin-bottom: 40px; }
  @media screen and (min-width: 30em) {
    .twitter-feed {
      padding: 0 10px; } }
  .twitter-feed h2 {
    position: relative;
    margin-bottom: 25px;
    font-family: "Stolzl W00 Medium";
    font-size: 1em;
    text-transform: uppercase;
    padding-left: 25px; }
    .twitter-feed h2:before {
      content: '@';
      font-family: "Stolzl W00 Book"; }
    .twitter-feed h2:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 17px;
      color: #2c2f2f;
      position: absolute;
      top: 2px;
      left: 0;
      display: block;
      width: 24px;
      height: 24px;
      background-color: transparent; }

.twitter-feed-element {
  cursor: pointer;
  border-top: solid 2px #00e862; }
  .twitter-feed-element .media-body {
    padding-top: 10px; }
  .twitter-feed-element .date-time {
    font-family: "Stolzl W00 Medium";
    font-size: 0.75em;
    text-transform: uppercase;
    color: #616363;
    padding: 0;
    margin: 0 0 20px 0; }
  .twitter-feed-element a {
    color: #2c2f2f;
    text-decoration: none; }
    .twitter-feed-element a:hover, .twitter-feed-element a:focus, .twitter-feed-element a:active, .twitter-feed-element a:visited {
      color: #000;
      text-decoration: none; }
  .twitter-feed-element:hover, .twitter-feed-element:focus, .twitter-feed-element:active, .twitter-feed-element:visited {
    color: #000;
    text-decoration: none; }

.wysiwyg .twitter-feed > a {
  text-decoration: none; }
  .wysiwyg .twitter-feed > a:hover, .wysiwyg .twitter-feed > a:focus, .wysiwyg .twitter-feed > a:active, .wysiwyg .twitter-feed > a:visited {
    text-decoration: none; }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .twitter-feeds .wysiwyg {
    margin-left: 0;
    margin-right: 0; } }

.related-content {
  max-width: 100% !important;
  width: 100%;
  padding-bottom: 50px; }
  @media (max-width: 79.9375em) {
    .related-content {
      position: relative !important; } }
  @media screen and (min-width: 64em) {
    .related-content {
      min-width: 100%;
      width: 100%;
      padding: 0 100px 50px; } }
  @media screen and (min-width: 80em) {
    .related-content {
      width: 15em;
      padding: 0;
      width: auto;
      min-width: 240px !important;
      right: 0 !important;
      left: auto !important; } }
  .related-content h2 {
    font-family: "Stolzl W00 Book";
    font-size: 0.75em;
    line-height: 1.25em;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #616363;
    padding: 20px 0;
    margin: 0;
    border-top: solid 1px #cacbcb;
    margin: 0; }
    @media screen and (min-width: 80em) {
      .related-content h2 {
        border: 0;
        padding: 0 0 40px 0;
        margin-top: 12px; } }
  .related-content ul {
    position: relative;
    padding: 0 0 30px 0;
    margin-bottom: 20px;
    overflow: hidden; }
    .related-content ul:before {
      content: "";
      display: table;
      clear: both; }
    .related-content ul:after {
      content: "";
      display: table;
      clear: both; }
    .related-content ul:after {
      background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjRBNjg3MDA4MDJCRjExRTZCNjI3QUNDOEVBNTJBM0U3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjRBNjg3MDA5MDJCRjExRTZCNjI3QUNDOEVBNTJBM0U3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NEE2ODcwMDYwMkJGMTFFNkI2MjdBQ0M4RUE1MkEzRTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NEE2ODcwMDcwMkJGMTFFNkI2MjdBQ0M4RUE1MkEzRTciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6Tz+7BAAAB80lEQVR42uzby00DQRBFUVMJEI/JAMIgSJwBsbCFCOhZsEEyHg/zuVV1W6rF7Fo66sV0v/dw+ng9NV7nMZcxj4C9fI15DjE4GGPeQwwOxvQRYnAwOoKgMbqB4DE6gaTA6AKSBqMDSCqM6iDpMCqDkDA+52JUBaFhvMzFqAiSGqMaSHqMSiAlMKqAlMGoAFIKIztIOYzMICUxsoKUxcgIUhojG0h5jEwgLTCygLTByADSCoMO0g6DDNISgwrSFoMI0hqDBtIegwQiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAgYgBAhEDBPIkBgdkwngTgwEiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAgYgBAhEDBiIGZ51DDA7GmEuIwcGYDkeIwcH4609djAMwjgQR40qOLcTgYBwBIsaNhGeIwcHYE0SMmdnnEIODsQeIGHe2AkIMDsaWIGIsrGiEGJthLLpFDzE4GGuDiLHCY1+IwcFYC0SMFZ/BQwwOxn9BxNggIBJicDCWgoixYXQqxOBg3Asixg6hwhCDgzEXRIwd47YhBgfjFogYBwTRQwwOxjUQMQ6saIQYHIzfIGIAykshBgfjB0QMUK0vxGB1LL8FGAAEdy1b++uZpQAAAABJRU5ErkJggg==");
      background-size: 6px auto;
      content: '';
      position: absolute;
      bottom: 0;
      left: -10%;
      z-index: 1;
      display: block;
      width: 120%;
      height: 18px;
      opacity: .75;
      -ms-transform: skewX(15deg);
          transform: skewX(15deg); }
    .related-content ul li {
      font-family: "Stolzl W00 Medium";
      font-size: 0.90625em;
      line-height: 1.14286em;
      letter-spacing: 0.01875em;
      text-transform: uppercase;
      border-top: solid 1px #cacbcb;
      padding: 5px 0 15px 0; }
      @media screen and (min-width: 48em) {
        .related-content ul li {
          float: none; } }
      @media screen and (min-width: 80em) {
        .related-content ul li {
          width: 33.33%;
          float: none;
          width: auto; } }
      .related-content ul li a {
        color: #616363;
        transition: all 150ms ease-in-out; }
        .related-content ul li a span {
          display: inline-block;
          margin-left: 6px;
          font-family: "Stolzl W00 Book";
          font-size: 0.8em;
          line-height: 1.33333em; }
        .related-content ul li a:hover, .related-content ul li a:focus {
          color: #2c2f2f;
          text-decoration: none; }
      @media screen and (min-width: 48em) {
        .related-content ul li:nth-child(3n+4) {
          clear: left; } }
      @media screen and (min-width: 80em) {
        .related-content ul li a span {
          margin-left: 0;
          display: block; } }

footer {
  background: #2c2f2f;
  padding: 40px 0; }
  footer:before {
    content: "";
    display: table;
    clear: both; }
  footer:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 48em) {
    footer {
      position: absolute;
      right: 0;
      left: 0;
      bottom: 0;
      display: block; } }
  @media screen and (min-width: 118.75em) {
    footer {
      margin: 0 auto;
      max-width: 2560px; } }
  footer .container {
    max-width: 945px; }
    @media screen and (min-width: 48em) {
      footer .container {
        padding: 0 34px; } }
    @media screen and (min-width: 80em) {
      footer .container {
        position: relative;
        min-height: 170px; } }
    @media screen and (min-width: 90em) {
      footer .container {
        max-width: none; } }
    footer .container .wysiwyg > div:first-child {
      margin-top: 0; }
  footer nav ul:before {
    content: "";
    display: table;
    clear: both; }
  footer nav ul:after {
    content: "";
    display: table;
    clear: both; }
  footer nav ul li {
    text-align: center;
    text-transform: uppercase; }
    @media screen and (min-width: 48em) {
      footer nav ul li {
        float: left;
        text-align: left; }
        footer nav ul li:before {
          content: "";
          display: table;
          clear: both; }
        footer nav ul li:after {
          content: "";
          display: table;
          clear: both; } }
  footer nav.ftr-global {
    padding-bottom: 30px; }
    @media screen and (min-width: 48em) {
      footer nav.ftr-global {
        padding: 20px 0 30px 0; } }
    @media screen and (min-width: 80em) {
      footer nav.ftr-global {
        padding: 80px 0 50px 0; } }
    footer nav.ftr-global li {
      font-family: "Stolzl W00 Medium";
      letter-spacing: 0.0625em;
      font-size: 1em;
      color: #eaeaea;
      padding: 0 0 20px 0; }
      footer nav.ftr-global li:after {
        right: -42px; }
      footer nav.ftr-global li a {
        color: #eaeaea; }
        footer nav.ftr-global li a:hover, footer nav.ftr-global li a:focus {
          color: #14dc66;
          text-decoration: none; }
      @media screen and (min-width: 48em) {
        footer nav.ftr-global li:first-of-type {
          border: 0;
          padding-left: 0; } }
      footer nav.ftr-global li:last-of-type {
        padding-bottom: 0; }
    @media screen and (min-width: 48em) {
      footer nav.ftr-global ul {
        text-align: justify;
        font-size: 0.1px;
        width: 100%;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        footer nav.ftr-global ul > li {
          font-size: 16px;
          float: none;
          width: auto;
          display: inline-block;
          padding: 0;
          -ms-flex: 1 1 auto;
              flex: 1 1 auto;
          text-align: center;
          line-height: 16px;
          padding: 0 20px; }
          footer nav.ftr-global ul > li > a {
            font-size: 0.90625em; }
          footer nav.ftr-global ul > li + li {
            border-left: 1px solid #5f6161; }
        footer nav.ftr-global ul:after {
          content: none;
          width: 100%;
          display: inline-block; } }
    @media screen and (min-width: 80em) {
      footer nav.ftr-global ul > li {
        padding: 0;
        position: relative; }
        footer nav.ftr-global ul > li:after {
          display: block;
          position: absolute;
          top: 2px;
          right: -40px;
          content: none;
          width: 1px;
          height: 20px;
          background-color: #5f6161; }
        footer nav.ftr-global ul > li:last-child:after {
          display: none; } }
    @media screen and (min-width: 80em) {
      footer nav.ftr-global ul > li:after {
        right: -52px; } }
  @media screen and (min-width: 48em) {
    footer nav.ftr-util {
      float: left; } }
  @media screen and (min-width: 64em) {
    footer nav.ftr-util {
      margin-top: 2px; } }
  @media screen and (min-width: 80em) {
    footer nav.ftr-util {
      margin-top: 4px; } }
  footer nav.ftr-util li {
    font-family: "Stolzl W00 Book";
    font-size: 0.78125em;
    color: #969797;
    padding: 0 0 0.625em 0; }
    @media screen and (min-width: 48em) {
      footer nav.ftr-util li {
        padding: 0 1.875em 0 0; } }
    footer nav.ftr-util li a {
      color: #969797; }
      footer nav.ftr-util li a:hover, footer nav.ftr-util li a:focus {
        color: #fff;
        text-decoration: none; }
    @media screen and (min-width: 48em) {
      footer nav.ftr-util li:nth-child(1) {
        clear: left;
        margin-bottom: 10px; } }
    @media screen and (min-width: 64em) {
      footer nav.ftr-util li:nth-child(1) {
        clear: none;
        margin-bottom: 0; } }
    @media screen and (min-width: 48em) {
      footer nav.ftr-util li:nth-child(2) {
        clear: left; } }
    @media screen and (min-width: 64em) {
      footer nav.ftr-util li:nth-child(2) {
        clear: none; } }
  footer .ftr-util-wrapper:before {
    content: "";
    display: table;
    clear: both; }
  footer .ftr-util-wrapper:after {
    content: "";
    display: table;
    clear: both; }
  footer .ftr-util-wrapper .ftr-social {
    margin: 0 auto;
    margin-bottom: 30px;
    display: block;
    max-width: 80%;
    text-align: center; }
    footer .ftr-util-wrapper .ftr-social:before {
      content: "";
      display: table;
      clear: both; }
    footer .ftr-util-wrapper .ftr-social:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 48em) {
      footer .ftr-util-wrapper .ftr-social {
        float: right;
        margin-bottom: 0;
        margin-top: 24px; } }
    @media screen and (min-width: 64em) {
      footer .ftr-util-wrapper .ftr-social {
        margin-top: 0; } }
    footer .ftr-util-wrapper .ftr-social li {
      text-align: center;
      text-transform: uppercase;
      margin-left: 30px;
      display: inline-block; }
      footer .ftr-util-wrapper .ftr-social li a.ftr-twtr, footer .ftr-util-wrapper .ftr-social li a.ftr-vim, footer .ftr-util-wrapper .ftr-social li a.ftr-li {
        position: relative;
        display: block;
        text-align: left;
        text-indent: -9999em;
        width: 24px;
        height: 24px;
        display: block; }
        footer .ftr-util-wrapper .ftr-social li a.ftr-twtr:after, footer .ftr-util-wrapper .ftr-social li a.ftr-vim:after, footer .ftr-util-wrapper .ftr-social li a.ftr-li:after {
          text-indent: 0;
          content: "";
          font-family: 'WesfarmersIcons';
          font-size: 19px;
          color: #616363;
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 24px;
          height: 24px;
          background-color: transparent;
          z-index: 9999;
          transition: color .3s; }
        footer .ftr-util-wrapper .ftr-social li a.ftr-twtr:hover:after, footer .ftr-util-wrapper .ftr-social li a.ftr-twtr:focus:after, footer .ftr-util-wrapper .ftr-social li a.ftr-vim:hover:after, footer .ftr-util-wrapper .ftr-social li a.ftr-vim:focus:after, footer .ftr-util-wrapper .ftr-social li a.ftr-li:hover:after, footer .ftr-util-wrapper .ftr-social li a.ftr-li:focus:after {
          color: #cacbcb; }
      footer .ftr-util-wrapper .ftr-social li a.ftr-twtr:after {
        content: ""; }
      footer .ftr-util-wrapper .ftr-social li a.ftr-vim:after {
        content: ""; }
      footer .ftr-util-wrapper .ftr-social li a.ftr-li:after {
        content: "";
        top: -2px; }
      footer .ftr-util-wrapper .ftr-social li:first-of-type {
        margin-left: 0; }
      @media screen and (min-width: 48em) {
        footer .ftr-util-wrapper .ftr-social li {
          float: left;
          text-transform: uppercase;
          display: block; }
          footer .ftr-util-wrapper .ftr-social li:before {
            content: "";
            display: table;
            clear: both; }
          footer .ftr-util-wrapper .ftr-social li:after {
            content: "";
            display: table;
            clear: both; } }
  @media screen and (min-width: 48em) {
    footer .ftr-nav-wrapper {
      max-width: 945px;
      margin: 0 auto; } }
  footer .ftr-stock {
    position: relative;
    background: #3c3e3e;
    border-radius: 80%;
    width: 145px;
    height: 145px;
    text-align: center;
    margin: 0 auto;
    margin-bottom: 20px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center; }
    footer .ftr-stock > * {
      display: inline-block; }
    @media screen and (min-width: 48em) {
      footer .ftr-stock {
        top: auto;
        left: auto;
        background: transparent;
        border-radius: 0;
        margin: 0;
        height: auto;
        width: auto;
        text-align: left;
        display: block; }
        footer .ftr-stock:before {
          content: "";
          display: table;
          clear: both; }
        footer .ftr-stock:after {
          content: "";
          display: table;
          clear: both; } }
    footer .ftr-stock .ftr-stock-price {
      font-family: "Stolzl W00 Bold";
      font-weight: 700;
      font-size: 1.875em;
      line-height: 1.33333em;
      color: #fff;
      margin: 0; }
    footer .ftr-stock .ftr-stock-index {
      font-family: "Stolzl W00 Book";
      font-size: 0.8125em;
      text-transform: uppercase;
      color: #cacbcb;
      margin: 0; }
      footer .ftr-stock .ftr-stock-index span {
        font-family: "Stolzl W00 Medium"; }
    @media screen and (min-width: 90em) {
      footer .ftr-stock {
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
        left: 60px;
        text-align: center;
        background: #3c3e3e;
        border-radius: 80%;
        width: 145px;
        height: 145px;
        text-align: center;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: center;
            justify-content: center; }
        footer .ftr-stock > * {
          display: inline-block; } }

/*
.push {
    display: none;    
}

@include breakpoint(xlarge) {
    html, body {
        height: 100%;
    }
    #wrapper {
        min-height: 100%;
        margin-bottom: -215px;
    }
    .push {
        display: block;
        height: 215px;
    }
}
*/
#home #main section.spaced {
  transition: margin .4s ease-in-out;
  max-width: none; }

#home #main section.grey.panels {
  transition: padding .4s ease-in-out; }

@media screen and (min-width: 48em) {
  #home #main section.spaced {
    margin-top: 35px;
    margin-bottom: 35px; }
  #home #main section.grey.panels {
    padding-top: 50px;
    padding-bottom: 30px; } }

@media screen and (min-width: 118.75em) {
  #home #main {
    max-width: 2560px;
    margin-left: auto;
    margin-right: auto; } }

@media screen and (min-width: 64em) {
  #home .twitter-feeds {
    width: 80%; }
    #home .twitter-feeds > .row {
      margin-top: 40px;
      margin-bottom: 40px; } }

@media screen and (min-width: 80em) {
  #home .twitter-feeds {
    width: 80%; } }

@media screen and (min-width: 90em) {
  #home .twitter-feeds {
    width: 75%; }
    #home .twitter-feeds > .row {
      margin-top: 60px;
      margin-bottom: 60px; } }

@media screen and (min-width: 118.75em) {
  #home .twitter-feeds {
    width: 50%; }
    #home .twitter-feeds > .row {
      margin-top: 80px;
      margin-bottom: 80px; } }

@media screen and (min-width: 80em) and (max-height: 64em) {
  #home:not(.sticky-header) .home {
    padding-top: 0 !important; }
    #home:not(.sticky-header) .home > .container {
      -ms-transform: translateY(14px);
          transform: translateY(14px); }
      #home:not(.sticky-header) .home > .container .global-sub {
        -ms-transform: translateY(-13px) !important;
            transform: translateY(-13px) !important; }
      #home:not(.sticky-header) .home > .container .global > li > a:after,
      #home:not(.sticky-header) .home > .container .global > li > span:after,
      #home:not(.sticky-header) .home > .container .util > li > a:after,
      #home:not(.sticky-header) .home > .container .util > li > span:after {
        -ms-transform: translateY(-10px) !important;
            transform: translateY(-10px) !important; }
  #home:not(.sticky-header) #main {
    margin-top: 101px !important; }
  #home #main section.spaced {
    margin-top: 25px;
    margin-bottom: 25px; }
  #home #main section.grey.panels {
    padding-top: 30px;
    padding-bottom: 30px; } }

@media screen and (min-width: 90em) and (max-height: 64em) {
  #home:not(.sticky-header) .home {
    padding-top: 0 !important; }
    #home:not(.sticky-header) .home .container .global-sub {
      -ms-transform: translateY(-3px) !important;
          transform: translateY(-3px) !important; }
    #home:not(.sticky-header) .home .container .global > li > a:after,
    #home:not(.sticky-header) .home .container .global > li > span:after,
    #home:not(.sticky-header) .home .container .util > li > a:after,
    #home:not(.sticky-header) .home .container .util > li > span:after {
      -ms-transform: translateY(0px) !important;
          transform: translateY(0px) !important; }
  #home:not(.sticky-header) #main {
    margin-top: 133px !important; }
  #home #main section.spaced {
    margin-top: 25px;
    margin-bottom: 25px; }
  #home #main section.grey.panels {
    padding-top: 30px;
    padding-bottom: 30px; } }

@media screen and (min-width: 120em) and (max-height: 75em) {
  #home:not(.sticky-header) .home {
    padding-top: 0 !important; }
    #home:not(.sticky-header) .home .container {
      -ms-transform: translateY(14px);
          transform: translateY(14px); }
      #home:not(.sticky-header) .home .container .global-sub {
        -ms-transform: translateY(-3px) !important;
            transform: translateY(-3px) !important; }
      #home:not(.sticky-header) .home .container .global > li > a:after,
      #home:not(.sticky-header) .home .container .global > li > span:after,
      #home:not(.sticky-header) .home .container .util > li > a:after,
      #home:not(.sticky-header) .home .container .util > li > span:after {
        -ms-transform: translateY(0px) !important;
            transform: translateY(0px) !important; }
  #home:not(.sticky-header) #main {
    margin-top: 133px !important; }
  #home #main section.spaced {
    margin-top: 25px;
    margin-bottom: 25px; }
  #home #main section.grey.panels {
    padding-top: 30px;
    padding-bottom: 30px; } }

.table {
  overflow-x: visible;
  overflow-y: scroll;
  min-height: auto; }
  @media screen and (min-width: 48em) {
    .table {
      overflow-x: inherit;
      overflow-y: auto; } }

table {
  table-layout: auto; }
  @media screen and (min-width: 48em) {
    table {
      table-layout: fixed; } }
  table tbody, table thead {
    width: 100%;
    border: 0;
    background: none; }
    table tbody > tr:nth-child(odd):hover, table thead > tr:nth-child(odd):hover {
      background: none; }
  table thead {
    border-top: 1px solid #2c2f2f;
    border-bottom: 12px solid #eaeaea; }
    table thead th {
      padding: 25px 10px 10px 10px;
      background-color: transparent;
      font-family: "Stolzl W00 Medium";
      font-weight: normal;
      font-size: 0.75em;
      text-transform: uppercase;
      color: #2c2f2f; }
  table tbody tr:nth-child(even) {
    background: none; }
  table tbody td {
    padding: 17px 10px;
    font-family: Arial, sans-serif;
    font-size: 0.875em;
    color: #2c2f2f; }
  table:after {
    content: "";
    height: 12px;
    display: block; }

.home-news-list {
  padding: 0 20px;
  margin-top: 20px; }
  .home-news-list h2 {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    margin-top: 15px; }
  @media screen and (min-width: 30em) {
    .home-news-list {
      padding: 0 30px; } }
  @media screen and (min-width: 30em) {
    .home-news-list {
      padding: 0 30px; } }
  .home-news-list ul:before {
    content: "";
    display: table;
    clear: both; }
  .home-news-list ul:after {
    content: "";
    display: table;
    clear: both; }
  .home-news-list ul li {
    padding: 0;
    font-family: "Heuristica";
    font-size: 1em;
    line-height: 1.25em;
    border-bottom: solid 1px #00e862;
    padding-bottom: 10px;
    margin-bottom: 10px; }
    .home-news-list ul li:before {
      content: "";
      display: table;
      clear: both; }
    .home-news-list ul li:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 64em) {
      .home-news-list ul li {
        float: left;
        width: 33.33%;
        border-left: solid 2px #00e862;
        border-right: solid 2px #00e862;
        padding: 0 30px 0 15px;
        border-bottom: 0;
        margin-bottom: 0; } }
    .home-news-list ul li a {
      color: #2c2f2f;
      transition: all 200ms ease-in-out;
      display: block; }
      .home-news-list ul li a:hover, .home-news-list ul li a:focus {
        color: #616363;
        text-decoration: none; }
    @media screen and (min-width: 48em) {
      .home-news-list ul li:first-of-type {
        border-right: 0;
        border-left: 0;
        padding-left: 0; } }
    .home-news-list ul li:last-of-type {
      border: 0; }
      @media screen and (min-width: 48em) {
        .home-news-list ul li:last-of-type {
          padding-right: 0; } }
  @media screen and (min-width: 48em) {
    .home-news-list {
      margin-top: 0;
      -ms-flex: 38%;
          flex: 38%;
      max-width: 38%;
      padding-left: 40px; }
      .home-news-list ul {
        max-width: 280px; }
      .home-news-list h2 {
        margin-top: 0; } }
  @media screen and (min-width: 64em) {
    .home-news-list {
      position: relative;
      -ms-flex: 58.33333%;
          flex: 58.33333%;
      max-width: 58.33333%;
      margin-top: 0;
      padding-right: 0;
      padding-left: 40px; }
      .home-news-list ul {
        max-width: none;
        display: block;
        position: absolute;
        top: 50%;
        -ms-transform: translateY(-50%);
            transform: translateY(-50%); }
        .home-news-list ul > li {
          font-size: 1.0625em;
          line-height: 1.36364em; } }
  @media screen and (min-width: 80em) {
    .home-news-list {
      -ms-flex: 60%;
          flex: 60%;
      max-width: 60%;
      padding-left: 40px; }
      .home-news-list ul > li {
        font-size: 1.0625em; } }
  @media screen and (min-width: 100em) {
    .home-news-list h2 {
      margin-bottom: 0; }
    .home-news-list ul > li {
      font-size: 1.1875em; } }
  @media screen and (min-width: 118.75em) {
    .home-news-list {
      -ms-flex: 65%;
          flex: 65%;
      max-width: 60%; }
      .home-news-list ul > li {
        font-size: 1.375em; } }

.news-list-page h5 {
  margin-bottom: 0; }

.news-list-page ul {
  padding-top: 1.875em; }

.news-list-page li {
  padding-top: 0.625em;
  padding-bottom: 1.5625em;
  border-bottom: 1px solid #eaeaea; }

.share-promo {
  max-width: 320px;
  margin: 0 auto;
  /*
	.latest-news {
		margin-top: 20px;
		@include breakpoint(large) {
			margin-top: 0;
		}
		h2 {
			font-family:"Stolzl W00 Book";
			font-size: em(13);
			line-height: .9;
			letter-spacing: em(2);
			text-transform: uppercase;
			color: $color-grey3;
		}
	}
	*/ }
  .share-promo:before {
    content: "";
    display: table;
    clear: both; }
  .share-promo:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 30em) {
    .share-promo {
      max-width: 360px; } }
  @media screen and (min-width: 48em) {
    .share-promo {
      padding: 0; } }
  @media screen and (min-width: 80em) {
    .share-promo {
      max-width: 30%;
      -ms-flex: 40%;
          flex: 40%; } }
  @media screen and (min-width: 118.75em) {
    .share-promo {
      max-width: 35%;
      -ms-flex: 35%;
          flex: 35%; } }
  .share-promo .wysiwyg .investor-btn,
  .share-promo .wysiwyg .share-price {
    text-decoration: none; }
    .share-promo .wysiwyg .investor-btn:hover, .share-promo .wysiwyg .investor-btn:focus, .share-promo .wysiwyg .investor-btn:active, .share-promo .wysiwyg .investor-btn:visited,
    .share-promo .wysiwyg .share-price:hover,
    .share-promo .wysiwyg .share-price:focus,
    .share-promo .wysiwyg .share-price:active,
    .share-promo .wysiwyg .share-price:visited {
      text-decoration: none; }
  .share-promo .investor-btn {
    float: left;
    border-radius: 80%;
    height: 130px;
    width: 130px;
    background: #00e862;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: center;
        justify-content: center;
    text-align: center;
    transition: background-color 0.3s; }
    .share-promo .investor-btn div, .share-promo .investor-btn div span {
      transition: color 0.3s; }
    .share-promo .investor-btn:hover, .share-promo .investor-btn:focus {
      background-color: #2c2f2f; }
      .share-promo .investor-btn:hover div, .share-promo .investor-btn:focus div {
        color: #fff; }
        .share-promo .investor-btn:hover div span, .share-promo .investor-btn:focus div span {
          color: #00e862; }
    .share-promo .investor-btn div {
      font-family: "Stolzl W00 Medium";
      color: #2c2f2f;
      text-transform: uppercase;
      font-size: 1em;
      line-height: 1;
      padding: 0 10px; }
      .share-promo .investor-btn div span {
        color: #fff;
        display: block;
        font-family: "Heuristica Italic";
        font-size: 1.125em;
        text-transform: none;
        margin: 0 0 2px 0; }
      @media screen and (min-width: 64em) {
        .share-promo .investor-btn div {
          padding: 0 10px; }
          .share-promo .investor-btn div:hover, .share-promo .investor-btn div:focus {
            text-decoration: none; } }
      @media screen and (min-width: 80em) {
        .share-promo .investor-btn div {
          padding: 0 30px; } }
      @media screen and (min-width: 118.75em) {
        .share-promo .investor-btn div {
          font-size: 1.25em; }
          .share-promo .investor-btn div span {
            font-size: 1.25em;
            margin-left: -5px; } }
    @media screen and (min-width: 48em) {
      .share-promo .investor-btn {
        float: none;
        position: absolute;
        left: 50%;
        -ms-transform: translate(-50%);
            transform: translate(-50%);
        height: 140px;
        width: 140px; } }
    @media screen and (min-width: 64em) {
      .share-promo .investor-btn {
        float: left;
        position: relative;
        left: auto;
        -ms-transform: none;
            transform: none;
        height: 140px;
        width: 140px; } }
    @media screen and (min-width: 80em) {
      .share-promo .investor-btn {
        height: 155px;
        width: 155px; } }
    @media screen and (min-width: 118.75em) {
      .share-promo .investor-btn {
        height: 195px;
        width: 195px; } }
  .share-promo .share-price {
    display: block;
    overflow: hidden;
    padding: 0 0 0 20px; }
    .share-promo .share-price h2 {
      font-family: "Stolzl W00 Book";
      font-size: 0.8125em;
      line-height: .9;
      letter-spacing: 0.0375em;
      text-transform: uppercase;
      color: #646464;
      font-weight: normal;
      text-align: center; }
    .share-promo .share-price .stock-updated {
      display: none; }
    @media screen and (min-width: 48em) {
      .share-promo .share-price {
        position: absolute;
        right: 40px;
        max-width: 260px;
        padding-left: 0;
        margin-right: 6.25%; }
        .share-promo .share-price h2 {
          text-align: left; } }
    @media screen and (min-width: 64em) {
      .share-promo .share-price {
        position: relative;
        right: auto;
        padding-left: 40px; }
        .share-promo .share-price .stock-updated {
          display: block; }
        .share-promo .share-price h2 {
          margin-bottom: 0; } }
    @media screen and (min-width: 80em) {
      .share-promo .share-price {
        margin-right: 3.3333%; } }
  .share-promo a.share-price:hover .stock-price, .share-promo a.share-price:focus .stock-price {
    color: #00e862; }
  .share-promo a.share-price:hover .stock-index *, .share-promo a.share-price:focus .stock-index * {
    transition: none;
    color: #2c2f2f; }
  @media screen and (min-width: 64em) {
    .share-promo a.share-price:hover h2,
    .share-promo a.share-price:hover span,
    .share-promo a.share-price:hover p, .share-promo a.share-price:focus h2,
    .share-promo a.share-price:focus span,
    .share-promo a.share-price:focus p {
      text-decoration: none !important; } }
  @media screen and (min-width: 64em) and (max-width: 79.9375em) {
    .share-promo article {
      margin-left: 0;
      margin-right: 0; } }

.stock-price span {
  display: block;
  font-size: 1.875em;
  line-height: normal;
  font-family: "Stolzl W00 Bold";
  padding: 0 10px 5px 10px;
  border-bottom: solid 7px #00e862;
  margin-bottom: -7px;
  text-align: center; }
  @media screen and (min-width: 48em) {
    .stock-price span {
      font-size: 2.8125em;
      text-align: left; } }
  @media screen and (min-width: 64em) {
    .stock-price span {
      font-size: 2.375em;
      text-align: left; } }
  @media screen and (min-width: 80em) {
    .stock-price span {
      font-size: 2.625em;
      text-align: center; } }
  @media screen and (min-width: 118.75em) {
    .stock-price span {
      font-size: 3.375em;
      text-align: center; } }

.stock-wrapper {
  border-top: solid 7px #00e862;
  display: block; }

.stock-index {
  position: relative;
  left: 50%;
  -ms-transform: translate(-50%);
      transform: translate(-50%);
  display: inline-block;
  padding: 10px 0 10px 0;
  /*
	&:before {
		@include wf-icon($icon-arrow-up, 13px, $color-grey-body); //$icon-arrow-down
		display: block;
		position: absolute;
		left:0;
		top:50%;
		@include transform (translateY(-50%));
		width:20px;
		height:12px;		
	}
	*/ }
  .stock-index > i {
    display: inline-block;
    width: 20px;
    height: 20px;
    font-size: 12px; }
  .stock-index > span {
    font-size: 0.75em;
    font-family: "Stolzl W00 Book";
    padding: 0 0 0 10px;
    display: inline-block; }
    .stock-index > span:first-of-type {
      padding: 0 10px 0 0;
      border-right: solid 1px #00e862; }
    @media screen and (min-width: 48em) {
      .stock-index > span {
        font-size: 1em; } }
    @media screen and (min-width: 90em) {
      .stock-index > span {
        font-size: 1.1875em; } }

.stock-updated {
  font-size: 0.625em;
  text-transform: uppercase;
  font-family: "Stolzl W00 Book";
  color: #616363; }
  .stock-updated strong {
    display: none;
    font-family: "Stolzl W00 Medium";
    color: #2c2f2f; }
  @media screen and (min-width: 64em) {
    .stock-updated {
      text-align: center; } }
  @media screen and (min-width: 90em) {
    .stock-updated {
      font-size: 0.6875em; }
      .stock-updated strong {
        display: inline-block; } }
  @media screen and (min-width: 118.75em) {
    .stock-updated {
      font-size: 0.75em; } }

.panel {
  margin-bottom: 40px; }
  @media screen and (min-width: 64em) {
    .panel {
      margin-bottom: 75px;
      border-bottom: solid 2px #00e862;
      transition: border 200ms ease-out;
      height: auto !important;
      height: 18.75em; } }
  .panel a {
    margin: 0 -20px;
    display: block; }
    @media screen and (min-width: 30em) {
      .panel a {
        margin: 0; } }
    @media screen and (min-width: 48em) {
      .panel a {
        margin: 0;
        text-decoration: none; } }
    .panel a .image,
    .panel a .image:before,
    .panel a .image:after,
    .panel a .image > img {
      transition: all .3s; }
    .panel a .image, .panel a .video-play {
      position: relative;
      overflow: hidden;
      font-size: 0; }
      .panel a .image:before, .panel a .video-play:before {
        display: block;
        position: absolute;
        content: '';
        z-index: 999;
        background-color: #2c2f2f;
        width: 100%;
        height: 100%;
        opacity: 0; }
      @media screen and (min-width: 48em) {
        .panel a .image, .panel a .video-play {
          margin: 0 0 20px 0; }
          .panel a .image > img, .panel a .video-play > img {
            -ms-transform: scale(1.002);
                transform: scale(1.002); } }
    .panel a img {
      margin: 0;
      width: 100%;
      height: auto;
      font-size: 0;
      backface-visibility: hidden; }
    .panel a h2 {
      font-family: "Heuristica";
      font-size: 1.25em;
      line-height: 1.3em;
      font-weight: 300;
      transition: none; }
    .panel a p {
      transition: none; }
    .panel a:hover, .panel a:focus {
      /*
            @include breakpoint(large) {
                h2,
                p {
                    color: $color-green-anc;
                    text-decoration: none;
                }
            }
            */ }
      .panel a:hover h2, .panel a:hover p, .panel a:focus h2, .panel a:focus p {
        color: #000; }
      .panel a:hover .image:before, .panel a:hover .video-play:before, .panel a:focus .image:before, .panel a:focus .video-play:before {
        opacity: .33; }
      .panel a:hover .image > img, .panel a:hover .video-play > img, .panel a:focus .image > img, .panel a:focus .video-play > img {
        -ms-transform: scale(1.033);
            transform: scale(1.033); }
    .panel a.video-play .video-icon {
      z-index: 2;
      width: 46px;
      height: 46px;
      background-color: #00e862;
      background-color: rgba(0, 232, 98, 0.85);
      border-radius: 50%;
      position: absolute;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
      transition: background-color .3s; }
      .panel a.video-play .video-icon:after {
        content: "";
        font-family: 'WesfarmersIcons';
        font-size: 30px;
        color: #fff;
        line-height: 0;
        display: block;
        position: absolute;
        top: 50%;
        left: 53%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        transition: color .3s; }
    .panel a.video-play:hover .video-icon {
      z-index: 9999; }
  @media screen and (min-width: 30em) {
    .panel > a:first-child {
      margin-top: 30px; } }
  @media screen and (min-width: 48em) {
    .panel > a:first-child {
      margin-top: 0; } }
  .panel .copy {
    padding: 10px 20px; }
    @media screen and (min-width: 30em) {
      .panel .copy {
        padding: 0; } }
    @media screen and (min-width: 64em) {
      .panel .copy {
        padding: 0 0 20px 0; } }
    .panel .copy p:last-of-type {
      margin-bottom: 0; }
  .panel a, .panel a p, .panel a:hover p, .panel a:focus p {
    transition: none; }

.leadership-panel {
  margin-bottom: 40px; }
  .leadership-panel:before {
    content: "";
    display: table;
    clear: both; }
  .leadership-panel:after {
    content: "";
    display: table;
    clear: both; }
  .leadership-panel .image {
    position: relative;
    width: 40%;
    float: left;
    background-color: #2c2f2f; }
  @media screen and (min-width: 30em) {
    .leadership-panel > a:first-child {
      margin-top: 30px; } }
  @media screen and (min-width: 48em) {
    .leadership-panel > a:first-child {
      margin-top: 0; } }
  .leadership-panel .copy {
    position: relative;
    width: 60%;
    float: right;
    border-bottom: 1px solid #cacbcb;
    margin-left: 50px; }
    @media screen and (min-width: 30em) {
      .leadership-panel .copy {
        padding: 0; } }

.split-copy-panels .panel .copy:before {
  content: "";
  display: table;
  clear: both; }

.split-copy-panels .panel .copy:after {
  content: "";
  display: table;
  clear: both; }

.split-copy-panels .panel .copy h2 {
  font-family: "Heuristica Bold";
  font-size: 1.125em;
  margin-top: 0; }
  @media screen and (min-width: 30em) {
    .split-copy-panels .panel .copy h2 {
      margin-top: 10px; } }
  @media screen and (min-width: 64em) {
    .split-copy-panels .panel .copy h2 {
      margin-top: 0;
      margin-bottom: 0; } }
  @media screen and (min-width: 90em) {
    .split-copy-panels .panel .copy h2 {
      float: left;
      max-width: 49%;
      font-size: 1.25em; } }

.split-copy-panels .panel .copy p {
  position: relative;
  font-family: "Heuristica";
  font-size: 1em; }
  @media screen and (min-width: 90em) {
    .split-copy-panels .panel .copy p {
      float: right;
      max-width: 48.5%;
      font-size: 1.0625em;
      min-height: 74px;
      text-overflow: ellipsis; } }

.related-panels {
  margin-bottom: 20px; }
  @media screen and (min-width: 48em) {
    .related-panels {
      padding: 0 30px; }
      .related-panels .columns {
        padding-left: 15px;
        padding-right: 15px; } }
  @media screen and (min-width: 64em) {
    .related-panels {
      margin-bottom: 40px;
      padding: 0 100px; } }
  @media screen and (min-width: 80em) {
    .related-panels {
      max-width: none !important;
      margin-bottom: 40px;
      padding: 0; } }
  .related-panels .related-panel {
    border-top: solid 7px #00e862;
    padding-top: 15px; }
    .related-panels .related-panel h2 {
      font-size: 1.375em; }
    .related-panels .related-panel p {
      font-size: 1.0625em; }
    .related-panels .related-panel a {
      font-size: 0.82353em;
      font-family: "Heuristica Italic"; }

@media screen and (min-width: 48em) {
  .featured > .row {
    -ms-flex-flow: row;
        flex-flow: row;
    margin-left: -0.75rem;
    margin-right: -0.75rem; }
    .featured > .row .column, .featured > .row .columns {
      padding-left: 0.75rem;
      padding-right: 0.75rem; } }

.grey .panel a .image:before,
.grey .panel a .video-play:before {
  background-color: #2c2f2f; }

.panel.exc-grey a .image:before,
.panel.exc-grey a .video-play:before {
  display: none !important; }

.investor-centre .tile-links h2, .investor-centre .debt-investors h2, .investor-centre .sustainability-links h2 {
  font-family: "Stolzl W00 Bold";
  font-size: 1.125em;
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #2c2f2f;
  font-weight: normal; }

.investor-centre .wrapper {
  padding: 20px; }

@media screen and (min-width: 30em) {
  .investor-centre .wrapper {
    padding: 15px; }
  .investor-centre .grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    flex-flow: row wrap; }
    .investor-centre .grid > .share-promo,
    .investor-centre .grid > .debt-investors,
    .investor-centre .grid > .news-list {
      -moz-flex: 1 100%;
      -ms-flex: 1 100%;
      -o-flex: 1 100%;
      flex: 1 100%; }
    .investor-centre .grid > .tile-links {
      -moz-flex: 1 50%;
      -ms-flex: 1 50%;
      -o-flex: 1 50%;
      flex: 1 50%; } }

@media screen and (min-width: 30em) {
  .investor-centre .wrapper {
    padding: 30px; } }

@media screen and (min-width: 80em) {
  .investor-centre .wrapper {
    padding: 40px; }
  .investor-centre .grid {
    -ms-flex-flow: row;
    -o-flex-flow: row;
    flex-flow: row; }
    .investor-centre .grid > .share-promo {
      -moz-flex: 1 20%;
      -ms-flex: 1 20%;
      -o-flex: 1 20%;
      flex: 1 20%;
      -ms-flex-order: 1;
          order: 1; }
    .investor-centre .grid > .tile-links {
      -moz-flex: 0 38%;
      -ms-flex: 0 38%;
      -o-flex: 0 38%;
      flex: 0 38%;
      -ms-flex-order: 4;
          order: 4; }
    .investor-centre .grid > .debt-investors {
      position: absolute;
      bottom: 0;
      left: 55px;
      width: 18%;
      max-width: 246px; }
    .investor-centre .grid > .news-list {
      position: absolute;
      top: 286px;
      left: 55px;
      width: 18%;
      max-width: 246px; } }

@media screen and (min-width: 80em) {
  .investor-centre .wrapper {
    padding: 55px 55px 0 55px; } }

#investor-centre #main .investor-centre .row,
#investor-centre #main .investors .row {
  max-width: 100em;
  background-color: #fff; }

@media screen and (min-width: 80em) {
  #investor-centre {
    background-color: #2c2f2f; } }

@media screen and (min-width: 48em) {
  #investor-centre #main .investors {
    margin-bottom: 0;
    border: none; }
    #investor-centre #main .investors .page-intro {
      margin-bottom: 0;
      border-bottom: 6px solid #00e862; } }

.investor-centre .share-promo {
  margin: 20px auto;
  max-width: 420px; }
  .investor-centre .share-promo > a:hover, .investor-centre .share-promo > a:focus {
    text-decoration: none; }
    .investor-centre .share-promo > a:hover .stock-price > span, .investor-centre .share-promo > a:focus .stock-price > span {
      color: #00e862; }
  .investor-centre .share-promo h2 {
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #2c2f2f;
    font-weight: normal;
    text-align: left;
    margin-bottom: 0; }
  .investor-centre .share-promo .share-price {
    position: relative;
    padding: 0; }
    .investor-centre .share-promo .share-price .stock-price > span {
      font-size: 65px;
      margin-bottom: 0; }
    .investor-centre .share-promo .share-price .stock-index > span {
      font-size: 1.625em;
      padding-left: 20px;
      padding-right: 20px;
      color: #2c2f2f !important; }
      .investor-centre .share-promo .share-price .stock-index > span:first-of-type {
        padding-left: 10px;
        padding-bottom: 8px; }
    .investor-centre .share-promo .share-price .stock-index > i {
      font-size: 1.375em;
      color: #2c2f2f !important;
      margin-top: 5px;
      width: 30px;
      height: 30px;
      padding-left: 10px; }
    .investor-centre .share-promo .share-price .stock-updated-list {
      padding: 10px 0 5px;
      border-top: 1px solid #00e862;
      border-bottom: 1px solid #00e862; }
      .investor-centre .share-promo .share-price .stock-updated-list > li {
        font-family: "Stolzl W00 Book";
        font-size: 0.75em;
        line-height: .9;
        letter-spacing: 0.0375em;
        text-transform: uppercase;
        color: #646464;
        font-weight: normal;
        padding-bottom: 4px; }
        .investor-centre .share-promo .share-price .stock-updated-list > li > span {
          display: inline-block;
          min-width: 85px; }
    .investor-centre .share-promo .share-price .stock-wrapper {
      border: none; }
  @media screen and (min-width: 30em) {
    .investor-centre .share-promo {
      max-width: 420px; }
      .investor-centre .share-promo .share-price .stock-updated-list > li {
        font-size: 0.78125em; } }
  @media screen and (min-width: 48em) and (max-width: 79.9375em) {
    .investor-centre .share-promo {
      max-width: none;
      margin: 20px auto;
      padding: 0; }
      .investor-centre .share-promo:before {
        content: "";
        display: table;
        clear: both; }
      .investor-centre .share-promo:after {
        content: "";
        display: table;
        clear: both; }
      .investor-centre .share-promo h2 {
        display: block;
        -moz-flex: 0 100%;
        -ms-flex: 0 100%;
        -o-flex: 0 100%;
        flex: 0 100%;
        padding-bottom: 0;
        max-width: 768px;
        margin: 0 auto; }
      .investor-centre .share-promo .share-price {
        max-width: 768px;
        left: 50%;
        -ms-transform: translate(-50%);
        transform: translate(-50%);
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row;
        -o-flex-flow: row;
        flex-flow: row;
        border-bottom: 7px solid #00e862;
        padding: 20px 0;
        margin-right: 0;
        margin-left: 0; }
        .investor-centre .share-promo .share-price:before {
          content: "";
          display: table;
          clear: both; }
        .investor-centre .share-promo .share-price:after {
          content: "";
          display: table;
          clear: both; }
        .investor-centre .share-promo .share-price .stock-price {
          -moz-flex: 1 33.33333%;
          -ms-flex: 1 33.33333%;
          -o-flex: 1 33.33333%;
          flex: 1 33.33333%; }
          .investor-centre .share-promo .share-price .stock-price > span {
            border: none;
            text-align: left;
            padding-left: 0;
            padding-right: 0;
            line-height: .9; }
        .investor-centre .share-promo .share-price .stock-wrapper {
          -moz-flex: 0 66.66666%;
          -ms-flex: 0 66.66666%;
          -o-flex: 0 66.66666%;
          flex: 0 66.66666%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-flow: row;
          -o-flex-flow: row;
          flex-flow: row;
          border: none; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-index {
            -moz-flex: 0 35%;
            -ms-flex: 0 35%;
            -o-flex: 0 35%;
            flex: 0 35%; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-index {
            -ms-transform: none;
                transform: none;
            left: 0;
            padding: 0 0 0 10px;
            border-left: 1px solid #00e862; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > i {
              position: absolute; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span,
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span:first-of-type {
              display: block;
              padding-left: 40px;
              padding-bottom: 5px;
              padding-right: 25px;
              border: none; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list {
            -moz-flex: 65%;
            -ms-flex: 65%;
            -o-flex: 65%;
            flex: 65%;
            border: none;
            border-left: 1px solid #00e862;
            padding: 0 0 0 25px; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list > li {
              padding-bottom: 10px; }
              .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list > li:last-child {
                padding-bottom: 0; } }
  @media screen and (min-width: 80em) {
    .investor-centre .share-promo {
      margin: 0; }
      .investor-centre .share-promo .share-price {
        max-width: 246px; }
        .investor-centre .share-promo .share-price .stock-price > span {
          font-size: 3.4375em; }
        .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span {
          font-size: 1.125em;
          padding-bottom: 0; }
        .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > i {
          font-size: 18px;
          height: 20px; }
        .investor-centre .share-promo .share-price .stock-updated-list > li {
          font-size: 0.6875em; }
          .investor-centre .share-promo .share-price .stock-updated-list > li > span:first-child {
            min-width: 75px; } }

.announcement-bar {
  position: relative;
  width: 100%;
  background-color: #00e862;
  overflow: hidden;
  /* add override to prevent margin buffer */ }
  .announcement-bar p,
  .announcement-bar a {
    color: #000; }
  .announcement-bar p {
    text-align: center;
    padding: 8px 20px 4px; }
  .announcement-bar a {
    text-decoration: underline;
    /*
        transition:color .3s;
        &:hover, &:focus {
        	color:#fff;
        }
        */ }
    .announcement-bar a:hover, .announcement-bar a:focus {
      color: #000; }
  .announcement-bar .wysiwyg > .wysiwyg-inner:first-child {
    margin-top: 0; }
  @media screen and (min-width: 48em) {
    .announcement-bar {
      border-bottom: 10px solid #00e862;
      border-left: 10px solid #00e862;
      border-right: 10px solid #00e862; }
      .announcement-bar p {
        display: inline-block;
        width: auto;
        margin: 0;
        padding: 8px 20px 8px;
        position: relative;
        left: 50%;
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
        z-index: 2;
        font-size: 0.96875em;
        background-color: #00e862; }
        .announcement-bar p:after, .announcement-bar p:before {
          content: '';
          position: absolute;
          display: block; }
        .announcement-bar p:before {
          top: 0;
          left: -50px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 0 0 72px 54px;
          border-color: transparent transparent #00e862 transparent; }
        .announcement-bar p:after {
          bottom: 0;
          right: -52px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 72px 54px 0 0;
          border-color: #00e862 transparent transparent transparent; }
      .announcement-bar:before {
        background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI5NUM4NzczMDJCRTExRTY5RTU1RDg3QzIwNkY5QTkyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI5NUM4Nzc0MDJCRTExRTY5RTU1RDg3QzIwNkY5QTkyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Qjk1Qzg3NzEwMkJFMTFFNjlFNTVEODdDMjA2RjlBOTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Qjk1Qzg3NzIwMkJFMTFFNjlFNTVEODdDMjA2RjlBOTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5BrT4mAAAB+ElEQVR42uzb3U3DAAxFYeoFmKfdAAamGzAPsEBIHnhBKk1Dfo7tY8kPeYv0SZEi33sahuGp8ZzHvY77DHiXr3FfQgwOxrjvIQYHY3oIMTgYHUHQGN1A8BidQFJgdAFJg9EBJBVGdZB0GJVBSBifczGqgtAwXudiVARJjVENJD1GJZASGFVAymBUACmFkR2kHEZmkJIYWUHKYmQEKY2RDaQ8RiaQFhhZQNpgZABphUEHaYdBBmmJQQVpi0EEaY1BA2mPQQIRAwQiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAgYgBArmIwQGZMN7EYICIAQIRAwQiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAzWkYhg8xMHOeQAYxGBjjXkMMDsb0pQoxOBh//amLcQDGkSBi3MixhRgcjCNAxLiT8AwxOBh7gogxM/scYnAw9gAR48FWQIjBwdgSRIyFFY0QYzOMRSeNEIODsTaIGCsc+0IMDsZaIGKseAYPMTgY/wURY4OASIjBwVgKIsaG0akQg4PxKIgYO4QKQwwOxlwQMXaM24YYHIx7IGIcEEQPMTgYt0DEOLCiEWJwMH6DiAEoL4UYHIwfEDFAtb6pQXURg9Ox/BZgAOUXORxGy4aaAAAAAElFTkSuQmCC");
        background-size: 6px auto;
        content: '';
        position: absolute;
        top: 3px;
        left: -10%;
        z-index: 1;
        display: block;
        width: 120%;
        height: 100%;
        opacity: .75;
        -ms-transform: skewX(15deg);
            transform: skewX(15deg); } }

.investor-centre .tile-links:before {
  content: "";
  display: table;
  clear: both; }

.investor-centre .tile-links:after {
  content: "";
  display: table;
  clear: both; }

.investor-centre .tile-links h2 {
  margin-top: 30px;
  line-height: 1.1; }

.investor-centre .tile-links ul > li,
.investor-centre .tile-links ul > li > a {
  font-family: "Stolzl W00 Book";
  font-size: 1em;
  line-height: 1.3;
  letter-spacing: 0; }

.investor-centre .tile-links ul > li > a {
  display: block;
  position: relative;
  padding: 15px;
  background-color: #eaeaea;
  transition: background-color .4s;
  margin-bottom: 10px;
  overflow: hidden; }

.investor-centre .tile-links ul > li:hover > a {
  color: #000;
  background-color: #00e862;
  text-decoration: none; }

@media screen and (min-width: 30em) {
  .investor-centre .tile-links ul > li > a {
    position: relative;
    min-height: 80px;
    font-size: 1.125em; }
    .investor-centre .tile-links ul > li > a > span {
      position: absolute;
      display: block;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .investor-centre .tile-links.lt ul {
    margin-right: 15px; }
  .investor-centre .tile-links.rt ul {
    margin-left: 15px; }
  .investor-centre .tile-links.rt h2 {
    margin-left: 20px; } }

@media screen and (min-width: 64em) {
  .investor-centre .tile-links h2 {
    min-height: 34px;
    margin-bottom: 5px; }
  .investor-centre .tile-links ul {
    margin: 0 -5px;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    flex-flow: row wrap; }
    .investor-centre .tile-links ul > li {
      -moz-flex: 0 50%;
      -ms-flex: 0 50%;
      -o-flex: 0 50%;
      flex: 0 50%;
      position: relative; }
      .investor-centre .tile-links ul > li:after {
        content: "";
        font-family: 'WesfarmersIcons';
        font-size: 22px;
        color: #00e862;
        display: block;
        position: absolute;
        z-index: 5;
        right: 12px;
        bottom: 7px;
        transition: color .4s; }
      .investor-centre .tile-links ul > li > a {
        margin: 5px;
        min-height: 120px;
        font-size: 1.125em; }
        .investor-centre .tile-links ul > li > a > span {
          position: relative;
          top: auto;
          -ms-transform: none;
              transform: none; }
        .investor-centre .tile-links ul > li > a:after, .investor-centre .tile-links ul > li > a:before {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          content: '';
          width: 100%;
          height: 100%;
          background: url(../img/tile-triangle.svg) no-repeat;
          -ms-background-size: 100% 120px;
          background-size: 100% 120px;
          transition: background-position .8s ease-in-out, opacity .3s; }
        .investor-centre .tile-links ul > li > a:after {
          opacity: .2; }
        .investor-centre .tile-links ul > li > a:before {
          opacity: 0;
          background-position: 0 -122px;
          -ms-transform: scale(-1);
              transform: scale(-1); }
      .investor-centre .tile-links ul > li:hover:after, .investor-centre .tile-links ul > li:focus:after {
        color: #fff; }
      .investor-centre .tile-links ul > li:hover > a, .investor-centre .tile-links ul > li:focus > a {
        background-color: #13d563; }
        .investor-centre .tile-links ul > li:hover > a:after, .investor-centre .tile-links ul > li:focus > a:after {
          opacity: 0;
          background-position: 0 -122px; }
        .investor-centre .tile-links ul > li:hover > a:before, .investor-centre .tile-links ul > li:focus > a:before {
          opacity: .05;
          background-position: 0 0; } }

@media screen and (min-width: 80em) {
  .investor-centre .tile-links h2 {
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 1.75em; }
  .investor-centre .tile-links ul > li > a {
    margin: 5px;
    min-height: 140px;
    font-size: 1.1875em; }
    .investor-centre .tile-links ul > li > a:before, .investor-centre .tile-links ul > li > a:after {
      background-size: 100% 140px; }
    .investor-centre .tile-links ul > li > a:before {
      background-position: 0 -140px; }
  .investor-centre .tile-links ul > li:hover > a:after, .investor-centre .tile-links ul > li:focus > a:after {
    background-position: 0 -140px; }
  .investor-centre .tile-links ul > li:hover > a:before, .investor-centre .tile-links ul > li:focus > a:before {
    background-position: 0 0; } }

@media screen and (min-width: 90em) {
  .investor-centre .tile-links h2 {
    margin-top: -5px;
    margin-bottom: 55px;
    font-size: 2em; }
  .investor-centre .tile-links ul > li > a {
    font-size: 1.25em; }
  .investor-centre .tile-links.lt {
    position: relative; }
    .investor-centre .tile-links.lt:before, .investor-centre .tile-links.lt:after {
      content: '';
      position: absolute;
      display: block;
      width: 1px;
      height: 100%;
      height: calc(100% - 5px);
      background-color: #cacbcb;
      top: 0; }
    .investor-centre .tile-links.lt:before {
      left: -30px; }
    .investor-centre .tile-links.lt:after {
      right: -10px; }
  .investor-centre .tile-links ul {
    margin-right: 32px; }
  .investor-centre .tile-links.rt ul {
    margin-left: 32px; }
  .investor-centre .tile-links.rt h2 {
    margin-left: 38px; } }

@media screen and (min-width: 118.75em) {
  .investor-centre .tile-links ul > li > a {
    font-size: 1.375em; } }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .investor-centre .tile-links article {
    margin-left: 0;
    margin-right: 0; } }

.investor-centre .debt-investors {
  border-top: 1px solid #00e862;
  border-bottom: 1px solid #00e862;
  padding: 15px 0;
  margin-top: 30px; }
  .investor-centre .debt-investors .wysiwyg > div {
    margin: 0; }
  .investor-centre .debt-investors:before {
    content: "";
    display: table;
    clear: both; }
  .investor-centre .debt-investors:after {
    content: "";
    display: table;
    clear: both; }
  .investor-centre .debt-investors h2 {
    display: block;
    position: relative;
    margin: 0;
    transition: color .3s; }
    .investor-centre .debt-investors h2:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 22px;
      color: #00e862;
      display: block;
      position: absolute;
      right: 10px;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
    .investor-centre .debt-investors h2:hover, .investor-centre .debt-investors h2:focus {
      color: #00cf57; }
  @media screen and (min-width: 30em) and (max-width: 79.9375em) {
    .investor-centre .debt-investors h2:after {
      position: relative;
      display: inline-block;
      right: auto;
      -ms-transform: none;
          transform: none;
      top: 0;
      padding-left: 5px; } }
  @media screen and (min-width: 80em) {
    .investor-centre .debt-investors {
      margin-bottom: 5px; } }

.investor-centre .news-list:before {
  content: "";
  display: table;
  clear: both; }

.investor-centre .news-list:after {
  content: "";
  display: table;
  clear: both; }

.investor-centre .news-list h2 {
  font-family: "Stolzl W00 Medium";
  font-size: 0.8125em;
  line-height: .9;
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  color: #2c2f2f; }

.investor-centre .news-list .date-time {
  font-family: "Stolzl W00 Book";
  font-size: 0.8125em;
  line-height: .9;
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  color: #646464;
  font-weight: normal; }

.investor-centre .news-list h2 {
  margin-top: 50px; }

.investor-centre .news-list > .wrapper {
  padding: 0; }
  .investor-centre .news-list > .wrapper .item {
    margin-bottom: 20px; }
    .investor-centre .news-list > .wrapper .item .date-time {
      font-family: "Stolzl W00 Medium";
      margin-bottom: 10px; }
    .investor-centre .news-list > .wrapper .item p:not(:first-child) {
      font-size: 1.0625em; }

@media screen and (min-width: 48em) and (max-width: 79.9375em) {
  .investor-centre .news-list {
    margin-bottom: 0; }
    .investor-centre .news-list .wrapper {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: row;
      -o-flex-flow: row;
      flex-flow: row;
      margin: 0 -1.25rem;
      padding: 0;
      max-width: 100em; }
      .investor-centre .news-list .wrapper > .item {
        -moz-flex: 1 33.3333%;
        -ms-flex: 1 33.3333%;
        -o-flex: 1 33.3333%;
        flex: 1 33.3333%;
        padding: 0 1.25rem;
        margin-bottom: 0; } }

@media screen and (min-width: 80em) {
  .investor-centre .news-list {
    margin-bottom: 0; }
    .investor-centre .news-list h2 {
      margin-top: 0; }
    .investor-centre .news-list .wrapper {
      display: block; }
      .investor-centre .news-list .wrapper > .item {
        width: 100%;
        max-height: 62px;
        overflow: hidden;
        margin-bottom: 10px; }
        .investor-centre .news-list .wrapper > .item p:not(:first-child) {
          font-size: 0.9375em; } }

.featured {
  padding-top: 0;
  margin-top: 10px;
  border-top: 1px solid #cacbcb; }
  .featured > h2 {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    display: block;
    padding-top: 10px; }
  @media screen and (min-width: 30em) {
    .featured {
      border: none; }
      .featured > h2 {
        border-top: 1px solid #cacbcb; } }

@media screen and (min-width: 0\0) {
  .featured {
    width: 100%; }
    .featured .row .column, .featured .row .columns {
      width: 100%; } }

@media screen and (min-width: 0\0) and (min-width: 30em) {
  .investor-centre .grid {
    width: 100%; }
  .announcement-bar p {
    display: block; } }

@media screen and (min-width: 0\0) and (min-width: 48em) and (max-width: 79.9375em) {
  .share-promo .share-price .stock-index {
    padding-right: 30px !important; } }

@media screen and (min-width: 0\0) and (min-width: 80em) {
  .investor-centre .grid {
    width: 100%; }
    .investor-centre .grid > .share-promo {
      width: 20%; }
    .investor-centre .grid > .tile-links {
      width: 38%; }
  .featured .row .column, .featured .row .columns {
    width: 33%; } }

body.careers #main {
  position: relative;
  font-family: "Avenir"; }
  body.careers #main .to-top-button {
    position: fixed;
    right: 30px;
    bottom: 30px;
    cursor: pointer;
    z-index: 20; }
    @media (max-width: 767px) {
      body.careers #main .to-top-button {
        display: none; } }
    body.careers #main .to-top-button.mobile {
      display: none;
      right: 10px;
      bottom: 10px; }
      @media (max-width: 767px) {
        body.careers #main .to-top-button.mobile {
          display: block; } }
  body.careers #main section:first-of-type {
    padding-top: 50px; }
  body.careers #main .careers-sect-1 {
    padding-bottom: 50px; }
    body.careers #main .careers-sect-1 .content-sect-1 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-1 .content-sect-1 {
          -ms-flex-order: 1;
              order: 1; } }
    @media (max-width: 1023px) {
      body.careers #main .careers-sect-1 img {
        width: 75%;
        position: relative;
        bottom: -30px;
        right: -58px;
        margin-bottom: 10px; } }
    @media (max-width: 1023px) {
      body.careers #main .careers-sect-1 {
        padding-top: 0 !important; } }
  body.careers #main .careers-sect-2 {
    display: -ms-flexbox;
    display: flex;
    position: relative; }
    @media (max-width: 1023px) {
      body.careers #main .careers-sect-2 {
        -ms-flex-direction: column;
            flex-direction: column; } }
    body.careers #main .careers-sect-2 .sect-2-main-img {
      width: 100%;
      display: block;
      height: 750px;
      object-fit: cover; }
      @media (max-width: 1439px) {
        body.careers #main .careers-sect-2 .sect-2-main-img {
          height: auto; } }
    body.careers #main .careers-sect-2 .desktop-view {
      display: -ms-flexbox;
      display: flex; }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-2 .desktop-view {
          display: none; } }
    body.careers #main .careers-sect-2 .sect-2-content {
      position: absolute;
      width: 100%;
      top: 50%;
      left: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
      body.careers #main .careers-sect-2 .sect-2-content .glass-bg {
        padding: 40px 70px;
        background: rgba(0, 0, 0, 0.4); }
        body.careers #main .careers-sect-2 .sect-2-content .glass-bg .quote-text {
          font-size: 24px;
          line-height: 2rem;
          margin-bottom: 20px;
          position: relative; }
          body.careers #main .careers-sect-2 .sect-2-content .glass-bg .quote-text:before {
            position: absolute;
            content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/quote-icon.png);
            left: -45px;
            top: -15px; }
          body.careers #main .careers-sect-2 .sect-2-content .glass-bg .quote-text:after {
            position: absolute;
            content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/end-quote-icon.png);
            bottom: -25px;
            right: -37px; }
        @media (max-width: 1023px) {
          body.careers #main .careers-sect-2 .sect-2-content .glass-bg {
            background: none;
            padding: 20px; } }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-2 .sect-2-content {
          position: relative;
          top: 0;
          left: 0;
          -ms-transform: none;
              transform: none;
          background: #0E0E0E; } }
  body.careers #main .careers-sect-3 {
    padding: 100px 0;
    background: #F8F8F8; }
    body.careers #main .careers-sect-3 .card {
      background: white;
      border-radius: 30px;
      padding: 40px;
      height: 350px;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: justify;
          justify-content: space-between; }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-3 .card {
          height: auto; } }
  body.careers #main .careers-sect-4 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    padding: 50px 0; }
    body.careers #main .careers-sect-4 .video-wrapper .bg-image {
      border-radius: 30px; }
    body.careers #main .careers-sect-4 .video-wrapper .video-desc {
      border-radius: 0 0 30px 30px; }
  body.careers #main .careers-sect-5 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    padding: 100px 0;
    position: relative; }
    @media (max-width: 767px) {
      body.careers #main .careers-sect-5 {
        padding: 50px 0;
        -ms-flex-direction: column;
            flex-direction: column; } }
    body.careers #main .careers-sect-5 .content-sect-5 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      @media (max-width: 767px) {
        body.careers #main .careers-sect-5 .content-sect-5 {
          -ms-flex-order: 1;
              order: 1; } }
    body.careers #main .careers-sect-5 > img {
      position: absolute;
      border-radius: 30px 0 0 30px;
      height: 550px;
      width: 46%;
      right: 0;
      top: 50px;
      object-fit: cover; }
      @media (max-width: 767px) {
        body.careers #main .careers-sect-5 > img {
          position: relative;
          width: 90%;
          height: auto;
          top: 0;
          -ms-flex-item-align: end;
              align-self: flex-end;
          margin-bottom: 30px; } }
  body.careers #main .careers-sect-6 {
    background: #2D2F2F;
    padding: 50px 0 50px; }
    body.careers #main .careers-sect-6 .talent-swiper {
      padding-top: 50px; }
      body.careers #main .careers-sect-6 .talent-swiper .swiper-button-next, body.careers #main .careers-sect-6 .talent-swiper .swiper-button-prev {
        bottom: auto;
        top: 25px;
        border: 1px solid #474A4A;
        background: #1B1C1C;
        color: #fff !important;
        opacity: 1 !important;
        cursor: pointer !important;
        pointer-events: auto !important; }
    body.careers #main .careers-sect-6 .tab-content p {
      color: #fff; }
    body.careers #main .careers-sect-6 .card {
      cursor: pointer; }
      body.careers #main .careers-sect-6 .card.swiper-slide-active img {
        opacity: 1 !important; }
      body.careers #main .careers-sect-6 .card.swiper-slide-active .talent-name {
        color: #fff; }
      body.careers #main .careers-sect-6 .card.swiper-slide img {
        opacity: 0.5; }
      body.careers #main .careers-sect-6 .card .talent-img {
        height: auto;
        width: 100%;
        object-fit: cover;
        border-radius: 20px; }
      body.careers #main .careers-sect-6 .card .talent-name {
        text-transform: uppercase;
        color: #A1A2A2; }
      body.careers #main .careers-sect-6 .card .talent-position {
        text-transform: uppercase;
        color: #676868; }
  body.careers #main .careers-sect-7 {
    padding: 100px 0; }
    body.careers #main .careers-sect-7 .content-sect-7 {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      @media (max-width: 767px) {
        body.careers #main .careers-sect-7 .content-sect-7 {
          -ms-flex-order: 1;
              order: 1; } }
    body.careers #main .careers-sect-7 .card {
      border: 1px solid #EDEDED;
      padding: 30px;
      transition: 0.3s;
      height: 275px;
      margin-bottom: 30px; }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-7 .card {
          height: 350px; } }
      body.careers #main .careers-sect-7 .card li {
        list-style-type: circle; }
      body.careers #main .careers-sect-7 .card:hover {
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);
        border: none;
        border-top: 10px solid #079B3A; }
  body.careers #main .careers-sect-8 {
    padding: 100px 0;
    background: #F8F8F8;
    position: relative; }
    @media (max-width: 767px) {
      body.careers #main .careers-sect-8 {
        padding: 50px 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column; } }
    body.careers #main .careers-sect-8 > img {
      position: absolute;
      border-radius: 0 30px 30px 0;
      left: 0;
      top: -50px;
      height: 448px;
      width: 46%;
      object-fit: cover; }
      @media (max-width: 767px) {
        body.careers #main .careers-sect-8 > img {
          position: relative;
          -ms-flex-item-align: start;
              align-self: flex-start;
          width: 90%;
          height: 250px;
          top: 0;
          margin-bottom: 30px; } }
  body.careers #main .careers-sect-9 {
    padding: 50px 0; }
    body.careers #main .careers-sect-9 .card {
      border: 1px solid #EDEDED;
      padding: 30px;
      transition: 0.3s;
      height: 275px;
      margin-bottom: 30px; }
      @media (max-width: 1023px) {
        body.careers #main .careers-sect-9 .card {
          height: 350px; } }
      body.careers #main .careers-sect-9 .card li {
        list-style-type: circle; }
      body.careers #main .careers-sect-9 .card:hover {
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);
        border: none;
        border-top: 10px solid #079B3A; }
  body.careers #main .careers-sect-10 {
    background: #F8F8F8;
    padding: 50px 0; }
    body.careers #main .careers-sect-10 .blog-swiper {
      padding: 50px 0 !important;
      margin: 0 20px !important; }
      body.careers #main .careers-sect-10 .blog-swiper .blog-swiper-button-prev,
      body.careers #main .careers-sect-10 .blog-swiper .blog-swiper-button-next {
        bottom: auto !important;
        top: 25px !important;
        pointer-events: auto !important;
        opacity: 1 !important;
        cursor: pointer !important; }

body.careers.careers-detail-sticky header .hero {
  position: absolute;
  top: 150px;
  right: 0;
  width: 43%; }
  body.careers.careers-detail-sticky header .hero .primary-button {
    transition: none !important; }
  body.careers.careers-detail-sticky header .hero:hover .primary-button {
    transition: all 150ms ease-in-out !important; }
  body.careers.careers-detail-sticky header .hero.overlay {
    opacity: 0.35; }
    body.careers.careers-detail-sticky header .hero.overlay .primary-button {
      background: #B4B5B5;
      border-color: #B4B5B5 !important; }
  body.careers.careers-detail-sticky header .hero .main-img {
    height: 450px;
    width: 100%;
    object-fit: cover;
    border-radius: 0 0 0 30px;
    margin-bottom: 30px; }
    @media (max-width: 1279px) {
      body.careers.careers-detail-sticky header .hero .main-img {
        height: auto; } }
  @media (max-width: 1439px) {
    body.careers.careers-detail-sticky header .hero {
      top: 134px; } }
  @media (max-width: 1279px) {
    body.careers.careers-detail-sticky header .hero {
      top: 90px; } }
  @media (max-width: 767px) {
    body.careers.careers-detail-sticky header .hero {
      display: none; } }

body.careers.careers-detail-sticky section {
  padding-bottom: 100px; }

body.careers.careers-detail-sticky .fixed-button {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #F8F8F8;
  padding: 20px;
  display: none;
  -ms-flex-pack: center;
      justify-content: center;
  font-family: "Avenir";
  z-index: 10; }
  body.careers.careers-detail-sticky .fixed-button a {
    position: relative; }
    body.careers.careers-detail-sticky .fixed-button a:after {
      content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/arrow.png);
      position: absolute;
      right: -20px;
      top: 50%;
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
  @media (max-width: 767px) {
    body.careers.careers-detail-sticky .fixed-button {
      display: -ms-flexbox;
      display: flex; } }

body.careers.careers-detail-sticky .main-img-mobile {
  display: none !important; }
  @media (max-width: 767px) {
    body.careers.careers-detail-sticky .main-img-mobile {
      display: block !important;
      width: 100%;
      height: auto;
      margin-bottom: 30px; } }

body.careers.careers-detail-sticky .author-wrapper .author-name-wrapper {
  display: -ms-flexbox !important;
  display: flex !important; }

body.careers.careers-detail-fullwidth-img .hero .main-img {
  width: 100%;
  height: 750px;
  object-fit: cover; }
  @media (max-width: 1023px) {
    body.careers.careers-detail-fullwidth-img .hero .main-img {
      height: auto; } }

body.careers.careers-detail-fullwidth-img .careers-detail-content {
  max-width: 700px;
  margin: 0 auto;
  padding: 30px 0; }
  @media (max-width: 767px) {
    body.careers.careers-detail-fullwidth-img .careers-detail-content {
      padding: 30px 20px; } }

body.careers.careers-detail-fullwidth-img .card {
  border: 1px solid #EDEDED;
  padding: 30px;
  transition: 0.3s;
  height: 250px;
  margin-bottom: 30px; }
  body.careers.careers-detail-fullwidth-img .card li {
    list-style-type: circle; }
  body.careers.careers-detail-fullwidth-img .card:hover {
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);
    border: none;
    border-top: 10px solid #079B3A; }

body.careers.careers-detail-tab .hero .main-img {
  width: 100%;
  height: 750px;
  object-fit: cover; }
  @media (max-width: 1023px) {
    body.careers.careers-detail-tab .hero .main-img {
      height: auto; } }

body.careers.careers-detail-tab .content-tabs-wrapper {
  padding: 100px 0;
  background: #F8F8F8;
  position: relative; }
  body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li {
    list-style-type: circle;
    margin-bottom: 30px;
    position: relative;
    color: #7E7E7E;
    font-size: 24px;
    cursor: pointer;
    width: 90%; }
    body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li::marker {
      color: #079B3A; }
    body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li.active {
      color: #0F0E0E; }
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li.active:after {
        content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/arrow-hover-big.png);
        position: absolute;
        right: -15px;
        top: 50%;
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%); }
      @media (max-width: 767px) {
        body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li.active {
          background: #fff; }
          body.careers.careers-detail-tab .content-tabs-wrapper .tab-options li.active:after {
            content: ""; } }
  @media (max-width: 767px) {
    body.careers.careers-detail-tab .content-tabs-wrapper .tab-options {
      display: none; } }
  body.careers.careers-detail-tab .content-tabs-wrapper .tab-swiper {
    display: none;
    padding-bottom: 0 !important; }
    @media (max-width: 767px) {
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-swiper {
        display: block; } }
    body.careers.careers-detail-tab .content-tabs-wrapper .tab-swiper .tab {
      border-radius: 4px;
      padding: 20px; }
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-swiper .tab h4 {
        margin-bottom: 0; }
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-swiper .tab.swiper-slide-active {
        background: white; }
  body.careers.careers-detail-tab .content-tabs-wrapper .tab-contents {
    position: absolute;
    top: -50px;
    right: 0;
    width: 49%;
    padding: 75px 50px;
    background: #fff;
    border-radius: 30px 0 0 30px;
    height: 450px; }
    body.careers.careers-detail-tab .content-tabs-wrapper .tab-contents .tab-content-icon {
      height: 40px; }
    @media (max-width: 1199px) {
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-contents {
        height: auto; } }
    @media (max-width: 767px) {
      body.careers.careers-detail-tab .content-tabs-wrapper .tab-contents {
        position: relative;
        height: auto;
        top: 0;
        width: 100%;
        border-radius: 0;
        padding: 30px 20px; } }

body.careers .primary-button {
  border: 1px solid #EBEBEB;
  background: #fff;
  color: #079B3A;
  padding: 12px 40px 10px 10px;
  border-radius: 4px;
  position: relative;
  font-family: "Avenir";
  text-transform: uppercase; }
  body.careers .primary-button:after {
    content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/arrow.png);
    position: absolute;
    right: 15px;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
  body.careers .primary-button:hover {
    color: #fff;
    background-color: #079B3A;
    border-color: #079B3A; }
    body.careers .primary-button:hover:after {
      content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/arrow-hover.png); }
  @media (max-width: 767px) {
    body.careers .primary-button {
      width: 100%; } }

body.careers .blog-tile {
  border-radius: 30px;
  background: #fff;
  transition: 0.3s;
  margin-bottom: 40px; }
  body.careers .blog-tile:hover {
    box-shadow: 0 13px 30px rgba(0, 0, 0, 0.16); }
  body.careers .blog-tile .blog-img {
    width: 100%;
    height: auto;
    border-radius: 30px 30px 0 0;
    object-fit: cover;
    max-height: 280px; }
    @media (max-width: 1023px) {
      body.careers .blog-tile .blog-img {
        height: 150px; } }
  body.careers .blog-tile .blog-tile-wrapper {
    padding: 20px; }
    body.careers .blog-tile .blog-tile-wrapper ul li {
      color: #079B3A;
      list-style-type: circle; }
    body.careers .blog-tile .blog-tile-wrapper p {
      height: 50px;
      overflow: hidden;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical; }
    body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-pack: justify;
          justify-content: space-between;
      -ms-flex-align: center;
          align-items: center; }
      @media (max-width: 1023px) {
        body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper {
          -ms-flex-pack: start;
              justify-content: flex-start;
          -ms-flex-align: start;
              align-items: flex-start;
          -ms-flex-direction: column;
              flex-direction: column; } }
      body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper .author-wrapper .author-name-wrapper .author-position {
        font-size: 11px !important;
        max-width: 230px !important; }
        @media (max-width: 1439px) {
          body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper .author-wrapper .author-name-wrapper .author-position {
            max-width: 185px !important; } }
      body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper .blog-url {
        color: #079B3A;
        padding-right: 25px;
        position: relative; }
        @media (max-width: 1023px) {
          body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper .blog-url {
            margin-top: 20px;
            -ms-flex-item-align: end;
                align-self: flex-end; } }
        body.careers .blog-tile .blog-tile-wrapper .blog-tile-bottom-wrapper .blog-url:after {
          content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/arrow.png);
          position: absolute;
          right: 0; }

body.careers h1, body.careers h2, body.careers h3, body.careers h4, body.careers h5, body.careers h6 {
  font-family: "Avenir"; }

body.careers h3 {
  font-weight: 400;
  line-height: 1.3em; }

body.careers p, body.careers span {
  font-family: "Avenir Light"; }

body.careers .video-wrapper {
  position: relative; }
  body.careers .video-wrapper.small {
    width: 70px;
    height: 70px; }
    body.careers .video-wrapper.small .play-button-wrapper {
      width: 70px;
      height: 70px; }
  body.careers .video-wrapper .play-button-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    cursor: pointer;
    /* padding: 20px; */
    background: rgba(255, 255, 255, 0.28);
    width: 100px;
    height: 100px;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    border-radius: 50%;
    transition: 0.2s;
    border: 1px solid #ffffff; }
    @media (max-width: 767px) {
      body.careers .video-wrapper .play-button-wrapper {
        width: 60px;
        height: 60px; } }
    body.careers .video-wrapper .play-button-wrapper.tablet-view {
      display: none; }
      @media (max-width: 1023px) {
        body.careers .video-wrapper .play-button-wrapper.tablet-view {
          display: -ms-flexbox;
          display: flex; } }
    body.careers .video-wrapper .play-button-wrapper:hover {
      background: #079B3A !important;
      border-color: #079B3A !important; }
    body.careers .video-wrapper .play-button-wrapper img {
      position: relative;
      left: 3px; }
  body.careers .video-wrapper .video-desc {
    height: 10%;
    font-family: "Avenir";
    background: linear-gradient(0, rgba(0, 0, 0, 0.8), transparent);
    width: 100%;
    padding: 0 30px 0 50px;
    color: #d8d8d8;
    position: absolute;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    bottom: 0;
    left: 0; }
    body.careers .video-wrapper .video-desc:before {
      content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/video-info.png);
      position: absolute;
      left: 15px; }
    @media (max-width: 767px) {
      body.careers .video-wrapper .video-desc {
        height: 50px;
        font-size: 12px; } }
  body.careers .video-wrapper .bg-image {
    width: 100%; }

body.careers .author-wrapper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  body.careers .author-wrapper .author-img {
    width: 40px;
    height: 40px;
    margin-right: 10px;
    border: 2px solid white;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 50%;
    object-fit: cover; }
  body.careers .author-wrapper .author-name-wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column; }
    body.careers .author-wrapper .author-name-wrapper .author-name {
      font-weight: bold;
      font-size: 14px;
      margin-bottom: 4px; }
    body.careers .author-wrapper .author-name-wrapper .author-position {
      text-transform: uppercase;
      font-size: 12px;
      font-weight: 400; }

body.careers .pointer {
  cursor: pointer; }

body.careers .at-share-btn-elements {
  display: -ms-flexbox !important;
  display: flex !important; }

body.careers .at-share-btn {
  height: 30px;
  width: 30px;
  border-radius: 50% !important;
  border: 1px solid #EBEBEB;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center; }

body.careers .reveal-overlay {
  background-color: #000 !important;
  z-index: 99999 !important; }
  body.careers .reveal-overlay:after {
    content: url(/ResourcePackages/Wesfarmers/assets/dist/img/careers/close-icon.png);
    width: 30px;
    height: 30px;
    position: absolute;
    color: white;
    right: 50px;
    top: 50px;
    cursor: pointer; }

body.careers .reveal {
  background-color: transparent !important;
  border: transparent !important;
  width: 100% !important; }
  @media (max-width: 479px) {
    body.careers .reveal {
      top: 130px !important;
      width: auto;
      height: auto;
      min-height: auto; } }

body.careers .close-button {
  font-size: 3em !important; }

body.careers .close-button:hover, body.careers .close-button:focus {
  color: #8a8a8a !important; }

body.careers .subtitle {
  width: 75%; }
  @media (max-width: 767px) {
    body.careers .subtitle {
      width: 100%; } }

body.careers .w-100 {
  width: 100%; }

@media (max-width: 767px) {
  body.careers .share-button-wrapper {
    display: none !important; } }

body.careers .share-button-wrapper-mobile {
  display: none !important; }
  @media (max-width: 767px) {
    body.careers .share-button-wrapper-mobile {
      display: block !important;
      margin-top: 20px; } }

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

body.careers .text-bold {
  font-family: "Avenir Bold" !important; }

body.careers .text-light {
  font-family: "Avenir Light" !important; }

body.careers .d-flex {
  display: -ms-flexbox;
  display: flex; }

body.careers .flex-column {
  -ms-flex-direction: column;
      flex-direction: column; }

body.careers .align-items-base {
  -ms-flex-align: baseline;
      align-items: baseline; }

@media (max-width: 767px) {
  body.careers .flex-column-mobile {
    -ms-flex-direction: column;
        flex-direction: column; } }

body.careers .order-1 {
  -ms-flex-order: 1;
      order: 1; }

body.careers .order-2 {
  -ms-flex-order: 2;
      order: 2; }

body.careers .justify-center {
  -ms-flex-pack: center;
      justify-content: center; }

body.careers .align-items-center {
  -ms-flex-align: center;
      align-items: center; }

body.careers .justify-between {
  -ms-flex-pack: justify;
      justify-content: space-between; }

body.careers .d-block {
  display: block; }

body.careers .mr-none-mobile {
  margin-right: 0; }

body.careers .mr-10 {
  margin-right: 10px; }

body.careers .mr-20 {
  margin-right: 20px; }

body.careers .mb-10 {
  margin-bottom: 10px; }

@media (max-width: 767px) {
  body.careers .mb-10-mobile {
    margin-bottom: 10px; } }

body.careers .mb-20 {
  margin-bottom: 20px; }

body.careers .mb-30 {
  margin-bottom: 30px; }

body.careers .mb-40 {
  margin-bottom: 40px; }

body.careers .mb-50 {
  margin-bottom: 50px; }

body.careers .mt-10 {
  margin-top: 10px; }

body.careers .mt-20 {
  margin-top: 20px; }

body.careers .mt-30 {
  margin-top: 30px; }

body.careers .pt-30 {
  padding-top: 30px; }

body.careers .text-white {
  color: #fff; }

body.careers .text-green {
  color: #079B3A; }

body.careers .text-uppercase {
  text-transform: uppercase; }

body.careers .card ul li {
  font-weight: bold; }
  body.careers .card ul li::marker {
    color: #079B3A; }

body.careers .useful-page {
  margin-top: 20px; }

body.careers .swiper-container-horizontal > .swiper-pagination-bullets, body.careers .swiper-pagination-custom, body.careers .swiper-pagination-fraction {
  bottom: 23px; }

body.careers .swiper-container {
  padding-bottom: 30px; }

body.careers .swiper-button-next, body.careers .swiper-button-prev {
  color: #079B3A !important;
  bottom: 12px;
  top: auto;
  border: 1px solid #EBEBEB;
  width: auto;
  padding: 10px 12px;
  height: auto; }

body.careers .swiper-button-prev, body.careers .swiper-container-rtl .swiper-button-next {
  right: 40px;
  left: auto; }

body.careers .swiper-button-next, body.careers .swiper-container-rtl .swiper-button-prev {
  right: 0;
  left: auto; }

body.careers .swiper-button-next:after, body.careers .swiper-button-prev:after {
  font-size: 12px !important;
  font-weight: bold !important; }

body.careers .swiper-pagination-bullet-active {
  background: #079B3A !important; }

#careers-corporate .grey-panel {
  margin: 0;
  border-bottom: 1px solid #3c3e3e; }
  #careers-corporate .grey-panel > .large-collapse {
    margin-top: 0;
    margin-bottom: 0; }

.quote-intro {
  margin: 0 auto;
  padding-bottom: 25px; }

.career-panels .arrow-link-right {
  font-family: "Stolzl W00 Bold";
  padding-right: 25px;
  margin-top: 15px;
  color: #fff;
  display: inline-block;
  position: relative;
  margin: 0;
  transition: color .3s;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.875em;
  letter-spacing: 0.01875em; }
  .career-panels .arrow-link-right:after {
    content: "";
    font-family: 'WesfarmersIcons';
    font-size: 20px;
    color: #00e862;
    display: block;
    position: absolute;
    right: 0px;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%); }

.career-panels a:hover .arrow-link-right, .career-panels a:focus .arrow-link-right {
  color: #00e862; }

.career-panels {
  margin-top: 20px; }
  .career-panels .career-panel {
    margin: 0 auto;
    padding: 20px 0;
    position: relative; }
    .career-panels .career-panel a > .title > h2 {
      display: block;
      font-family: "Stolzl W00 Bold";
      font-size: 1.125em;
      line-height: 1;
      text-transform: uppercase;
      margin-top: 10px; }

@media screen and (min-width: 48em) {
  .career-panels .career-panel {
    position: relative;
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
    .career-panels .career-panel a > .title {
      position: absolute;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
      width: 40%; }
      .career-panels .career-panel a > .title > h2 {
        padding: 15px 20px;
        background-color: #00e862;
        font-size: 1.5em;
        color: #2c2f2f; }
      .career-panels .career-panel a > .title > .arrow-link-right {
        position: absolute;
        bottom: -20px;
        padding: 10px 20px; } }

@media screen and (min-width: 64em) {
  .career-panels .career-panel {
    display: inline-block; }
    .career-panels .career-panel a > .title > h2 {
      padding: 36px 20px;
      background-color: #00e862;
      font-size: 1.875em;
      color: #2c2f2f; }
    .career-panels .career-panel a > .title > .arrow-link-right {
      position: absolute;
      bottom: -20px;
      padding: 10px 20px; } }

@media screen and (min-width: 90em) {
  .career-panels .career-panel a > .title {
    width: 42%; }
    .career-panels .career-panel a > .title > h2 {
      font-size: 2.25em; }
    .career-panels .career-panel a > .title > .arrow-link-right {
      font-size: 1em; } }

@media screen and (min-width: 118.75em) {
  .career-panels {
    margin-top: 80px;
    margin-bottom: 60px; } }

.main .careers .columns {
  margin: 0 auto; }

.careers + .grey-panel {
  margin-bottom: 0; }

.careers-panel {
  border-top: 1px solid #cacbcb;
  padding-top: 35px; }

.highlight-panel.grey-panel {
  margin-top: 0;
  background-color: #2c2f2f;
  color: #cacbcb;
  position: relative; }
  @media screen and (min-width: 48em) {
    .highlight-panel.grey-panel {
      padding-top: 3.125em; } }
  .highlight-panel.grey-panel h2:first-of-type {
    margin-top: 30px;
    color: #00e862;
    font-weight: bold; }
  .highlight-panel.grey-panel h3,
  .highlight-panel.grey-panel h4,
  .highlight-panel.grey-panel h5,
  .highlight-panel.grey-panel h6 {
    color: #eaeaea; }
  .highlight-panel.grey-panel .columns {
    z-index: 200; }
  .highlight-panel.grey-panel:after {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    content: '';
    width: 50%;
    height: 100%;
    z-index: 100;
    background: url(../img/stroke-svg.svg) no-repeat;
    background-size: cover; }

@media screen and (max-width: 48em) {
  .highlight-panel.grey-panel .row:first-of-type {
    margin-top: 0; } }

@media screen and (min-width: 64em) {
  .content-page .wysiwyg {
    padding-left: 0;
    padding-right: 0; }
  article {
    margin-left: 0;
    margin-right: 0; } }

@media screen and (min-width: 90em) {
  .highlight-panel.grey-panel h2:first-of-type {
    margin-top: 50px; } }

.list-image-copy {
  margin-bottom: 40px; }
  @media screen and (min-width: 90em) {
    .list-image-copy {
      margin-left: 6.25em; } }
  .list-image-copy .panel {
    border: none;
    margin: 40px auto;
    max-width: 450px; }
    @media screen and (min-width: 48em) {
      .list-image-copy .panel {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row;
            flex-flow: row;
        max-width: 1100px;
        margin-left: 0;
        margin-right: 0; } }
    @media screen and (min-width: 64em) {
      .list-image-copy .panel {
        margin: 40px 3.125em; } }
    @media screen and (min-width: 90em) {
      .list-image-copy .panel {
        margin-left: auto;
        margin-right: auto; } }
    .list-image-copy .panel .image > img {
      display: block; }
    @media screen and (min-width: 48em) {
      .list-image-copy .panel .image {
        -ms-flex: 1 1 50%;
            flex: 1 1 50%;
        padding-right: 1.25em;
        max-width: 450px; } }
    @media screen and (min-width: 90em) {
      .list-image-copy .panel .image {
        padding-right: 2.5em; } }
    .list-image-copy .panel .copy {
      border: none;
      padding: 20px 0 1.25rem;
      font-size: 0.96875em;
      padding-top: 20px; }
      .list-image-copy .panel .copy a.more-link {
        display: inline-block;
        white-space: nowrap;
        text-decoration: underline;
        display: inline;
        color: #616363;
        margin: 0; }
      .list-image-copy .panel .copy h2 {
        margin-bottom: 10px; }
      .list-image-copy .panel .copy h3 {
        color: #2c2f2f;
        font-family: 'Heuristica';
        font-weight: normal;
        font-size: 1.125em; }
      .list-image-copy .panel .copy p {
        color: #616363; }
      @media screen and (min-width: 30em) {
        .list-image-copy .panel .copy {
          margin-left: auto;
          margin-right: auto;
          padding-left: 0;
          padding-right: 0; } }
      @media screen and (min-width: 48em) {
        .list-image-copy .panel .copy {
          display: -ms-flexbox;
          display: flex;
          -ms-flex: 1 1 50%;
              flex: 1 1 50%;
          padding-left: 1.25em;
          border-bottom: #cacbcb 1px solid; } }
      @media screen and (min-width: 64em) {
        .list-image-copy .panel .copy {
          position: relative; }
          .list-image-copy .panel .copy h3 {
            font-size: 1.1875em;
            margin-bottom: 30px; }
          .list-image-copy .panel .copy > .wrapper {
            max-height: none;
            min-height: 0;
            min-height: auto;
            margin-bottom: 40px;
            margin-right: auto;
            margin: initial;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-direction: column;
                flex-direction: column;
            -ms-flex-pack: end;
                justify-content: flex-end; } }
      @media screen and (min-width: 80em) {
        .list-image-copy .panel .copy > .wrapper {
          padding-right: 1.25em;
          padding-left: 1.25em; }
        .list-image-copy .panel .copy h3 {
          font-size: 1.25em;
          line-height: 1.2em;
          margin-bottom: 35px; }
        .list-image-copy .panel .copy p {
          color: #616363; } }

.profile.detail .image {
  margin: 0 auto 25px;
  width: 235px; }

.our-businesses .page-intro > .wysiwyg {
  padding-bottom: 0; }

.our-businesses .wrapper {
  padding: 0 20px 20px;
  margin-bottom: 55px; }
  .our-businesses .wrapper .row-group {
    margin: 40px -10px 0;
    margin-left: -10px;
    margin-right: -10px; }
    .our-businesses .wrapper .row-group > .wysiwyg {
      width: 100%;
      padding-bottom: 0;
      margin-top: 0; }
    .our-businesses .wrapper .row-group h3 {
      display: block;
      font-family: 'Stolzl W00 Medium';
      font-size: 1.0625em;
      text-transform: uppercase;
      text-align: center;
      border-top: 1px solid #cacbcb;
      padding-top: 20px;
      margin: 0 0 20px; }
      .our-businesses .wrapper .row-group h3 a {
        text-decoration: none; }
        .our-businesses .wrapper .row-group h3 a:after {
          content: "";
          font-family: 'WesfarmersIcons';
          font-size: 1.0625em;
          color: #00e862;
          padding-left: 10px; }
        .our-businesses .wrapper .row-group h3 a:hover, .our-businesses .wrapper .row-group h3 a:focus, .our-businesses .wrapper .row-group h3 a:active {
          text-decoration: none; }
          .our-businesses .wrapper .row-group h3 a:hover:after, .our-businesses .wrapper .row-group h3 a:focus:after, .our-businesses .wrapper .row-group h3 a:active:after {
            color: #0B8651; }
    .our-businesses .wrapper .row-group .columns {
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
      max-width: 50%; }
      .our-businesses .wrapper .row-group .columns > .panel {
        margin: 10px;
        min-height: inherit;
        height: auto !important; }
    .our-businesses .wrapper .row-group .row-header {
      -ms-flex: 1 1 100%;
          flex: 1 1 100%;
      max-width: 100%; }
      .our-businesses .wrapper .row-group .row-header .panel .image {
        max-width: 50%;
        margin: 0 auto;
        min-height: inherit;
        height: auto !important; }

.our-businesses .wrapper:first-of-type {
  margin-bottom: 0; }

@media screen and (min-width: 30em) {
  .our-businesses .page-intro > .wysiwyg {
    padding-bottom: 0; }
  .our-businesses .wrapper .row-group .columns {
    -ms-flex: 0 0 33.3333%;
        flex: 0 0 33.3333%;
    max-width: 33.3333%;
    padding-left: 0;
    padding-right: 0; }
  .our-businesses .wrapper .row-group .row-header {
    -ms-flex: 1 1 100% !important;
        flex: 1 1 100% !important;
    max-width: 100%; }
    .our-businesses .wrapper .row-group .row-header .panel .image {
      max-width: 220px;
      margin: 0;
      min-height: inherit;
      height: auto !important; }
  .our-businesses .wrapper .row-group h3 {
    text-align: left; } }

@media screen and (min-width: 48em) {
  .our-businesses .page-intro > .wysiwyg {
    padding-bottom: 0; }
  .our-businesses .wrapper .row-group {
    margin-top: 0;
    padding: 0 30px; }
    .our-businesses .wrapper .row-group .columns {
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
      max-width: 25%;
      padding-left: 0;
      padding-right: 0; }
      .our-businesses .wrapper .row-group .columns .wysiwyg {
        padding-bottom: 0; }
    .our-businesses .wrapper .row-group .row-header {
      -ms-flex: 1 1 100% !important;
          flex: 1 1 100% !important;
      max-width: 100% !important; }
      .our-businesses .wrapper .row-group .row-header .panel .image {
        max-width: 220px;
        min-height: inherit;
        height: auto !important; }
    .our-businesses .wrapper .row-group h3,
    .our-businesses .wrapper .row-group:first-child h3 {
      display: block;
      padding-top: 20px;
      margin: 20px 10px 20px;
      text-align: left;
      border-top: 1px solid #cacbcb; }
    .our-businesses .wrapper .row-group:first-child h3 {
      margin-top: 0px; } }

@media screen and (min-width: 64em) {
  .our-businesses .row-group .wysiwyg {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
    margin-left: 0;
    margin-right: 0; }
  .our-businesses .wrapper .row-group .columns {
    -ms-flex: 0 0 20%;
        flex: 0 0 20%;
    max-width: 20%;
    padding-left: 0;
    padding-right: 0; }
    .our-businesses .wrapper .row-group .columns .wysiwyg {
      padding-bottom: 0; }
  .our-businesses .wrapper .row-group h3 {
    font-size: 1.1875em; } }

@media screen and (min-width: 80em) {
  .our-businesses .wrapper {
    padding: 55px 55px 0 55px;
    margin-bottom: 100px; }
    .our-businesses .wrapper .row-group {
      margin-left: auto;
      margin-right: auto; }
      .our-businesses .wrapper .row-group .columns {
        -ms-flex: 0 0 16.6666%;
            flex: 0 0 16.6666%;
        max-width: 16.6666%;
        padding-left: 0;
        padding-right: 0; }
  .our-businesses .wrapper:first-of-type {
    margin-bottom: 20px; } }

@media screen and (min-width: 90em) {
  .our-businesses .wrapper .row-group h3 {
    font-size: 1.375em; } }

@media screen and (min-width: 90em) {
  .our-businesses .wrapper .row-group h3 {
    margin-top: 25px;
    font-size: 1.5em; } }

@media screen and (min-width: 118.75em) {
  .our-businesses .wrapper .row-group h3 {
    margin-top: 40px; } }

.our-businesses h3 {
  display: block;
  width: 100%;
  padding: 0;
  margin: 35px 0 55px 0; }

.our-businesses .panel {
  border-bottom: none;
  margin-bottom: 0; }

.our-businesses .featured {
  padding-top: 0;
  margin-top: 10px;
  border-top: 1px solid #cacbcb; }
  .our-businesses .featured h2 {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    display: block;
    padding-top: 10px; }
  @media screen and (min-width: 30em) {
    .our-businesses .featured {
      border: none; }
      .our-businesses .featured h2 {
        border-top: 1px solid #cacbcb; } }

@media screen and (min-width: 30em) and (max-width: 47.9375em) {
  .our-businesses {
    margin: 0 10px; } }

@media screen and (min-width: 0\0) {
  .featured {
    width: 100%; }
    .featured .row .column, .featured .row .columns {
      width: 100%; } }

@media screen and (min-width: 0\0) and (min-width: 30em) {
  .our-businesses .grid {
    width: 100%; } }

@media screen and (min-width: 0\0) and (min-width: 48em) and (max-width: 79.9375em) {
  .share-promo .share-price .stock-index {
    padding-right: 30px !important; } }

@media screen and (min-width: 0\0) and (min-width: 80em) {
  .our-businesses .grid {
    width: 100%; }
    .our-businesses .grid .share-promo {
      width: 20%; }
    .our-businesses .grid .tile-links {
      width: 38%; }
  .featured .row .column, .featured .row .columns {
    width: 33%; } }

@media screen and (min-width: 48em) {
  .our-divisions article.wysiwyg {
    padding-left: 0;
    padding-right: 0; } }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .our-divisions article.wysiwyg {
    margin-left: 0;
    margin-right: 0; } }

.our-divisions .page-intro {
  margin-bottom: 0; }

.our-divisions .intro-para {
  padding: 20px 0 0 0;
  /* @include breakpoint(large) {
			//padding: 50px 100px 0 100px;
			padding: 50px 0 0 0;
		}

		@include breakpoint(xlarge) { 
			padding: 50px 0 0 0;			
		} */ }
  @media screen and (min-width: 48em) {
    .our-divisions .intro-para {
      padding: 50px 0 0 0; } }

.our-divisions .biz-group {
  text-align: left;
  margin-top: 20px;
  border-top: 12px solid #eaeaea; }
  .our-divisions .biz-group:first-child {
    margin-top: 0; }
  .our-divisions .biz-group .panel {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0; }
  .our-divisions .biz-group:last-child {
    padding-bottom: 40px; }
    @media screen and (min-width: 64em) {
      .our-divisions .biz-group:last-child {
        padding-bottom: 60px; } }
    @media screen and (min-width: 80em) {
      .our-divisions .biz-group:last-child {
        padding-bottom: 90px; } }
    @media screen and (min-width: 90em) {
      .our-divisions .biz-group:last-child {
        padding-bottom: 130px; } }

.our-divisions .biz-item {
  padding: 10px 0 45px 0; }
  .our-divisions .biz-item:before {
    content: "";
    display: table;
    clear: both; }
  .our-divisions .biz-item:after {
    content: "";
    display: table;
    clear: both; }
  .our-divisions .biz-item h3 {
    width: 100%;
    display: block;
    margin-top: 20px; }
  .our-divisions .biz-item p {
    width: 100%;
    float: left;
    padding-right: 0; }
    @media screen and (min-width: 48em) {
      .our-divisions .biz-item p {
        width: 50%;
        float: left;
        padding-right: 25px; } }
    @media screen and (min-width: 64em) {
      .our-divisions .biz-item p {
        width: 50%;
        position: relative;
        float: left; } }
  .our-divisions .biz-item .biz-logo {
    width: 100%;
    float: left;
    text-align: left; }
    @media screen and (min-width: 48em) {
      .our-divisions .biz-item .biz-logo {
        width: 50%;
        float: right;
        text-align: right; } }
    .our-divisions .biz-item .biz-logo img {
      -ms-transform: none;
          transform: none; }
  .our-divisions .biz-item a {
    width: 100%;
    position: relative;
    float: left;
    margin: 0;
    padding: 0;
    color: #616363;
    text-decoration: none;
    text-transform: uppercase;
    text-align: left;
    font-family: "Stolzl W00 Book";
    font-size: 0.875em; }
    @media screen and (min-width: 64em) {
      .our-divisions .biz-item a {
        padding-top: 25px;
        font-size: 0.75em; } }
    .our-divisions .biz-item a:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 1.25em;
      color: #00e862;
      margin: 0;
      padding-left: 15px; }
      @media screen and (min-width: 64em) {
        .our-divisions .biz-item a:after {
          content: "";
          font-family: 'WesfarmersIcons';
          font-size: 1.125em;
          color: #00e862; } }
    .our-divisions .biz-item a:hover, .our-divisions .biz-item a:active {
      text-decoration: none;
      color: #2c2f2f; }
      .our-divisions .biz-item a:hover:after, .our-divisions .biz-item a:active:after {
        color: #0B8651; }
    @media screen and (min-width: 48em) {
      .our-divisions .biz-item a {
        text-align: right; } }

@media screen and (min-width: 0\0) and (min-width: 48em) and (max-width: 63.9375em) {
  .our-divisions .intro-para {
    padding: 50px 0 0 0; } }

.asx-announce .page-intro {
  margin-bottom: 0; }

.asx-announce .columns {
  margin: 0 auto;
  padding-left: 0;
  padding-right: 0; }
  @media screen and (min-width: 48em) {
    .asx-announce .columns {
      padding-left: 1.25rem;
      padding-right: 1.25rem; } }

.asx-announce .asx-header {
  position: relative;
  display: block;
  width: 100%;
  height: 65px; }
  .asx-announce .asx-header h2 {
    display: inline;
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    padding: 15px 0;
    margin: 0; }

.asx-announce .asx-results {
  padding-bottom: 55px; }

@media screen and (min-width: 48em) {
  .asx-announce .date-group li {
    display: table-row; }
  .asx-announce .date-group li > span {
    display: table-cell;
    padding-right: 2.1875em; }
  .asx-announce .date-group li > a {
    display: table-cell; } }

.asx-announce button {
  display: inline;
  position: absolute;
  right: 0;
  top: 0;
  font-family: "Stolzl W00 Bold";
  background: none;
  color: #2c2f2f;
  cursor: pointer;
  text-align: left;
  text-transform: uppercase;
  margin: 0;
  padding: 15px 7px;
  outline: none;
  border: 1px solid transparent;
  width: 150px; }
  @media screen and (min-width: 48em) {
    .asx-announce button {
      padding: 25px 7px;
      border: 1px solid #2c2f2f; } }
  .asx-announce button:after {
    content: '\e804';
    font-family: 'WesfarmersIcons';
    font-size: 0.875em;
    color: #2c2f2f;
    display: block;
    text-align: center;
    position: absolute;
    top: 50%;
    right: 0;
    width: 30px;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    transition: all 150ms ease-in-out;
    -ms-transform-origin: 50% 50% 0;
        transform-origin: 50% 50% 0;
    transition: 0.5s all;
    line-height: 0; }
  .asx-announce button.active:after {
    -ms-transform: rotate(180deg);
    transform: rotate(180deg); }
  .asx-announce button:hover, .asx-announce button:focus {
    color: #2c2f2f;
    background-color: transparent; }

.asx-announce .dropdown-pane {
  display: inline-block;
  padding: 0;
  margin: 0;
  width: 150px;
  border: none; }
  @media screen and (min-width: 48em) {
    .asx-announce .dropdown-pane {
      width: 150px; } }
  @media screen and (min-width: 64em) {
    .asx-announce .dropdown-pane {
      width: 150px; } }
  .asx-announce .dropdown-pane ul {
    list-style: none;
    margin: 0;
    margin-top: -1px;
    font-size: 0.875em;
    border: 1px solid #363a45; }
    .asx-announce .dropdown-pane ul li {
      font-family: "Heuristica";
      border-bottom: 1px solid #363a45;
      padding: 0;
      margin: 0; }
      .asx-announce .dropdown-pane ul li:last-child {
        border-bottom: none; }
      .asx-announce .dropdown-pane ul li a {
        display: block;
        width: 100%;
        padding: 10px 7px;
        color: #363a45; }
        .asx-announce .dropdown-pane ul li a:hover, .asx-announce .dropdown-pane ul li a:active {
          font-weight: bold; }

@media screen and (max-width: 30em) {
  .asx-announce .dropdown-pane {
    width: 100%; } }

article .list-links {
  list-style: none;
  margin: 0 0 30px 0; }
  article .list-links > li {
    padding: 0; }
    article .list-links > li > a {
      display: block;
      padding: 8px 0; }
      article .list-links > li > a > span {
        font-size: 0.8125em;
        color: #616363; }
      article .list-links > li > a:hover {
        text-decoration: underline;
        color: #000; }

article > .list-links:first-of-type {
  border-top: 1px solid #2c2f2f; }

article > .accordion .list-list:list-links {
  border-top: none; }

.contact > .row {
  padding-top: 35px; }

.contact .hq-details p {
  margin-bottom: 0;
  line-height: 1.6em;
  margin-bottom: 15px;
  line-height: 1.45em; }
  @media screen and (min-width: 48em) {
    .contact .hq-details p {
      margin-bottom: 0;
      line-height: 1.45em; } }
  @media screen and (min-width: 64em) {
    .contact .hq-details p {
      line-height: 1.6em; } }

@media screen and (min-width: 64em) {
  .contact .hq-details .row .column .wysiwyg, .contact .hq-details .row .columns .wysiwyg {
    padding-left: 0;
    padding-right: 0; } }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .contact .hq-details .row .column .wysiwyg, .contact .hq-details .row .columns .wysiwyg {
    margin-left: 0;
    margin-right: 0; } }

.contact .hq-details .wysiwyg {
  padding-bottom: 0; }
  @media screen and (min-width: 48em) {
    .contact .hq-details .wysiwyg {
      padding-bottom: 0; } }

.contact .hero {
  margin: 45px 0 0 0;
  padding: 0;
  margin: 20px 0 0 0; }
  @media screen and (min-width: 48em) {
    .contact .hero {
      margin: 45px 0 0 0; } }
  .contact .hero .jump-link {
    margin: 0 auto;
    margin-bottom: 50px; }
    .contact .hero .jump-link > a {
      position: relative;
      text-decoration: none; }
      .contact .hero .jump-link > a:hover {
        color: #2c2f2f; }
      .contact .hero .jump-link > a:after {
        position: absolute;
        top: 0;
        left: calc(50% - 14px);
        margin-top: 20px;
        font-size: 1.75em;
        text-align: center;
        content: "";
        font-family: 'WesfarmersIcons';
        font-size: 14;
        color: #00e862;
        text-decoration: none; }
      .contact .hero .jump-link > a > span {
        text-decoration: underline; }
        .contact .hero .jump-link > a > span:hover, .contact .hero .jump-link > a > span:focus, .contact .hero .jump-link > a > span:active {
          color: #2c2f2f;
          text-decoration: underline; }

.contact .send-message fieldset > div,
.contact .send-message .sf_colsIn > div {
  margin: 0;
  padding: 0;
  border: none;
  background: transparent; }

.contact .send-message label {
  font-family: "Stolzl W00 Book";
  font-size: 0.6875em;
  text-transform: uppercase;
  color: #616363;
  padding-top: 15px; }

.contact .send-message input,
.contact .send-message select {
  font-family: "Heuristica";
  outline: 0;
  border: 0;
  border-bottom: 1px solid #2c2f2f;
  letter-spacing: 0;
  padding: 0;
  margin: 0; }
  .contact .send-message input:focus,
  .contact .send-message select:focus {
    color: #616363;
    border-color: #616363; }
    .contact .send-message input:focus:after,
    .contact .send-message select:focus:after {
      border-bottom: 1px solid pink; }
  .contact .send-message input:not(:focus):invalid,
  .contact .send-message select:not(:focus):invalid {
    color: #616363;
    border-color: #616363; }

.contact .send-message select {
  background: none; }
  .contact .send-message select:after {
    content: "";
    font-family: 'WesfarmersIcons';
    font-size: 14;
    color: #616363; }

.contact .send-message .error {
  color: #ec671c; }
  .contact .send-message .error label {
    color: #ec671c; }
  .contact .send-message .error input {
    color: #ec671c;
    border-color: #ec671c; }
    .contact .send-message .error input:not(:focus) {
      color: #ec671c;
      border-color: #ec671c; }

.contact .send-message input[type='text'], .contact .send-message input[type='password'], .contact .send-message input[type='date'], .contact .send-message input[type='datetime'], .contact .send-message input[type='datetime-local'], .contact .send-message input[type='month'], .contact .send-message input[type='week'], .contact .send-message input[type='email'], .contact .send-message input[type='number'], .contact .send-message input[type='search'], .contact .send-message input[type='tel'], .contact .send-message input[type='time'], .contact .send-message input[type='url'], .contact .send-message input[type='color'], .contact .send-message textarea {
  padding: 0;
  box-shadow: none; }

.contact .send-message textarea {
  min-height: 395px;
  padding: 20px;
  margin: 0;
  margin-top: 35px;
  line-height: 1.3em; }
  @media screen and (min-width: 48em) {
    .contact .send-message textarea {
      margin-top: 0; } }

.contact .send-message .btn-submit {
  float: right;
  float: left; }
  @media screen and (min-width: 48em) {
    .contact .send-message .btn-submit {
      float: right; } }

.contact .send-message .tnc {
  font-size: 0.875em;
  line-height: 1.45em;
  padding: 35px 0; }
  .contact .send-message .tnc a {
    text-decoration: underline; }
    .contact .send-message .tnc a:hover, .contact .send-message .tnc a:focus {
      text-decoration: underline; }
  .contact .send-message .tnc input[type='checkbox'] {
    display: none; }
    .contact .send-message .tnc input[type='checkbox'] ~ span {
      display: block;
      position: relative;
      padding-left: 35px; }
    .contact .send-message .tnc input[type='checkbox'] ~ span:before {
      display: block;
      position: absolute;
      left: 0;
      top: 0;
      padding-right: .9em;
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 1.5625em;
      color: #616363; }
  .contact .send-message .tnc input[type='checkbox']:checked ~ span:before {
    padding-right: .9em;
    content: ""; }

.contact .business-contact {
  border-top: 1px solid #cacbcb;
  margin-top: 35px; }

.contact .contact-item {
  font-size: 0.75em;
  padding-top: 10px;
  padding-bottom: 20px;
  border-bottom: 1px solid #cacbcb;
  font-size: 0.875em; }
  @media screen and (min-width: 48em) {
    .contact .contact-item {
      font-size: 0.75em; } }
  .contact .contact-item:last-child {
    border-bottom: 1px solid transparent; }
  .contact .contact-item p {
    margin-bottom: 0;
    line-height: 1.4em;
    margin-bottom: 15px;
    line-height: 1.6em; }
    @media screen and (min-width: 48em) {
      .contact .contact-item p {
        margin-bottom: 0;
        line-height: 1.4em; } }
  @media screen and (min-width: 48em) {
    .contact .contact-item .columns {
      padding: 0; } }
  .contact .contact-item a {
    text-decoration: underline; }

.contact .accordion {
  margin-bottom: 60px; }

.contact .accordion-content > .row {
  margin-left: 0;
  margin-right: 0; }

.accordion {
  margin-bottom: 40px;
  border-color: transparent; }
  .accordion .accordion-item {
    list-style: none;
    padding-left: 0; }
    .accordion .accordion-item:before {
      display: none; }
    .accordion .accordion-item .accordion-title {
      position: relative;
      border-color: transparent;
      border-bottom-color: #cacbcb;
      color: #2c2f2f;
      padding: 8px 0;
      margin: 0;
      background-color: transparent;
      text-decoration: none; }
      .accordion .accordion-item .accordion-title:before {
        content: '\e804';
        font-family: 'WesfarmersIcons';
        font-size: 0.875em;
        color: #616363;
        display: block;
        text-align: center;
        position: absolute;
        top: 50%;
        right: 0;
        width: 30px;
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
        transition: all 150ms ease-in-out;
        -ms-transform-origin: 50% 50% 0;
            transform-origin: 50% 50% 0;
        transition: all 150ms ease-in-out;
        -ms-transform-origin: 50% 37% 0;
        transform-origin: 50% 37% 0;
        line-height: 0;
        margin-top: 0; }
      .accordion .accordion-item .accordion-title > h2, .accordion .accordion-item .accordion-title > h3 {
        padding: 0;
        margin: 0;
        font-family: 'Heuristica';
        font-size: 1.5em;
        font-weight: bold;
        text-decoration: none; }
    .accordion .accordion-item:hover .accordion-title, .accordion .accordion-item:focus .accordion-title {
      border-bottom-color: #2c2f2f;
      color: #2c2f2f; }
      .accordion .accordion-item:hover .accordion-title > h2, .accordion .accordion-item:hover .accordion-title > h3, .accordion .accordion-item:focus .accordion-title > h2, .accordion .accordion-item:focus .accordion-title > h3 {
        color: #2c2f2f; }
    .accordion .accordion-item.is-active .accordion-title {
      border-bottom-color: #2c2f2f; }
      .accordion .accordion-item.is-active .accordion-title:before {
        color: #2c2f2f;
        -ms-transform: rotate(180deg);
        transform: rotate(180deg); }
      .accordion .accordion-item.is-active .accordion-title > h2, .accordion .accordion-item.is-active .accordion-title > h3 {
        color: #2c2f2f; }
    .accordion .accordion-item .accordion-content .list-columns {
      list-style: none; }
      .accordion .accordion-item .accordion-content .list-columns > li {
        font-size: 0.875em;
        display: inline-block;
        margin: 0;
        padding: 10px 0;
        width: 100%;
        text-align: center; }
        .accordion .accordion-item .accordion-content .list-columns > li:before {
          display: none; }
        @media screen and (min-width: 48em) {
          .accordion .accordion-item .accordion-content .list-columns > li {
            width: 49.5555%; } }
        @media screen and (min-width: 64em) {
          .accordion .accordion-item .accordion-content .list-columns > li {
            width: 32.2222%; } }
        @media screen and (min-width: 80em) {
          .accordion .accordion-item .accordion-content .list-columns > li {
            width: 32.2222%; } }

@media screen and (min-width: 48em) {
  .accordion-content {
    font-size: 1.0em; }
    .accordion-content p {
      font-size: 1.0em; }
    .accordion-content li {
      font-size: 1.0em; } }

@media screen and (min-width: 80em) {
  .accordion .accordion-item .accordion-title > h2, .accordion .accordion-item .accordion-title > h3 {
    font-size: 1.5625em; } }

@media screen and (min-width: 90em) {
  .accordion .accordion-item .accordion-title > h2, .accordion .accordion-item .accordion-title > h3 {
    font-size: 1.625em; } }

.news-media .panel {
  position: relative;
  background-color: #eaeaea; }
  .news-media .panel.text-only > a:hover .image:before,
  .news-media .panel.text-only a:focus .image:before, .news-media .panel.twitter > a:hover .image:before,
  .news-media .panel.twitter a:focus .image:before {
    display: none; }
  .news-media .panel.text-only > a:hover .image img,
  .news-media .panel.text-only a:focus .image img, .news-media .panel.twitter > a:hover .image img,
  .news-media .panel.twitter a:focus .image img {
    -ms-transform: none;
        transform: none; }
  .news-media .panel .title {
    display: block;
    min-height: auto; }
    .news-media .panel .title > h2,
    .news-media .panel .title > h3 {
      background-color: #eaeaea;
      float: none;
      max-width: none;
      padding: 20px;
      font-family: "Stolzl W00 Bold";
      line-height: 1.1;
      letter-spacing: -0.00313em;
      text-transform: uppercase;
      margin-bottom: 0; }
  .news-media .panel .image {
    margin-bottom: 0; }
    .news-media .panel .image > img {
      display: block; }
  .news-media .panel .copy {
    padding-top: 20px;
    background-color: #fff; }
    .news-media .panel .copy p {
      float: none;
      max-width: none;
      min-height: 50px; }

.news-media .panel.top-level {
  background-color: #2c2f2f; }
  .news-media .panel.top-level .title > h2,
  .news-media .panel.top-level .title > h3 {
    color: #fff;
    background-color: #2c2f2f; }

.news-media .panel.twitter {
  position: relative; }
  .news-media .panel.twitter .image {
    display: none;
    visibility: hidden; }
  .news-media .panel.twitter .twitter-panel {
    padding: 0 20px;
    width: 100%; }
    .news-media .panel.twitter .twitter-panel .date-time {
      font-family: "Stolzl W00 Book";
      font-size: 0.8125em;
      line-height: .9;
      letter-spacing: 0.0375em;
      text-transform: uppercase;
      color: #646464;
      font-weight: normal;
      font-family: 'Stolzl W00 Medium'; }
    .news-media .panel.twitter .twitter-panel p {
      display: block;
      font-size: 0.9375em; }
      .news-media .panel.twitter .twitter-panel p > a {
        margin: 0; }

@media screen and (min-width: 48em) {
  .news-media .large-expand {
    position: relative;
    -ms-flex: 1 1 50%;
        flex: 1 1 50%;
    -ms-flex-flow: row wrap;
        flex-flow: row wrap; }
  .news-media .panel {
    background-color: transparent;
    border: none;
    margin-bottom: 30px;
    min-height: auto; }
    .news-media .panel > a {
      display: block;
      margin: 0;
      overflow: hidden;
      width: 100%;
      height: 100%;
      position: relative; }
    .news-media .panel .title {
      position: relative;
      min-height: 100px;
      padding: 0;
      background-color: #eaeaea; }
      .news-media .panel .title > h2,
      .news-media .panel .title > h3 {
        display: block;
        position: absolute;
        bottom: 0;
        background-color: transparent; }
    .news-media .panel .image {
      background-color: #eaeaea; }
    .news-media .panel.top-level .title {
      background-color: #2c2f2f; }
    .news-media .panel.twitter {
      background-color: #eaeaea; }
      .news-media .panel.twitter .twitter-panel {
        background-color: #eaeaea; }
        .news-media .panel.twitter .twitter-panel p {
          font-size: 0.875em; }
    .news-media .panel .copy {
      border-bottom: solid 2px #00e862; } }

@media screen and (min-width: 64em) {
  .news-media .large-expand {
    position: relative;
    -ms-flex: 1 1 33.3333%;
        flex: 1 1 33.3333%; }
  .news-media .panel .title {
    min-height: 130px; }
    .news-media .panel .title > h2,
    .news-media .panel .title > h3 {
      font-size: 1.3125em; } }

@media screen and (min-width: 80em) {
  .news-media .panel {
    margin-bottom: 75px; }
    .news-media .panel.text-only .title, .news-media .panel.twitter .title {
      margin-bottom: 0; }
    .news-media .panel.twitter .twitter-panel {
      position: absolute; }
    .news-media .panel.twitter .image {
      display: block; }
      .news-media .panel.twitter .image > img {
        visibility: hidden; } }

@media screen and (min-width: 90em) {
  .news-media .panel .title {
    min-height: 160px; }
    .news-media .panel .title > h2,
    .news-media .panel .title > h3 {
      font-size: 1.5625em; }
  .news-media .panel.text-only .title, .news-media .panel.twitter .title {
    margin-bottom: 0; }
  .news-media .panel.twitter .twitter-panel p {
    padding-top: 15px;
    margin-bottom: 0;
    font-size: 1em; } }

@media screen and (min-width: 118.75em) {
  .news-media .panel .title {
    min-height: 190px; }
    .news-media .panel .title > h2,
    .news-media .panel .title > h3 {
      font-size: 1.75em;
      padding-left: 29px;
      padding-right: 29px; }
  .news-media .panel.twitter .twitter-panel p {
    font-size: 1.0625em; } }

@media screen and (max-width: 30em) {
  .large-expand {
    padding-left: 0;
    padding-right: 0; }
    .large-expand .panel > a {
      margin: 0; } }

@media screen and (min-width: 48em) and (max-width: 63.9375em) {
  .news-media .panel.twitter .title > p {
    font-size: 0.9375em; } }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .news-media .panel.twitter .title > h2 {
    bottom: auto; }
  .news-media .panel.twitter .twitter-panel {
    position: absolute;
    top: 80px; }
    .news-media .panel.twitter .twitter-panel > p {
      font-size: 0.9375em; }
  .news-media .panel.twitter .image {
    display: block; } }

.quote-intro,
.quote-intro > p {
  font-family: 'Heuristica';
  text-transform: none;
  color: #2c2f2f;
  font-size: 1.125em;
  line-height: 1.2; }

.quote-intro {
  border: none;
  text-align: center;
  padding-left: 0;
  max-width: none; }
  .quote-intro > p {
    display: block;
    position: relative;
    max-width: 980px;
    margin-bottom: 20px; }
    .quote-intro > p > span {
      position: relative;
      z-index: 2; }
    .quote-intro > p > span:first-of-type,
    .quote-intro > p > span:last-of-type {
      position: relative;
      z-index: 1;
      font-family: "Stolzl W00 Bold"; }
    .quote-intro > p > span:first-of-type {
      display: inline-block;
      color: #00e862;
      font-size: 50px;
      -ms-transform: translate(28%, 14%);
          transform: translate(28%, 14%); }
    .quote-intro > p > span:last-of-type {
      color: #616363; }
  .quote-intro > b {
    display: block;
    position: relative;
    max-width: 980px;
    margin-bottom: 20px; }
  .quote-intro > b:before {
    padding-left: 75px;
    display: inline-block;
    z-index: 1;
    color: #00e862;
    font-size: 3.4375em;
    font-family: "Stolzl W00 Bold";
    -ms-transform: translate(15%, 20%);
        transform: translate(15%, 20%);
    content: "\201C"; }
  .quote-intro > b:after {
    position: relative;
    z-index: -1;
    color: #616363;
    font-family: "Stolzl W00 Bold";
    content: "\201D"; }
  .quote-intro > cite {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    font-size: 13px;
    line-height: 1.1; }
    .quote-intro > cite:before, .quote-intro > cite:after {
      display: none; }

@media screen and (min-width: 30em) {
  .quote-intro {
    font-size: 1.25em; } }

@media screen and (min-width: 48em) {
  .quote-intro {
    font-size: 1.3125em; } }

@media screen and (min-width: 80em) {
  .quote-intro {
    margin-top: 10px;
    font-size: 1.40625em; }
    .quote-intro > cite {
      font-size: 14px; } }

@media screen and (min-width: 90em) {
  .quote-intro {
    margin-top: 20px;
    font-size: 1.875em; }
    .quote-intro > p > span:first-of-type {
      font-size: 75px;
      -ms-transform: translate(30%, 14%);
          transform: translate(30%, 14%); } }

@media screen and (min-width: 118.75em) {
  .quote-intro {
    margin-top: 30px;
    font-size: 1.875em; }
    .quote-intro > p {
      margin-bottom: 35px; }
      .quote-intro > p > span:first-of-type {
        font-size: 110px;
        -ms-transform: translate(32%, 18%);
            transform: translate(32%, 18%); }
    .quote-intro > cite {
      font-size: 15px; } }

.date-group {
  border-top: 1px solid #2c2f2f;
  padding: 7px 0 30px 0; }
  .date-group h3 {
    font-family: "Stolzl W00 Medium";
    font-size: 0.875em;
    text-transform: uppercase; }
  .date-group ul {
    list-style: none;
    margin: 0;
    font-size: 1em; }
    .date-group ul > li {
      padding: 5px 0;
      line-height: 1.8em; }
      .date-group ul > li > span {
        vertical-align: top; }
      .date-group ul > li > span:first-of-type {
        display: block;
        width: 15%;
        text-align: left; }
      .date-group ul > li > a {
        color: #616363; }
        .date-group ul > li > a:hover, .date-group ul > li > a:active {
          color: #2c2f2f;
          text-decoration: underline; }
        .date-group ul > li > a > small,
        .date-group ul > li > a > span {
          font-size: 0.8125em;
          color: #616363; }

@media screen and (min-width: 48em) {
  .date-group ul > li .event-text {
    display: inline-block;
    width: 60%; }
  .date-group ul > li > span:first-of-type {
    display: inline-block; } }

@media screen and (min-width: 80em) {
  .date-group h3 {
    margin-bottom: 30px; }
  .date-group ul > li > span:first-of-type {
    display: inline-block; } }

@media screen and (min-width: 118.75em) {
  .date-group h3 {
    margin-bottom: 50px; }
  .date-group ul > li {
    font-size: 1.25em; }
    .date-group ul > li > span:first-of-type {
      display: inline-block; } }

.row-intro {
  margin-bottom: 0; }
  .row-intro p {
    padding-left: 10px;
    padding-right: 10px;
    text-align: left;
    font-size: 1em; }
  @media screen and (min-width: 48em) {
    .row-intro p {
      font-size: 1.0625em; } }
  @media screen and (min-width: 64em) {
    .row-intro p {
      font-size: 1.125em; } }
  @media screen and (min-width: 80em) {
    .row-intro p {
      font-size: 1.25em; } }
  @media screen and (min-width: 90em) {
    .row-intro {
      margin: 0 auto; }
      .row-intro p {
        font-size: 1.375em; } }
  @media screen and (min-width: 118.75em) {
    .row-intro {
      padding: 0 40px; }
      .row-intro p {
        font-size: 1.5em; } }

.feature-pods {
  max-width: 100%;
  margin: 60px 0;
  border-top: 1px solid #cacbcb; }
  .feature-pods > h2, .feature-pods > h3 {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    display: block;
    margin: 0;
    padding: 20px 0; }
  .feature-pods > h2 {
    font-family: "Stolzl W00 Light";
    font-size: 0.8125em;
    text-transform: uppercase; }
  .feature-pods > .row {
    max-width: none; }
  .feature-pods .panel > a:first-child {
    margin-top: 0; }

@media screen and (min-width: 48em) {
  .feature-pods {
    margin: 60px 0 0; } }

@media screen and (min-width: 64em) {
  .feature-pods {
    margin: 60px 6.25em 0; } }

@media screen and (min-width: 80em) {
  .feature-pods {
    margin: 90px auto 0; } }

.key-dates .date-group ul li {
  padding: 7px 0;
  border-bottom: 1px solid #cacbcb; }

.key-dates a.set-ics {
  font-family: "Stolzl W00 Medium";
  font-size: 0.75em;
  font-weight: normal;
  letter-spacing: 0.0375em;
  display: block;
  color: #969797;
  float: none;
  text-transform: uppercase;
  text-decoration: none; }
  .key-dates a.set-ics:hover {
    color: #0B8651;
    text-decoration: none; }
  @media screen and (min-width: 48em) {
    .key-dates a.set-ics {
      float: right; } }
  @media screen and (min-width: 64em) {
    .key-dates a.set-ics {
      float: right; } }

@media screen and (min-width: 48em) {
  .key-dates .date-group a.set-ics {
    font-size: 0.625em;
    float: right;
    display: inline-block; } }

@media screen and (min-width: 80em) {
  .key-dates .date-group a.set-ics {
    font-size: 0.625em;
    float: right;
    display: inline-block; } }

@media screen and (min-width: 118.75em) {
  .key-dates .date-group a.set-ics {
    float: right;
    display: inline-block; } }

.subscribe {
  /* super specific media query to add padding to content column in landscape mode */ }
  .subscribe .intro {
    padding-top: 35px; }
    @media screen and (min-width: 48em) {
      .subscribe .intro {
        padding-top: 0; } }
  .subscribe input {
    font-family: "Heuristica";
    outline: 0;
    height: auto;
    box-shadow: none;
    border: 1px solid #cacbcb;
    padding: 0;
    margin: 0; }
    .subscribe input:hover, .subscribe input:focus {
      outline: 0;
      box-shadow: none; }
  .subscribe input[type='text'], .subscribe input[type='email'] {
    padding: 30px 20px; }
  .subscribe input:invalid {
    color: #ec671c;
    border-color: #ec671c; }
  .subscribe input:focus:invalid {
    color: #616363;
    border-color: #616363; }
  .subscribe input:not(:focus):invalid {
    color: #616363;
    border-color: #616363; }
  .subscribe .btn-submit {
    float: left; }
    @media screen and (min-width: 48em) {
      .subscribe .btn-submit {
        float: right; } }
  @media all and (min-width: 64em) and (max-width: 79.9375em) {
    .subscribe .large-collapse .columns {
      padding-left: 3.125rem;
      padding-right: 3.125rem; } }

.content-page.investor-section {
  width: 100%;
  padding-top: 35px;
  padding-bottom: 50px;
  /* super specific media query to add padding to content column in landscape mode */ }
  @media screen and (min-width: 48em) {
    .content-page.investor-section {
      padding-top: 0; } }
  .content-page.investor-section sup, .content-page.investor-section sub {
    font-size: 0.75em; }
    .content-page.investor-section sup:before, .content-page.investor-section sub:before {
      content: " "; }
    .content-page.investor-section sup:after, .content-page.investor-section sub:after {
      content: " "; }
  .content-page.investor-section .right {
    text-align: right; }
  .content-page.investor-section .notes {
    display: block;
    padding-top: 30px; }
    .content-page.investor-section .notes > p {
      font-size: 0.875em !important;
      margin: 7px; }
    .content-page.investor-section .notes a {
      text-decoration: none;
      border-bottom: 1px solid #2c2f2f; }
      .content-page.investor-section .notes a:hover {
        text-decoration: none;
        border-bottom: 1px solid #0B8651; }
  @media all and (min-width: 64em) and (max-width: 79.9375em) {
    .content-page.investor-section .large-collapse .columns {
      padding-left: 3.125rem;
      padding-right: 3.125rem; }
    .content-page.investor-section .related-content {
      padding-left: 0;
      padding-right: 0; } }
  @media screen and (min-width: 118.75em) {
    .content-page.investor-section .wysiwyg {
      font-size: 1em; } }

.timeline-panel {
  background: url("../img/bg-top-left.png") left top no-repeat, url("../img/bg-btm-right-01.svg") bottom right no-repeat;
  background-color: #2c2f2f;
  color: #cacbcb;
  position: relative; }

#wesTimeline {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  padding-bottom: 10px; }
  #wesTimeline .year {
    position: relative;
    padding-top: 140px; }
    #wesTimeline .year:before {
      content: "";
      display: table;
      clear: both; }
    #wesTimeline .year:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 80em) {
      #wesTimeline .year {
        margin: 0 -30px; } }
    #wesTimeline .year .midline {
      position: absolute;
      width: 6px;
      height: 100%;
      left: 50%;
      top: 0;
      background: #4b4c4c;
      margin-left: -3px;
      z-index: 0; }
    #wesTimeline .year .ylabel {
      font-family: "Stolzl W00 Medium";
      font-size: 1.4375em;
      color: #fff;
      line-height: 120px;
      background: #14dc66;
      width: 120px;
      height: auto;
      border-radius: 80%;
      position: absolute;
      top: 0;
      left: calc(50% - 60px);
      z-index: 5; }
      @media screen and (min-width: 48em) {
        #wesTimeline .year .ylabel {
          font-size: 1.25em; } }
      #wesTimeline .year .ylabel.fixed {
        position: fixed;
        top: 0;
        box-sizing: border-box;
        z-index: 5; }
    #wesTimeline .year .day {
      text-align: left;
      text-decoration: none;
      display: block;
      margin-bottom: 30px; }
      @media screen and (min-width: 48em) {
        #wesTimeline .year .day {
          width: 50%;
          float: left;
          margin-bottom: 50px; } }
      @media screen and (min-width: 64em) {
        #wesTimeline .year .day {
          width: 25%;
          float: left;
          margin-bottom: 50px; } }
      #wesTimeline .year .day .wrapper {
        background: #fff;
        position: relative; }
        @media screen and (min-width: 48em) {
          #wesTimeline .year .day .wrapper {
            margin: 0 30px; } }
        #wesTimeline .year .day .wrapper:before {
          content: "";
          display: table;
          clear: both; }
        #wesTimeline .year .day .wrapper:after {
          content: "";
          display: table;
          clear: both; }
        #wesTimeline .year .day .wrapper:before {
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
          filter: alpha(opacity=0);
          -moz-opacity: 0;
          -khtml-opacity: 0;
          opacity: 0;
          transition: opacity .15s ease-in-out; }
        #wesTimeline .year .day .wrapper .image:before {
          content: "";
          display: table;
          clear: both; }
        #wesTimeline .year .day .wrapper .image:after {
          content: "";
          display: table;
          clear: both; }
        #wesTimeline .year .day .wrapper .image img {
          width: 100%;
          display: block; }
        #wesTimeline .year .day .wrapper .image.video {
          position: relative; }
          #wesTimeline .year .day .wrapper .image.video:before {
            content: "";
            display: table;
            clear: both; }
          #wesTimeline .year .day .wrapper .image.video:after {
            content: "";
            display: table;
            clear: both; }
          #wesTimeline .year .day .wrapper .image.video:after {
            position: absolute;
            bottom: 10px;
            right: 10px;
            background: transparent url("../img/icons/icon-play.png") no-repeat 0 0;
            width: 43px;
            height: 42px;
            z-index: 2; }
        #wesTimeline .year .day .wrapper .copy {
          padding: 15px 15px 30px 15px;
          position: relative; }
          #wesTimeline .year .day .wrapper .copy .tag, #wesTimeline .year .day .wrapper .copy .date {
            text-transform: uppercase;
            font-family: "Stolzl W00 Medium";
            font-size: 0.6875em;
            color: #969797; }
          #wesTimeline .year .day .wrapper .copy .date {
            position: absolute;
            bottom: 15px;
            left: 15px; }
          #wesTimeline .year .day .wrapper .copy h2 {
            padding: 15px 0 10px 0;
            margin: 0;
            color: #2c2f2f;
            font-size: 1.125em;
            font-family: "Heuristica"; }
        #wesTimeline .year .day .wrapper.no-image {
          background: #fff url("../img/icons/icon-history-bg.png") no-repeat right bottom; }
          #wesTimeline .year .day .wrapper.no-image .copy {
            height: 100%; }
            #wesTimeline .year .day .wrapper.no-image .copy h2 {
              max-width: 60%;
              padding: 60px 0; }
      #wesTimeline .year .day:hover .wrapper:before {
        position: absolute;
        top: 0;
        bottom: 0;
        z-index: 3;
        background: #2c2f2f;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=33)";
        filter: alpha(opacity=33);
        -moz-opacity: .33;
        -khtml-opacity: .33;
        opacity: .33;
        display: block;
        width: 100%; }
      #wesTimeline .year .day:hover .wrapper:after {
        position: absolute;
        bottom: 15px;
        right: 15px;
        background: transparent url("../img/icons/icon-history-arrow.png") no-repeat 0 0;
        width: 16px;
        height: 31px;
        z-index: 4; }
      @media screen and (min-width: 64em) {
        #wesTimeline .year .day.center-left {
          margin-left: 25%; } }
      @media screen and (min-width: 64em) {
        #wesTimeline .year .day.center-right {
          margin-left: 50%; } }
    #wesTimeline .year:last-of-type {
      margin-bottom: 40px; }
      #wesTimeline .year:last-of-type .midline {
        display: none; }
    @media screen and (min-width: 64em) {
      #wesTimeline .year.show-all .day.center-left {
        margin-left: 0; } }
    @media screen and (min-width: 64em) {
      #wesTimeline .year.show-all .day.center-right {
        margin-left: 0; } }

.timeline-filter {
  text-align: center;
  padding: 15px 0;
  margin: 0 auto; }
  @media screen and (max-width: 980px) {
    .timeline-filter {
      display: none; } }
  @media screen and (min-width: 980px) {
    .timeline-filter {
      padding: 50px 0; } }
  .timeline-filter span {
    text-transform: uppercase;
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    display: inline-block; }
    @media screen and (min-width: 48em) {
      .timeline-filter span {
        padding-right: 8px; } }
  .timeline-filter a {
    text-transform: uppercase;
    text-decoration: none;
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    line-height: 40px;
    color: #e6e6e6;
    padding: 0 15px;
    display: inline-block;
    margin: 0 0 0 6px;
    background: #565757; }
    .timeline-filter a.active, .timeline-filter a:hover {
      background: #00e963;
      color: #333231; }

.mbl-timeline-filter {
  text-align: center;
  padding: 15px 0;
  margin: 0 auto; }
  @media screen and (max-width: 980px) {
    .mbl-timeline-filter {
      display: block; } }
  @media screen and (min-width: 980px) {
    .mbl-timeline-filter {
      padding: 50px 0;
      display: none; } }
  .mbl-timeline-filter span {
    text-transform: uppercase;
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    display: inline-block;
    margin: 0 0 10px 0; }
  .mbl-timeline-filter select {
    -webkit-appearance: none;
    border-radius: 0;
    border: 0;
    padding: 8px 30px 10px 10px;
    margin: 0;
    text-transform: uppercase;
    font-family: "Stolzl W00 Medium";
    color: #1d1d1d;
    -webkit-appearance: none;
    /*Removes default chrome and safari style*/
    -moz-appearance: none;
    /* Removes Default Firefox style*/
    background: #00e963 url(../img/icons/icon-dd-arrow.png) no-repeat;
    /*Adds background-image*/
    background-size: 13px 8px;
    background-position: right 16px top 16px;
    /*Position of the background-image*/
    text-indent: 0.01px;
    /* Removes default arrow from firefox*/
    text-overflow: "";
    /*Removes default arrow from firefox*/
    height: 40px;
    min-width: 0;
    max-width: 320px;
    display: block;
    margin: 0 auto;
    font-size: 1em; }
    @media screen and (min-width: 48em) {
      .mbl-timeline-filter select {
        font-size: 0.875em; } }
    .mbl-timeline-filter select:focus {
      outline: 0; }
  .mbl-timeline-filter select::-ms-expand {
    /*ie11 get rid of default dd arrow*/
    display: none; }

.timeline-intro {
  text-align: center;
  margin: 0 auto; }
  @media screen and (min-width: 48em) {
    .timeline-intro {
      max-width: 75%; } }
  .timeline-intro p {
    font-size: 1.0625em; }
    @media screen and (min-width: 48em) {
      .timeline-intro p {
        font-size: 1.5em; } }

.media-gallery {
  margin: 0 auto;
  padding-bottom: 30px;
  width: 90%; }
  @media screen and (min-width: 48em) {
    .media-gallery {
      width: 100%; } }

.gallery-wrapper {
  border-top: solid 1px #969797;
  padding-top: 15px;
  width: auto; }
  @media screen and (min-width: 48em) {
    .gallery-wrapper {
      margin: 0 15px;
      padding-top: 30px; } }
  @media screen and (min-width: 64em) {
    .gallery-wrapper {
      margin: 0 auto;
      max-width: 1024px; } }
  @media screen and (min-width: 80em) {
    .gallery-wrapper {
      margin: 0 auto;
      max-width: 1450px; } }
  .gallery-wrapper h2, .gallery-wrapper h3 {
    padding-left: 0; }
    @media screen and (min-width: 48em) {
      .gallery-wrapper h2, .gallery-wrapper h3 {
        padding-left: 15px; } }
  .gallery-wrapper h2 + h3 {
    padding-top: 15px;
    margin-bottom: 0; }
    @media screen and (min-width: 48em) {
      .gallery-wrapper h2 + h3 {
        padding-top: 30px; } }
  .gallery-wrapper .mg-grid {
    margin: 0 -5px 20px -5px; }
    .gallery-wrapper .mg-grid:before {
      content: "";
      display: table;
      clear: both; }
    .gallery-wrapper .mg-grid:after {
      content: "";
      display: table;
      clear: both; }
    @media screen and (min-width: 48em) {
      .gallery-wrapper .mg-grid {
        margin: 0 0 60px 0; } }
    .gallery-wrapper .mg-grid li {
      vertical-align: top;
      width: 50%;
      float: left; }
      .gallery-wrapper .mg-grid li:nth-child(2n+1) {
        clear: left; }
      @media screen and (min-width: 48em) {
        .gallery-wrapper .mg-grid li {
          vertical-align: top;
          width: 20%;
          float: left; }
          .gallery-wrapper .mg-grid li:nth-child(2n+1) {
            clear: none; }
          .gallery-wrapper .mg-grid li:nth-child(5n+1) {
            clear: left; } }
      .gallery-wrapper .mg-grid li > a {
        display: block;
        padding: 0;
        margin: 15px 5px 0 5px;
        border: none;
        outline: none;
        display: block;
        position: relative; }
        .gallery-wrapper .mg-grid li > a:before {
          content: "";
          display: table;
          clear: both; }
        .gallery-wrapper .mg-grid li > a:after {
          content: "";
          display: table;
          clear: both; }
        @media screen and (min-width: 48em) {
          .gallery-wrapper .mg-grid li > a {
            margin: 30px 15px 0 15px; } }
        .gallery-wrapper .mg-grid li > a .image {
          position: relative;
          overflow: hidden; }
          .gallery-wrapper .mg-grid li > a .image:before {
            content: "";
            display: table;
            clear: both; }
          .gallery-wrapper .mg-grid li > a .image:after {
            content: "";
            display: table;
            clear: both; }
          .gallery-wrapper .mg-grid li > a .image:before {
            position: absolute;
            top: 0;
            bottom: 0;
            z-index: 3;
            background: #2c2f2f;
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
            filter: alpha(opacity=0);
            -moz-opacity: 0;
            -khtml-opacity: 0;
            opacity: 0;
            transition: opacity .15s ease-in-out; }
          .gallery-wrapper .mg-grid li > a .image > img {
            width: 100%;
            display: block;
            -ms-transform: scale(1.02);
                transform: scale(1.02);
            transition: all .3s ease-in-out;
            vertical-align: top; }
          .gallery-wrapper .mg-grid li > a .image.video:after {
            position: absolute;
            top: 0;
            bottom: 0;
            z-index: 3;
            width: 56px;
            height: 56px;
            top: calc(50% - 28px);
            left: calc(50% - 28px);
            background: transparent url("../img/icons/icon-vid-play.png") no-repeat 0 0; }
        .gallery-wrapper .mg-grid li > a .tag {
          text-transform: uppercase;
          font-family: 'Stolzl W00 Book', Arial, sans-serif;
          font-size: 0.75em;
          display: inline-block;
          padding: 5px 0 0 0; }
      .gallery-wrapper .mg-grid li.og-expanded > a:after {
        top: auto;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
        border-bottom-color: #2c2f2f;
        border-width: 12px;
        left: 50%;
        margin: -12px 0 0 -12px; }
      .gallery-wrapper .mg-grid li:hover > a .image:before {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=33)";
        filter: alpha(opacity=33);
        -moz-opacity: .33;
        -khtml-opacity: .33;
        opacity: .33;
        display: block;
        width: 100%; }
      .gallery-wrapper .mg-grid li:hover > a .image > img {
        -ms-transform: scale(1.1);
            transform: scale(1.1); }

.og-expander {
  position: absolute;
  background: #2c2f2f;
  top: auto;
  left: 0;
  width: 100%;
  margin-top: 10px;
  text-align: left;
  height: 0;
  overflow: hidden; }

.og-expander-inner {
  padding: 50px 20px 20px 20px;
  height: 100%; }
  @media screen and (min-width: 48em) {
    .og-expander-inner {
      padding: 50px 30px; } }

.og-close {
  position: absolute;
  width: 25px;
  height: 25px;
  top: 15px;
  right: 15px;
  cursor: pointer; }
  .og-close:before {
    content: "";
    display: table;
    clear: both; }
  .og-close:after {
    content: "";
    display: table;
    clear: both; }
  @media screen and (min-width: 48em) {
    .og-close {
      width: 40px;
      height: 40px;
      top: 20px;
      right: 20px; } }
  .og-close:before, .og-close:after {
    position: absolute;
    width: 100%;
    top: 50%;
    height: 1px;
    background: #888;
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    transition: all 150ms ease-in-out; }
  .og-close:after {
    -ms-transform: rotate(-45deg);
        transform: rotate(-45deg); }
  .og-close:hover:before, .og-close:hover:after {
    background: #fff; }

@media screen and (min-width: 48em) {
  .og-fullimg,
  .og-details {
    width: 50%;
    float: left;
    height: 100%;
    overflow: hidden;
    position: relative; } }

.og-details {
  padding: 0; }
  @media screen and (min-width: 48em) {
    .og-details {
      padding: 0 40px; } }
  @media screen and (min-width: 64em) {
    .og-details {
      padding: 0 80px; } }

.og-fullimg {
  text-align: center; }
  @media screen and (max-width: 768px) {
    .og-fullimg img {
      max-width: 75%; } }
  @media screen and (min-width: 64em) {
    .og-fullimg img {
      max-width: 100%; } }

.og-details:before {
  content: "";
  display: table;
  clear: both; }

.og-details:after {
  content: "";
  display: table;
  clear: both; }

.og-details h3 {
  font-weight: 400;
  font-size: 1.66667em;
  font-family: Heuristica;
  padding: 20px 0 10px;
  margin-bottom: 10px;
  color: #fff; }
  @media screen and (min-width: 48em) {
    .og-details h3 {
      padding: 40px 0 10px; } }

.og-details p {
  font-weight: 400;
  font-size: 1em;
  font-family: Heuristica;
  color: #fff; }
  .og-details p.description {
    border-bottom: solid 1px #969797;
    padding-bottom: 20px; }
    @media screen and (min-width: 48em) {
      .og-details p.description {
        padding-bottom: 60px; } }
  .og-details p.filename {
    color: #969797;
    font-family: 'Stolzl W00 Book', Arial, sans-serif;
    font-size: 0.77778em;
    line-height: 0.77778em;
    font-weight: 400;
    text-transform: uppercase;
    padding-top: 10px; }
    @media screen and (min-width: 48em) {
      .og-details p.filename {
        padding-top: 0;
        float: left;
        max-width: 49%; } }

.og-details a.filesize {
  color: #fff;
  font-family: 'Stolzl W00 Book', Arial, sans-serif;
  font-size: 0.77778em;
  line-height: 0.77778em;
  font-weight: 400;
  text-transform: uppercase;
  transition: all 150ms ease-in-out; }
  @media screen and (min-width: 48em) {
    .og-details a.filesize {
      float: right;
      max-width: 49%; } }
  .og-details a.filesize:hover, .og-details a.filesize:focus {
    color: #0B8651;
    text-decoration: none; }

.og-loading {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #ddd;
  box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ccc;
  margin: 0 auto;
  margin-bottom: 20px;
  animation: loader 0.5s infinite ease-in-out both; }
  @media screen and (min-width: 48em) {
    .og-loading {
      position: absolute;
      top: 50%;
      left: 50%;
      margin: -25px 0 0 -25px; } }

@keyframes loader {
  0% {
    background: #ddd; }
  33% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ccc, -15px 30px 1px #ddd; }
  66% {
    background: #ccc;
    box-shadow: 0 0 1px #ccc, 15px 30px 1px #ddd, -15px 30px 1px #ccc; } }

@media screen and (max-width: 650px) {
  .og-details {
    float: none;
    width: 100%; } }

.gallery-filter {
  width: auto;
  margin: 20px auto 30px auto;
  position: relative; }
  @media screen and (min-width: 48em) {
    .gallery-filter {
      width: 350px; } }
  .gallery-filter .trigger {
    font-family: "Stolzl W00 Medium";
    text-transform: uppercase;
    color: #2c2f2f;
    background: #14dc66;
    line-height: 50px;
    text-align: center;
    position: relative;
    cursor: pointer; }
    .gallery-filter .trigger:before {
      content: "";
      display: table;
      clear: both; }
    .gallery-filter .trigger:after {
      content: "";
      display: table;
      clear: both; }
    .gallery-filter .trigger:after {
      position: absolute;
      top: 22px;
      right: 20px;
      width: 12px;
      height: 7px;
      background: transparent url("../img/icons/icon-dd-arrow-white.png") no-repeat 0 0;
      transition: 0.5s all; }
    .gallery-filter .trigger.active:after {
      -ms-transform: rotate(180deg);
      transform: rotate(180deg); }
  .gallery-filter .options {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 6;
    width: 100%;
    display: block;
    max-height: 0;
    overflow-y: hidden;
    transition: max-height .5s;
    overflow: hidden;
    cursor: pointer; }
    .gallery-filter .options li {
      background: #fff;
      border: solid 1px #969797;
      border-bottom: 0;
      line-height: 50px;
      padding: 0 20px;
      color: #969797; }
      .gallery-filter .options li a {
        display: block;
        padding: 0 20px;
        margin: 0 -20px; }
        .gallery-filter .options li a:hover {
          background: #eaeaea; }
      .gallery-filter .options li ul li {
        border-right: 0;
        border-left: 0;
        margin: 0 -20px; }
        .gallery-filter .options li ul li a {
          padding: 0 0 0 40px; }
    .gallery-filter .options.active {
      border-bottom: solid 1px #969797;
      max-height: 600px; }

article .split-list {
  padding-top: 10px; }
  @media screen and (min-width: 90em) {
    article .split-list {
      padding-top: 20px; }
      article .split-list:before {
        content: "";
        display: table;
        clear: both; }
      article .split-list:after {
        content: "";
        display: table;
        clear: both; } }
  article .split-list:first-of-type {
    border-top: 1px solid #2c2f2f; }
  @media screen and (min-width: 90em) {
    article .split-list .list-copy {
      float: left;
      width: 50%;
      padding: 10px 20px 0 0; } }
  article .split-list .list-copy span {
    color: #2c2f2f;
    font-family: "Heuristica Bold";
    font-size: 0.875rem;
    line-height: 1.3125rem; }
    @media screen and (min-width: 48em) {
      article .split-list .list-copy span {
        float: left;
        padding-right: 30px;
        font-size: 1.125rem;
        line-height: 1.625rem; } }
  article .split-list .list-copy h4 {
    font-size: 1.0625rem;
    line-height: 1.5625rem;
    overflow: hidden; }
    @media screen and (min-width: 90em) {
      article .split-list .list-copy h4 {
        font-size: 1.125rem;
        line-height: 1.625rem; } }
  article .split-list > ul {
    margin-bottom: 15px; }
    @media screen and (min-width: 90em) {
      article .split-list > ul {
        float: left;
        width: 50%; } }

.accordion .split-list:first-of-type {
  border-top: none; }

.sfHighlight {
  font-weight: normal;
  background-color: #00e862;
  color: #2c2f2f;
  padding: 2px; }

.sf-media {
  padding-bottom: 25px; }

.sf-media-body {
  font-family: "Heuristica";
  font-size: 0.875em;
  font-weight: normal; }
  @media screen and (min-width: 64em) {
    .sf-media-body p {
      padding-left: 50px; } }

.search-header {
  padding-top: 50px;
  padding-bottom: 35px; }
  .search-header em {
    font-style: italic; }
    .search-header em:before {
      content: "\201C"; }
    .search-header em:after {
      content: "\201D"; }

.search-footer {
  margin: 0 auto;
  text-align: center; }
  .search-footer:before {
    content: "";
    display: table;
    clear: both; }
  .search-footer:after {
    content: "";
    display: table;
    clear: both; }

.pagination {
  display: inline-block;
  font-family: "Heuristica";
  font-size: 1em;
  font-weight: normal; }
  .pagination .current {
    background-color: #00e862;
    color: #eaeaea;
    font-weight: 700;
    padding: 0; }
    .pagination .current:hover {
      background-color: #0B8651;
      color: #eaeaea; }
  .pagination a,
  .pagination button {
    font-family: "Stolzl W00 Medium";
    text-transform: uppercase;
    padding: 10px 25px;
    background: transparent; }
    .pagination a:hover,
    .pagination button:hover {
      color: #eaeaea;
      background: transparent; }

ul.pagination li {
  padding: 0;
  margin: 0;
  background-color: #eaeaea; }
  ul.pagination li:hover {
    color: #eaeaea;
    background-color: #363a45; }

@media screen and (min-width: 48em) {
  .sf-social-share {
    padding-bottom: 1.5625em; } }

.sf-social-share li {
  float: left;
  list-style: none;
  display: inline-block;
  line-height: 8px;
  padding: 5px; }
  .sf-social-share li:first-child {
    padding-left: 0; }
  .sf-social-share li:last-child {
    padding-right: 0; }

.sf-social-share #___plusone_0 {
  max-width: 55px;
  width: 55px; }

#btt {
  color: #cacbcb;
  background-color: #363a45;
  position: fixed;
  bottom: 30px;
  right: 0px;
  z-index: 9999;
  width: 45px;
  height: 45px;
  text-align: center;
  cursor: pointer;
  border: 0;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Stolzl W00 Medium";
  font-size: 0.6em;
  margin: 0 auto;
  padding: 7px;
  display: none; }
  #btt span {
    padding: 5px 0 3px 0;
    margin: 0;
    display: block;
    width: 100%; }
    #btt span:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 20;
      color: #cacbcb; }

.sustainability-links h2 {
  font-family: "Stolzl W00 Bold";
  font-size: 1.125em;
  line-height: .9;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #2c2f2f;
  font-weight: normal; }

.columns.sustainability-performance {
  border-left: solid 2px #00e862;
  margin-bottom: 10px; }

.investor-centre .wrapper {
  padding: 20px; }

@media screen and (min-width: 30em) {
  .investor-centre .wrapper {
    padding: 15px; }
  .investor-centre .grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    flex-flow: row wrap; }
    .investor-centre .grid > .share-promo,
    .investor-centre .grid > .debt-investors,
    .investor-centre .grid > .news-list {
      -moz-flex: 1 100%;
      -ms-flex: 1 100%;
      -o-flex: 1 100%;
      flex: 1 100%; }
    .investor-centre .grid > .tile-links {
      -moz-flex: 1 50%;
      -ms-flex: 1 50%;
      -o-flex: 1 50%;
      flex: 1 50%; } }

@media screen and (min-width: 30em) {
  .investor-centre .wrapper {
    padding: 30px; } }

@media screen and (min-width: 80em) {
  .investor-centre .wrapper {
    padding: 40px; }
  .investor-centre .grid {
    -ms-flex-flow: row;
    -o-flex-flow: row;
    flex-flow: row; }
    .investor-centre .grid > .share-promo {
      -moz-flex: 1 20%;
      -ms-flex: 1 20%;
      -o-flex: 1 20%;
      flex: 1 20%;
      -ms-flex-order: 1;
          order: 1; }
    .investor-centre .grid > .tile-links {
      -moz-flex: 0 38%;
      -ms-flex: 0 38%;
      -o-flex: 0 38%;
      flex: 0 38%;
      -ms-flex-order: 4;
          order: 4; }
    .investor-centre .grid > .debt-investors {
      position: absolute;
      bottom: 0;
      left: 55px;
      width: 18%;
      max-width: 246px; }
    .investor-centre .grid > .news-list {
      position: absolute;
      top: 286px;
      left: 55px;
      width: 18%;
      max-width: 246px; } }

@media screen and (min-width: 80em) {
  .investor-centre .wrapper {
    padding: 55px 55px 0 55px; } }

#investor-centre #main .investor-centre .row,
#investor-centre #main .investors .row {
  max-width: 100em;
  background-color: #fff; }

@media screen and (min-width: 80em) {
  #investor-centre {
    background-color: #2c2f2f; } }

@media screen and (min-width: 48em) {
  #investor-centre #main .investors {
    margin-bottom: 0;
    border: none; }
    #investor-centre #main .investors .page-intro {
      margin-bottom: 0;
      border-bottom: 6px solid #00e862; } }

.investor-centre .share-promo {
  margin: 20px auto;
  max-width: 420px; }
  .investor-centre .share-promo > a:hover, .investor-centre .share-promo > a:focus {
    text-decoration: none; }
    .investor-centre .share-promo > a:hover .stock-price > span, .investor-centre .share-promo > a:focus .stock-price > span {
      color: #00e862; }
  .investor-centre .share-promo h2 {
    font-family: "Stolzl W00 Medium";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #2c2f2f;
    font-weight: normal;
    text-align: left;
    margin-bottom: 0; }
  .investor-centre .share-promo .share-price {
    position: relative;
    padding: 0; }
    .investor-centre .share-promo .share-price .stock-price > span {
      font-size: 65px;
      margin-bottom: 0; }
    .investor-centre .share-promo .share-price .stock-index > span {
      font-size: 1.625em;
      padding-left: 20px;
      padding-right: 20px;
      color: #2c2f2f !important; }
      .investor-centre .share-promo .share-price .stock-index > span:first-of-type {
        padding-left: 10px;
        padding-bottom: 8px; }
    .investor-centre .share-promo .share-price .stock-index > i {
      font-size: 1.375em;
      color: #2c2f2f !important;
      margin-top: 5px;
      width: 30px;
      height: 30px;
      padding-left: 10px; }
    .investor-centre .share-promo .share-price .stock-updated-list {
      padding: 10px 0 5px;
      border-top: 1px solid #00e862;
      border-bottom: 1px solid #00e862; }
      .investor-centre .share-promo .share-price .stock-updated-list > li {
        font-family: "Stolzl W00 Book";
        font-size: 0.75em;
        line-height: .9;
        letter-spacing: 0.0375em;
        text-transform: uppercase;
        color: #646464;
        font-weight: normal;
        padding-bottom: 4px; }
        .investor-centre .share-promo .share-price .stock-updated-list > li > span {
          display: inline-block;
          min-width: 85px; }
    .investor-centre .share-promo .share-price .stock-wrapper {
      border: none; }
  @media screen and (min-width: 30em) {
    .investor-centre .share-promo {
      max-width: 420px; }
      .investor-centre .share-promo .share-price .stock-updated-list > li {
        font-size: 0.78125em; } }
  @media screen and (min-width: 48em) and (max-width: 79.9375em) {
    .investor-centre .share-promo {
      max-width: none;
      margin: 20px auto;
      padding: 0; }
      .investor-centre .share-promo:before {
        content: "";
        display: table;
        clear: both; }
      .investor-centre .share-promo:after {
        content: "";
        display: table;
        clear: both; }
      .investor-centre .share-promo h2 {
        display: block;
        -moz-flex: 0 100%;
        -ms-flex: 0 100%;
        -o-flex: 0 100%;
        flex: 0 100%;
        padding-bottom: 0;
        max-width: 768px;
        margin: 0 auto; }
      .investor-centre .share-promo .share-price {
        max-width: 768px;
        left: 50%;
        -ms-transform: translate(-50%);
        transform: translate(-50%);
        display: -ms-flexbox;
        display: flex;
        -ms-flex-flow: row;
        -o-flex-flow: row;
        flex-flow: row;
        border-bottom: 7px solid #00e862;
        padding: 20px 0;
        margin-right: 0;
        margin-left: 0; }
        .investor-centre .share-promo .share-price:before {
          content: "";
          display: table;
          clear: both; }
        .investor-centre .share-promo .share-price:after {
          content: "";
          display: table;
          clear: both; }
        .investor-centre .share-promo .share-price .stock-price {
          -moz-flex: 1 33.33333%;
          -ms-flex: 1 33.33333%;
          -o-flex: 1 33.33333%;
          flex: 1 33.33333%; }
          .investor-centre .share-promo .share-price .stock-price > span {
            border: none;
            text-align: left;
            padding-left: 0;
            padding-right: 0;
            line-height: .9; }
        .investor-centre .share-promo .share-price .stock-wrapper {
          -moz-flex: 0 66.66666%;
          -ms-flex: 0 66.66666%;
          -o-flex: 0 66.66666%;
          flex: 0 66.66666%;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-flow: row;
          -o-flex-flow: row;
          flex-flow: row;
          border: none; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-index {
            -moz-flex: 0 35%;
            -ms-flex: 0 35%;
            -o-flex: 0 35%;
            flex: 0 35%; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-index {
            -ms-transform: none;
                transform: none;
            left: 0;
            padding: 0 0 0 10px;
            border-left: 1px solid #00e862; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > i {
              position: absolute; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span,
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span:first-of-type {
              display: block;
              padding-left: 40px;
              padding-bottom: 5px;
              padding-right: 25px;
              border: none; }
          .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list {
            -moz-flex: 65%;
            -ms-flex: 65%;
            -o-flex: 65%;
            flex: 65%;
            border: none;
            border-left: 1px solid #00e862;
            padding: 0 0 0 25px; }
            .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list > li {
              padding-bottom: 10px; }
              .investor-centre .share-promo .share-price .stock-wrapper > .stock-updated-list > li:last-child {
                padding-bottom: 0; } }
  @media screen and (min-width: 80em) {
    .investor-centre .share-promo {
      margin: 0; }
      .investor-centre .share-promo .share-price {
        max-width: 246px; }
        .investor-centre .share-promo .share-price .stock-price > span {
          font-size: 3.4375em; }
        .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > span {
          font-size: 1.125em;
          padding-bottom: 0; }
        .investor-centre .share-promo .share-price .stock-wrapper > .stock-index > i {
          font-size: 18px;
          height: 20px; }
        .investor-centre .share-promo .share-price .stock-updated-list > li {
          font-size: 0.6875em; }
          .investor-centre .share-promo .share-price .stock-updated-list > li > span:first-child {
            min-width: 75px; } }

.announcement-bar {
  position: relative;
  width: 100%;
  background-color: #00e862;
  overflow: hidden;
  /* add override to prevent margin buffer */ }
  .announcement-bar p,
  .announcement-bar a {
    color: #000; }
  .announcement-bar p {
    text-align: center;
    padding: 8px 20px 4px; }
  .announcement-bar a {
    text-decoration: underline;
    /*
        transition:color .3s;
        &:hover, &:focus {
        	color:#fff;
        }
        */ }
    .announcement-bar a:hover, .announcement-bar a:focus {
      color: #000; }
  .announcement-bar .wysiwyg > .wysiwyg-inner:first-child {
    margin-top: 0; }
  @media screen and (min-width: 48em) {
    .announcement-bar {
      border-bottom: 10px solid #00e862;
      border-left: 10px solid #00e862;
      border-right: 10px solid #00e862; }
      .announcement-bar p {
        display: inline-block;
        width: auto;
        margin: 0;
        padding: 8px 20px 8px;
        position: relative;
        left: 50%;
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
        z-index: 2;
        font-size: 0.96875em;
        background-color: #00e862; }
        .announcement-bar p:after, .announcement-bar p:before {
          content: '';
          position: absolute;
          display: block; }
        .announcement-bar p:before {
          top: 0;
          left: -50px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 0 0 72px 54px;
          border-color: transparent transparent #00e862 transparent; }
        .announcement-bar p:after {
          bottom: 0;
          right: -52px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 72px 54px 0 0;
          border-color: #00e862 transparent transparent transparent; }
      .announcement-bar:before {
        background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAYAAABw4pVUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMDY3IDc5LjE1Nzc0NywgMjAxNS8wMy8zMC0yMzo0MDo0MiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTUgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOkI5NUM4NzczMDJCRTExRTY5RTU1RDg3QzIwNkY5QTkyIiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOkI5NUM4Nzc0MDJCRTExRTY5RTU1RDg3QzIwNkY5QTkyIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6Qjk1Qzg3NzEwMkJFMTFFNjlFNTVEODdDMjA2RjlBOTIiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6Qjk1Qzg3NzIwMkJFMTFFNjlFNTVEODdDMjA2RjlBOTIiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz5BrT4mAAAB+ElEQVR42uzb3U3DAAxFYeoFmKfdAAamGzAPsEBIHnhBKk1Dfo7tY8kPeYv0SZEi33sahuGp8ZzHvY77DHiXr3FfQgwOxrjvIQYHY3oIMTgYHUHQGN1A8BidQFJgdAFJg9EBJBVGdZB0GJVBSBifczGqgtAwXudiVARJjVENJD1GJZASGFVAymBUACmFkR2kHEZmkJIYWUHKYmQEKY2RDaQ8RiaQFhhZQNpgZABphUEHaYdBBmmJQQVpi0EEaY1BA2mPQQIRAwQiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAgYgBArmIwQGZMN7EYICIAQIRAwQiBghEDBCIGCAQMUAgYoBAxACBiAECEQMEIgYIRAwQiBggEDFAIGKAQMQAzWkYhg8xMHOeQAYxGBjjXkMMDsb0pQoxOBh//amLcQDGkSBi3MixhRgcjCNAxLiT8AwxOBh7gogxM/scYnAw9gAR48FWQIjBwdgSRIyFFY0QYzOMRSeNEIODsTaIGCsc+0IMDsZaIGKseAYPMTgY/wURY4OASIjBwVgKIsaG0akQg4PxKIgYO4QKQwwOxlwQMXaM24YYHIx7IGIcEEQPMTgYt0DEOLCiEWJwMH6DiAEoL4UYHIwfEDFAtb6pQXURg9Ox/BZgAOUXORxGy4aaAAAAAElFTkSuQmCC");
        background-size: 6px auto;
        content: '';
        position: absolute;
        top: 3px;
        left: -10%;
        z-index: 1;
        display: block;
        width: 120%;
        height: 100%;
        opacity: .75;
        -ms-transform: skewX(15deg);
            transform: skewX(15deg); } }

.investor-centre .tile-links:before {
  content: "";
  display: table;
  clear: both; }

.investor-centre .tile-links:after {
  content: "";
  display: table;
  clear: both; }

.investor-centre .tile-links h2 {
  margin-top: 30px;
  line-height: 1.1; }

.investor-centre .tile-links ul > li,
.investor-centre .tile-links ul > li > a {
  font-family: "Stolzl W00 Book";
  font-size: 1em;
  line-height: 1.3;
  letter-spacing: 0; }

.investor-centre .tile-links ul > li > a {
  display: block;
  position: relative;
  padding: 15px;
  background-color: #eaeaea;
  transition: background-color .4s;
  margin-bottom: 10px;
  overflow: hidden; }

.investor-centre .tile-links ul > li:hover > a {
  color: #000;
  background-color: #00e862;
  text-decoration: none; }

@media screen and (min-width: 30em) {
  .investor-centre .tile-links ul > li > a {
    position: relative;
    min-height: 80px;
    font-size: 1.125em; }
    .investor-centre .tile-links ul > li > a > span {
      position: absolute;
      display: block;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
  .investor-centre .tile-links.lt ul {
    margin-right: 15px; }
  .investor-centre .tile-links.rt ul {
    margin-left: 15px; }
  .investor-centre .tile-links.rt h2 {
    margin-left: 20px; } }

@media screen and (min-width: 64em) {
  .investor-centre .tile-links h2 {
    min-height: 34px;
    margin-bottom: 5px; }
  .investor-centre .tile-links ul {
    margin: 0 -5px;
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    -o-flex-flow: row wrap;
    flex-flow: row wrap; }
    .investor-centre .tile-links ul > li {
      -moz-flex: 0 50%;
      -ms-flex: 0 50%;
      -o-flex: 0 50%;
      flex: 0 50%;
      position: relative; }
      .investor-centre .tile-links ul > li:after {
        content: "";
        font-family: 'WesfarmersIcons';
        font-size: 22px;
        color: #00e862;
        display: block;
        position: absolute;
        z-index: 5;
        right: 12px;
        bottom: 7px;
        transition: color .4s; }
      .investor-centre .tile-links ul > li > a {
        margin: 5px;
        min-height: 120px;
        font-size: 1.125em; }
        .investor-centre .tile-links ul > li > a > span {
          position: relative;
          top: auto;
          -ms-transform: none;
              transform: none; }
        .investor-centre .tile-links ul > li > a:after, .investor-centre .tile-links ul > li > a:before {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          content: '';
          width: 100%;
          height: 100%;
          background: url(../img/tile-triangle.svg) no-repeat;
          -ms-background-size: 100% 120px;
          background-size: 100% 120px;
          transition: background-position .8s ease-in-out, opacity .3s; }
        .investor-centre .tile-links ul > li > a:after {
          opacity: .2; }
        .investor-centre .tile-links ul > li > a:before {
          opacity: 0;
          background-position: 0 -122px;
          -ms-transform: scale(-1);
              transform: scale(-1); }
      .investor-centre .tile-links ul > li:hover:after, .investor-centre .tile-links ul > li:focus:after {
        color: #fff; }
      .investor-centre .tile-links ul > li:hover > a, .investor-centre .tile-links ul > li:focus > a {
        background-color: #13d563; }
        .investor-centre .tile-links ul > li:hover > a:after, .investor-centre .tile-links ul > li:focus > a:after {
          opacity: 0;
          background-position: 0 -122px; }
        .investor-centre .tile-links ul > li:hover > a:before, .investor-centre .tile-links ul > li:focus > a:before {
          opacity: .05;
          background-position: 0 0; } }

@media screen and (min-width: 80em) {
  .investor-centre .tile-links h2 {
    margin-top: 0;
    margin-bottom: 30px;
    font-size: 1.75em; }
  .investor-centre .tile-links ul > li > a {
    margin: 5px;
    min-height: 140px;
    font-size: 1.1875em; }
    .investor-centre .tile-links ul > li > a:before, .investor-centre .tile-links ul > li > a:after {
      background-size: 100% 140px; }
    .investor-centre .tile-links ul > li > a:before {
      background-position: 0 -140px; }
  .investor-centre .tile-links ul > li:hover > a:after, .investor-centre .tile-links ul > li:focus > a:after {
    background-position: 0 -140px; }
  .investor-centre .tile-links ul > li:hover > a:before, .investor-centre .tile-links ul > li:focus > a:before {
    background-position: 0 0; } }

@media screen and (min-width: 90em) {
  .investor-centre .tile-links h2 {
    margin-top: -5px;
    margin-bottom: 55px;
    font-size: 2em; }
  .investor-centre .tile-links ul > li > a {
    font-size: 1.25em; }
  .investor-centre .tile-links.lt {
    position: relative; }
    .investor-centre .tile-links.lt:before, .investor-centre .tile-links.lt:after {
      content: '';
      position: absolute;
      display: block;
      width: 1px;
      height: 100%;
      height: calc(100% - 5px);
      background-color: #cacbcb;
      top: 0; }
    .investor-centre .tile-links.lt:before {
      left: -30px; }
    .investor-centre .tile-links.lt:after {
      right: -10px; }
  .investor-centre .tile-links ul {
    margin-right: 32px; }
  .investor-centre .tile-links.rt ul {
    margin-left: 32px; }
  .investor-centre .tile-links.rt h2 {
    margin-left: 38px; } }

@media screen and (min-width: 118.75em) {
  .investor-centre .tile-links ul > li > a {
    font-size: 1.375em; } }

@media screen and (min-width: 64em) and (max-width: 79.9375em) {
  .investor-centre .tile-links article {
    margin-left: 0;
    margin-right: 0; } }

.investor-centre .sustainability-links {
  border-top: 1px solid #00e862;
  border-bottom: 1px solid #00e862;
  padding: 15px 0;
  margin-top: 30px; }
  .investor-centre .sustainability-links:before {
    content: "";
    display: table;
    clear: both; }
  .investor-centre .sustainability-links:after {
    content: "";
    display: table;
    clear: both; }
  .investor-centre .sustainability-links h2 {
    display: block;
    position: relative;
    margin: 0;
    transition: color .3s; }
    .investor-centre .sustainability-links h2:after {
      content: "";
      font-family: 'WesfarmersIcons';
      font-size: 22px;
      color: #00e862;
      display: block;
      position: absolute;
      right: 10px;
      top: 50%;
      -ms-transform: translateY(-50%);
          transform: translateY(-50%); }
    .investor-centre .sustainability-links h2:hover, .investor-centre .sustainability-links h2:focus {
      color: #00cf57; }
  @media screen and (min-width: 30em) and (max-width: 79.9375em) {
    .investor-centre .sustainability-links h2:after {
      position: relative;
      display: inline-block;
      right: auto;
      -ms-transform: none;
          transform: none;
      top: 0;
      padding-left: 5px; } }
  @media screen and (min-width: 80em) {
    .investor-centre .sustainability-links {
      margin-bottom: 5px; } }

.investor-centre .news-list:before {
  content: "";
  display: table;
  clear: both; }

.investor-centre .news-list:after {
  content: "";
  display: table;
  clear: both; }

.investor-centre .news-list h2 {
  font-family: "Stolzl W00 Medium";
  font-size: 0.8125em;
  line-height: .9;
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  color: #2c2f2f; }

.investor-centre .news-list .date-time {
  font-family: "Stolzl W00 Book";
  font-size: 0.8125em;
  line-height: .9;
  letter-spacing: 0.0375em;
  text-transform: uppercase;
  color: #646464;
  font-weight: normal; }

.investor-centre .news-list h2 {
  margin-top: 50px; }

.investor-centre .news-list > .wrapper {
  padding: 0; }
  .investor-centre .news-list > .wrapper .item {
    margin-bottom: 20px; }
    .investor-centre .news-list > .wrapper .item .date-time {
      font-family: "Stolzl W00 Medium";
      margin-bottom: 10px; }
    .investor-centre .news-list > .wrapper .item p:not(:first-child) {
      font-size: 1.0625em; }

@media screen and (min-width: 48em) and (max-width: 79.9375em) {
  .investor-centre .news-list {
    margin-bottom: 0; }
    .investor-centre .news-list .wrapper {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-flow: row;
      -o-flex-flow: row;
      flex-flow: row;
      margin: 0 -1.25rem;
      padding: 0;
      max-width: 100em; }
      .investor-centre .news-list .wrapper > .item {
        -moz-flex: 1 33.3333%;
        -ms-flex: 1 33.3333%;
        -o-flex: 1 33.3333%;
        flex: 1 33.3333%;
        padding: 0 1.25rem;
        margin-bottom: 0; } }

@media screen and (min-width: 80em) {
  .investor-centre .news-list {
    margin-bottom: 0; }
    .investor-centre .news-list h2 {
      margin-top: 0; }
    .investor-centre .news-list .wrapper {
      display: block; }
      .investor-centre .news-list .wrapper > .item {
        width: 100%;
        max-height: 62px;
        overflow: hidden;
        margin-bottom: 10px; }
        .investor-centre .news-list .wrapper > .item p:not(:first-child) {
          font-size: 0.9375em; } }

.featured {
  padding-top: 0;
  margin-top: 10px;
  border-top: 1px solid #cacbcb; }
  .featured > h2 {
    font-family: "Stolzl W00 Book";
    font-size: 0.8125em;
    line-height: .9;
    letter-spacing: 0.0375em;
    text-transform: uppercase;
    color: #646464;
    font-weight: normal;
    display: block;
    padding-top: 10px; }
  @media screen and (min-width: 30em) {
    .featured {
      border: none; }
      .featured > h2 {
        border-top: 1px solid #cacbcb; } }

@media screen and (min-width: 0\0) {
  .featured {
    width: 100%; }
    .featured .row .column, .featured .row .columns {
      width: 100%; } }

@media screen and (min-width: 0\0) and (min-width: 30em) {
  .investor-centre .grid {
    width: 100%; }
  .announcement-bar p {
    display: block; } }

@media screen and (min-width: 0\0) and (min-width: 48em) and (max-width: 79.9375em) {
  .share-promo .share-price .stock-index {
    padding-right: 30px !important; } }

@media screen and (min-width: 0\0) and (min-width: 80em) {
  .investor-centre .grid {
    width: 100%; }
    .investor-centre .grid > .share-promo {
      width: 20%; }
    .investor-centre .grid > .tile-links {
      width: 38%; }
  .featured .row .column, .featured .row .columns {
    width: 33%; } }

.sfPageEditor .rdTable tbody, .sfPageEditor .rdTable thead, .sfPageEditor .rdTable tfoot {
  background: none; }

.sfPageEditor .RadDock .rdCenter .rdCommands li a:before, .sfPageEditor .RadDock .rdCenter .rdCommands li a:after, .sfPageEditor .RadDock .rdCenter .rdCommands li:after {
  display: none; }

.sfPageEditor .investor-centre .tile-links ul.rdCommands > li > a {
  min-height: auto;
  margin: 0; }

.sfPageEditor .related-content {
  max-width: 270px !important; }
  .sfPageEditor .related-content ul:after,
  .sfPageEditor .related-content ul:before {
    display: none; }

.sfPageEditor .sfPageWrapper header {
  position: relative; }

.sfPageEditor .sfPageWrapper .highlight-panel.grey-panel:after {
  display: none; }

.sfPageEditor .sfPageWrapper .sf_colsIn.announcement-bar {
  overflow: visible; }
  .sfPageEditor .sfPageWrapper .sf_colsIn.announcement-bar:before {
    display: none; }

.sfPageEditor .sfPageWrapper .sf_colsIn.column, .sfPageEditor .sfPageWrapper .sf_colsIn.columns {
  float: left; }

.sfPageEditor footer {
  position: static; }

.RadWindow {
  width: 100% !important;
  left: 0 !important;
  height: 100% !important;
  overflow: auto; }
  .RadWindow > table.rwTable {
    height: 100% !important; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlcy5taW4uY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm91bmRhdGlvbi5zY3NzIiwiYmFzZS9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJzZXR0aW5ncy9fZm91bmRhdGlvbi1zZXR0aW5ncy5zY3NzIiwic2V0dGluZ3MvX3Byb2plY3QtdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19taXhpbnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2ZsZXgtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fdW5pdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19ndXR0ZXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcG9zaXRpb24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3RleHQuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcm9wZG93bi1tZW51LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbGV4LXZpZGVvLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYmxlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19jb2xvci5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL2VmZmVjdHMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ib3dlcl9jb21wb25lbnRzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIi4uLy4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vYm93ZXJfY29tcG9uZW50cy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwidG9vbHMvaGVscGVycy9fbWl4aW5zLnNjc3MiLCJ0b29scy9oZWxwZXJzL19hbmltYXRlLXNpbXBsZS5zY3NzIiwiYmFzZS9fcmVzZXQuc2NzcyIsImJhc2UvX3dlc2Zhcm1lcnMtaWNvbnMuc2NzcyIsInRvb2xzL2Z1bmN0aW9ucy9fZW0tY2FsYy5zY3NzIiwidG9vbHMvY3NzMy9fbWVkaWEtcXVlcnkuc2NzcyIsImJhc2UvX2dsb2JhbC5zY3NzIiwib2JqZWN0cy9fb2JqZWN0cy5zY3NzIiwib2JqZWN0cy9fZGF0ZXBpY2tlci5zY3NzIiwib2JqZWN0cy9zbGlja1NsaWRlci9fc2xpY2suc2NzcyIsIm9iamVjdHMvc2xpY2tTbGlkZXIvX3NsaWNrVGhlbWUuc2NzcyIsImdsb2JhbC9faGVhZGVyLnNjc3MiLCJvYmplY3RzL19idXJnZXIuc2NzcyIsImdsb2JhbC9fbmF2LnNjc3MiLCJnbG9iYWwvX25hdi1tb2JpbGUuc2NzcyIsImdsb2JhbC9faW4tc2Nyb2xsLnNjc3MiLCJnbG9iYWwvX3Jlc2l6ZS5zY3NzIiwiZ2xvYmFsL19jb250ZW50LW5hdi5zY3NzIiwidG9vbHMvY3NzMy9fcHJlZml4LnNjc3MiLCJnbG9iYWwvX2hlcm9zLnNjc3MiLCJnbG9iYWwvX2Zvcm1zLnNjc3MiLCJnbG9iYWwvX3d5c2l3eWcuc2NzcyIsImdsb2JhbC9fc29jaWFsLXdhbGwuc2NzcyIsImdsb2JhbC9fcmVsYXRlZC1jb250ZW50LnNjc3MiLCJnbG9iYWwvX2Zvb3Rlci5zY3NzIiwiZ2xvYmFsL19ob21lLnNjc3MiLCJnbG9iYWwvX3RhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fbGF0ZXN0LW5ld3Muc2NzcyIsImNvbXBvbmVudHMvX3NoYXJlLXByb21vLnNjc3MiLCJjb21wb25lbnRzL19zdG9jay13aWRnZXQuc2NzcyIsImNvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiY29tcG9uZW50cy9faW52ZXN0b3ItY2VudHJlLnNjc3MiLCJjb21wb25lbnRzL19jYXJlZXJzLnNjc3MiLCJjb21wb25lbnRzL19jYXJlZXJzLWNvcnBvcmF0ZS5zY3NzIiwiY29tcG9uZW50cy9fY2FyZWVycy1idXNpbmVzc2VzLnNjc3MiLCJjb21wb25lbnRzL19saXN0LWltYWdlLWNvcHkuc2NzcyIsImNvbXBvbmVudHMvX291ci1idXNpbmVzc2VzLnNjc3MiLCJjb21wb25lbnRzL19vdXItZGl2aXNpb25zLnNjc3MiLCJjb21wb25lbnRzL19hc3gtYW5ub3VuY2Uuc2NzcyIsImNvbXBvbmVudHMvX2xpc3QtbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX2NvbnRhY3Quc2NzcyIsImNvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiY29tcG9uZW50cy9fbmV3cy1tZWRpYS5zY3NzIiwiY29tcG9uZW50cy9fcXVvdGUtaW50cm8uc2NzcyIsImNvbXBvbmVudHMvX2RhdGUtZ3JvdXAuc2NzcyIsImNvbXBvbmVudHMvX3Jvdy1pbnRyby5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1wb2RzLnNjc3MiLCJjb21wb25lbnRzL19rZXktZGF0ZXMuc2NzcyIsImNvbXBvbmVudHMvX3N1YnNjcmliZS5zY3NzIiwiY29tcG9uZW50cy9fZGl2aWRlbmQuc2NzcyIsImNvbXBvbmVudHMvX3RpbWVsaW5lLnNjc3MiLCJjb21wb25lbnRzL19tZWRpYS1nYWxsZXJ5LnNjc3MiLCJjb21wb25lbnRzL19zcGxpdC1saXN0LnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwiY29tcG9uZW50cy9fc29jaWFsLXNoYXJlLnNjc3MiLCJjb21wb25lbnRzL19iYWNrLXRvLXRvcC5zY3NzIiwiY29tcG9uZW50cy9fc3VzdGFpbmFiaWxpdHkuc2NzcyIsImdsb2JhbC9fc2l0ZWZpbml0eS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7Ozs7R0FLRztBQ0xILG1HQUFZO0FDRVo7RUFDRSwyQkNrQmM7RURqQmQsbUNDaUNlLEVEaENoQjs7QUUrTUMsNEVBQTRFO0FBRTVFOzs7O0tBSUc7QUFFSDtFQUNFLHdCQUF1QjtFQUFFLE9BQU87RUFDaEMsMkJBQTBCO0VBQUUsT0FBTztFQUNuQywrQkFBOEI7RUFBRSxPQUFPLEVBQ3hDOztBQUVEOztLQUVHO0FBRUg7RUFDRSxVQUFTLEVBQ1Y7O0FBRUQ7a0ZBQ2dGO0FBRWhGOzs7OztLQUtHO0FBRUg7Ozs7Ozs7Ozs7Ozs7RUFhRSxlQUFjLEVBQ2Y7O0FBRUQ7OztLQUdHO0FBRUg7Ozs7RUFJRSxzQkFBcUI7RUFBRSxPQUFPO0VBQzlCLHlCQUF3QjtFQUFFLE9BQU8sRUFDbEM7O0FBRUQ7OztLQUdHO0FBRUg7RUFDRSxjQUFhO0VBQ2IsVUFBUyxFQUNWOztBQUVEOzs7S0FHRztBTDlNTDs7RUtrTkksY0FBYSxFQUNkOztBQUVEO2tGQUNnRjtBQUVoRjs7S0FFRztBQUVIO0VBQ0UsOEJBQTZCLEVBQzlCOztBQUVEOzs7S0FHRztBQUVIOztFQUVFLFdBQVUsRUFDWDs7QUFFRDtrRkFDZ0Y7QUFFaEY7O0tBRUc7QUFFSDtFQUNFLDBCQUF5QixFQUMxQjs7QUFFRDs7S0FFRztBQUVIOztFQUVFLGtCQUFpQixFQUNsQjs7QUFFRDs7S0FFRztBQUVIO0VBQ0UsbUJBQWtCLEVBQ25COztBQUVEOzs7S0FHRztBQUVIO0VBQ0UsZUFBYztFQUNkLGlCQUFnQixF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OztBQVZEO0VBQ0Usd0JLaEwrQztNTGdML0Msb0JLaEwrQztFTGlML0MscUJLakwrQyxFTGtMaEQ7O0FBS0Q7RU0xS0osaUJEYnFELEVMeUxoRDs7QUFWRDtFQUNFLHdCS2hMK0M7TUxnTC9DLG9CS2hMK0M7RUxpTC9DLHFCS2pMK0MsRUxrTGhEOztBQUtEO0VNMUtKLHVCRGJxRCxFTHlMaEQ7O0FBVkQ7RUFDRSxrQktoTCtDO01MZ0wvQyxjS2hMK0M7RUxpTC9DLGVLakwrQyxFTGtMaEQ7O0FBS0Q7RU0xS0osdUJEYnFELEVMeUxoRDs7QUFWRDtFQUNFLHdCS2hMK0M7TUxnTC9DLG9CS2hMK0M7RUxpTC9DLHFCS2pMK0MsRUxrTGhEOztBQUtEO0VNMUtKLGlCRGJxRCxFTHlMaEQ7O0FBVkQ7RUFDRSx3QktoTCtDO01MZ0wvQyxvQktoTCtDO0VMaUwvQyxxQktqTCtDLEVMa0xoRDs7QUFLRDtFTTFLSix1QkRicUQsRUx5TGhEOztBQVZEO0VBQ0Usa0JLaEwrQztNTGdML0MsY0toTCtDO0VMaUwvQyxlS2pMK0MsRUxrTGhEOztBQUtEO0VNMUtKLHVCRGJxRCxFTHlMaEQ7O0FBVkQ7RUFDRSx3QktoTCtDO01MZ0wvQyxvQktoTCtDO0VMaUwvQyxxQktqTCtDLEVMa0xoRDs7QUFLRDtFTTFLSixpQkRicUQsRUx5TGhEOztBQVZEO0VBQ0Usd0JLaEwrQztNTGdML0Msb0JLaEwrQztFTGlML0MscUJLakwrQyxFTGtMaEQ7O0FBS0Q7RU0xS0osdUJEYnFELEVMeUxoRDs7QUFWRDtFQUNFLG1CS2hMK0M7TUxnTC9DLGVLaEwrQztFTGlML0MsZ0JLakwrQyxFTGtMaEQ7O0FBS0Q7RU0xS0osdUJEYnFELEVMeUxoRDs7QUFLRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFGRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFGRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFGRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFGRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFGRDtFT3pKSixrQlB3SmdCO01PeEpoQixTUHdKZ0IsRUFHWDs7QUFLRDtFQTdHSixvQkFBZTtNQUFmLGdCQUFlLEVBK0dWO0VBRkQ7SUF4R0YsbUJBRnNCO1FBRXRCLGVBRnNCO0lBR3RCLGdCQUhzQixFQUl2Qjs7QUFzR0c7RUE3R0osb0JBQWU7TUFBZixnQkFBZSxFQStHVjtFQUZEO0lBeEdGLGtCQUZzQjtRQUV0QixjQUZzQjtJQUd0QixlQUhzQixFQUl2Qjs7QUFzR0c7RUE3R0osb0JBQWU7TUFBZixnQkFBZSxFQStHVjtFQTdHTDtJQUdFLHdCQUZzQjtRQUV0QixvQkFGc0I7SUFHdEIscUJBSHNCLEVBSXZCOztBQXNHRztFQTdHSixvQkFBZTtNQUFmLGdCQUFlLEVBK0dWO0VBN0dMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQXNHRztFQTdHSixvQkFBZTtNQUFmLGdCQUFlLEVBK0dWO0VBN0dMO0lBR0Usa0JBRnNCO1FBRXRCLGNBRnNCO0lBR3RCLGVBSHNCLEVBSXZCOztBQXNHRztFQTdHSixvQkFBZTtNQUFmLGdCQUFlLEVBK0dWO0VBN0dMO0lBR0Usd0JBRnNCO1FBRXRCLG9CQUZzQjtJQUd0QixxQkFIc0IsRUFJdkI7O0FBc0dHO0VBN0dKLG9CQUFlO01BQWYsZ0JBQWUsRUErR1Y7RUE3R0w7SUFHRSx3QkFGc0I7UUFFdEIsb0JBRnNCO0lBR3RCLHFCQUhzQixFQUl2Qjs7QUFzR0c7RUE3R0osb0JBQWU7TUFBZixnQkFBZSxFQStHVjtFQUZEO0lBeEdGLG9CQUZzQjtRQUV0QixnQkFGc0I7SUFHdEIsaUJBSHNCLEVBSXZCOztBQWtJQztFSXBQRixnQkFBZTtFQUNmLGlCQUFnQixFSm9QOEI7O0FBTTFDO0VJbFBKLHNCQUQ4QjtFQUU5Qix1QkFGOEIsRUptUDJCOztBR2xIdkQ7RUh5REU7SUFDRSx1QktoTCtDO1FMZ0wvQyxtQktoTCtDO0lMaUwvQyxvQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLGdCRGhCZ0MsRUw0TDNCO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHNCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxrQktoTCtDO1FMZ0wvQyxjS2hMK0M7SUxpTC9DLGVLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLGlCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usa0JLaEwrQztRTGdML0MsY0toTCtDO0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLG1CS2hMK0M7UUxnTC9DLGVLaEwrQztJTGlML0MsZ0JLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBS0Q7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBS0Q7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLG1CQUZzQjtVQUV0QixlQUZzQjtNQUd0QixnQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQUZEO01BeEdGLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysa0JBRnNCO1VBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUFGRDtNQXhHRix3QkFGc0I7VUFFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBN0dMO01BR0Usd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLG9CQUZzQjtVQUV0QixnQkFGc0I7TUFHdEIsaUJBSHNCLEVBSXZCLEVBQUE7O0FHdUJDO0VIdUZJO0lBQ0Usa0JBakxNO1FBaUxOLGNBakxNLEVBa0xQLEVBQUE7O0FBTUM7RUFDRSxtQkFBMkI7TUFBM0IsZUFBMkIsRUFLNUI7RUdyR1A7SUg4Rkk7TUFLTSxrQkE1TEU7VUE0TEYsY0E1TEUsRUE4TEwsRUFBQTs7QUdyR1A7RUg0R0U7SUlyUEosZ0JBQWU7SUFDZixpQkFBZ0IsRUpvUDhCO0VBRzVDO0lJL09GLHVCQUQ4QjtJQUU5Qix3QkFGOEIsRUptUDJCLEVBQUE7O0FHbEh2RDtFSHlERTtJQUNFLHVCS2hMK0M7UUxnTC9DLG1CS2hMK0M7SUxpTC9DLG9CS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osZ0JEaEJnQyxFTDRMM0I7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osc0JEYnFELEVMeUxoRDtFQVZEO0lBQ0Usa0JLaEwrQztRTGdML0MsY0toTCtDO0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxrQktoTCtDO1FMZ0wvQyxjS2hMK0M7SUxpTC9DLGVL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LEVMeUxoRDtFQVZEO0lBQ0Usa0JLaEwrQztRTGdML0MsY0toTCtDO0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxtQktoTCtDO1FMZ0wvQyxlS2hMK0M7SUxpTC9DLGdCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQUtEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUtEO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxtQkFGc0I7VUFFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQUZEO01BeEdGLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUFGRDtNQXhHRixvQkFGc0I7VUFFdEIsZ0JBRnNCO01BR3RCLGlCQUhzQixFQUl2QixFQUFBOztBR3VCQztFSHVGSTtJQUNFLGtCQWpMTTtRQWlMTixjQWpMTSxFQWtMUCxFQUFBOztBQUtEO0VBRUksbUJBQTJCO01BQTNCLGVBQTJCLEVBSzVCO0VHckdQO0lIOEZJO01BS00sa0JBNUxFO1VBNExGLGNBNUxFLEVBOExMLEVBQUE7O0FHckdQO0VINEdFO0lJclBKLGdCQUFlO0lBQ2YsaUJBQWdCLEVKb1A4QjtFQUc1QztJSS9PRixzQkFEOEI7SUFFOUIsdUJBRjhCLEVKbVAyQixFQUFBOztBR2xIdkQ7RUh5REU7SUFDRSx1QktoTCtDO1FMZ0wvQyxtQktoTCtDO0lMaUwvQyxvQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLGdCRGhCZ0MsRUw0TDNCO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHNCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxrQktoTCtDO1FMZ0wvQyxjS2hMK0M7SUxpTC9DLGVLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLGlCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usa0JLaEwrQztRTGdML0MsY0toTCtDO0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLG1CS2hMK0M7UUxnTC9DLGVLaEwrQztJTGlML0MsZ0JLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBS0Q7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBS0Q7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLG1CQUZzQjtVQUV0QixlQUZzQjtNQUd0QixnQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQUZEO01BeEdGLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQUZEO01BeEdGLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysa0JBRnNCO1VBRXRCLGNBRnNCO01BR3RCLGVBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSx3QkFGc0I7VUFFdEIsb0JBRnNCO01BR3RCLHFCQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBN0dMO01BR0Usd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLG9CQUZzQjtVQUV0QixnQkFGc0I7TUFHdEIsaUJBSHNCLEVBSXZCLEVBQUE7O0FHdUJDO0VIdUZJO0lBQ0Usa0JBakxNO1FBaUxOLGNBakxNLEVBa0xQLEVBQUE7O0FBS0Q7RUFFSSxtQkFBMkI7TUFBM0IsZUFBMkIsRUFLNUI7RUdyR1A7SUgrRk07TUFJSSxrQkE1TEU7VUE0TEYsY0E1TEUsRUE4TEwsRUFBQTs7QUdyR1A7RUgyR0E7SUlwUEYsZ0JBQWU7SUFDZixpQkFBZ0IsRUpvUDhCO0VBTTFDO0lJbFBKLHNCQUQ4QjtJQUU5Qix1QkFGOEIsRUptUDJCLEVBQUE7O0FHbEh2RDtFSHlERTtJQUNFLHVCS2hMK0M7UUxnTC9DLG1CS2hMK0M7SUxpTC9DLG9CS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osZ0JEaEJnQyxFTDRMM0I7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osc0JEYnFELEVMeUxoRDtFQVZEO0lBQ0Usa0JLaEwrQztRTGdML0MsY0toTCtDO0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxrQktoTCtDO1FMZ0wvQyxjS2hMK0M7SUxpTC9DLGVLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VB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O0lMaUwvQyxlS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSixpQkRicUQsRUx5TGhEO0VBVkQ7SUFDRSx3QktoTCtDO1FMZ0wvQyxvQktoTCtDO0lMaUwvQyxxQktqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLGtCS2hMK0M7UUxnTC9DLGNLaEwrQztJTGlML0MsZUtqTCtDLEVMa0xoRDtFQUtEO0lNMUtKLHVCRGJxRCxFTHlMaEQ7RUFWRDtJQUNFLHdCS2hMK0M7UUxnTC9DLG9CS2hMK0M7SUxpTC9DLHFCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osaUJEYnFELEVMeUxoRDtFQVZEO0lBQ0Usd0JLaEwrQztRTGdML0Msb0JLaEwrQztJTGlML0MscUJLakwrQyxFTGtMaEQ7RUFLRDtJTTFLSix1QkRicUQsRUx5TGhEO0VBVkQ7SUFDRSxtQktoTCtDO1FMZ0wvQyxlS2hMK0M7SUxpTC9DLGdCS2pMK0MsRUxrTGhEO0VBS0Q7SU0xS0osdUJEYnFELEVMeUxoRDtFQUtEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUZEO0lPekpKLGtCUHdKZ0I7UU94SmhCLFNQd0pnQixFQUdYO0VBRkQ7SU96Skosa0JQd0pnQjtRT3hKaEIsU1B3SmdCLEVBR1g7RUFGRDtJT3pKSixrQlB3SmdCO1FPeEpoQixTUHdKZ0IsRUFHWDtFQUtEO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxtQkFGc0I7VUFFdEIsZUFGc0I7TUFHdEIsZ0JBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQUZEO01BeEdGLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUFGRDtNQXhHRixrQkFGc0I7VUFFdEIsY0FGc0I7TUFHdEIsZUFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLGtCQUZzQjtVQUV0QixjQUZzQjtNQUd0QixlQUhzQixFQUl2QjtFQXNHRztJQTdHSixvQkFBZTtRQUFmLGdCQUFlLEVBK0dWO0lBRkQ7TUF4R0Ysd0JBRnNCO1VBRXRCLG9CQUZzQjtNQUd0QixxQkFIc0IsRUFJdkI7RUFzR0c7SUE3R0osb0JBQWU7UUFBZixnQkFBZSxFQStHVjtJQTdHTDtNQUdFLHdCQUZzQjtVQUV0QixvQkFGc0I7TUFHdEIscUJBSHNCLEVBSXZCO0VBc0dHO0lBN0dKLG9CQUFlO1FBQWYsZ0JBQWUsRUErR1Y7SUE3R0w7TUFHRSxvQkFGc0I7VUFFdEIsZ0JBRnNCO01BR3RCLGlCQUhzQixFQUl2QixFQUFBOztBR3VCQztFSHVGSTtJQUNFLGtCQWpMTTtRQWlMTixjQWpMTSxFQWtMUCxFQUFBOztBQUtEO0VBRUksbUJBQTJCO01BQTNCLGVBQTJCLEVBSzVCO0VHckdQO0lIK0ZNO01BSUksa0JBNUxFO1VBNExGLGNBNUxFLEVBOExMLEVBQUE7O0FHckdQO0VINEdFO0lJclBKLGdCQUFlO0lBQ2YsaUJBQWdCLEVKb1A4QjtFQUc1QztJSS9PRixzQkFEOEI7SUFFOUIsdUJBRjhCLEVKbVAyQixFQUFBOztBQUt6RDtFQUNFLG1CQTlNZTtNQThNZixlQTlNZTtFQStNZixnQkFBZSxFQUNoQjs7QUFLQztFT3RORiwyQkFuRGlCO01BbURqQix1QkFuRGlCLEVQMlFkOztBQUZEO0VPdE5GLHlCQWxEa0I7TUFrRGxCLHFCQWxEa0IsRVAwUWY7O0FBRkQ7RU90TkYsNEJBakRnQjtNQWlEaEIsbUJBakRnQixFUHlRYjs7QUFGRDtFT3RORiw2QkFoRGtCO01BZ0RsQixvQkFoRGtCLEVQd1FmOztBUWpSRDtFRHdDRixtQkF6Q2lCO01BeUNqQiwwQkF6Q2lCLEVDR2Q7O0FBRkQ7RUR3Q0Ysc0JBeENnQjtNQXdDaEIsd0JBeENnQixFQ0ViOztBQUZEO0VEd0NGLHVCQXZDd0I7TUF1Q3hCLCtCQXZDd0IsRUNDckI7O0FBRkQ7RUR3Q0YsMEJBdENzQjtNQXNDdEIsOEJBdENzQixFQ0FuQjs7QUFLRDtFRGtDRixzQkFuQ2lCO01BbUNqQix3QkFuQ2lCLEVDR2Q7O0FBRUQ7RUQ4Q0YsMkJBbkRpQjtNQW1EakIsdUJBbkRpQixFQ09kOztBQU5EO0VEa0NGLG9CQWxDa0I7TUFrQ2xCLHNCQWxDa0IsRUNFZjs7QUFFRDtFRDhDRix5QkFsRGtCO01Ba0RsQixxQkFsRGtCLEVDTWY7O0FBTkQ7RURrQ0YsdUJBakNnQjtNQWlDaEIsb0JBakNnQixFQ0NiOztBQUVEO0VEOENGLDRCQWpEZ0I7TUFpRGhCLG1CQWpEZ0IsRUNLYjs7QUFORDtFRGtDRix3QkFoQ2tCO01BZ0NsQixxQkFoQ2tCLEVDQWY7O0FBRUQ7RUQ4Q0YsNkJBaERrQjtNQWdEbEIsb0JBaERrQixFQ0lmOztBUjJNQztFT3pKSixrQkM3Q2dCO01ENkNoQixTQzdDZ0IsRUFHWDs7QVJtTUQ7RU96Skosa0JDN0NnQjtNRDZDaEIsU0M3Q2dCLEVBR1g7O0FSbU1EO0VPekpKLGtCQzdDZ0I7TUQ2Q2hCLFNDN0NnQixFQUdYOztBUm1NRDtFT3pKSixrQkM3Q2dCO01ENkNoQixTQzdDZ0IsRUFHWDs7QVJtTUQ7RU96Skosa0JDN0NnQjtNRDZDaEIsU0M3Q2dCLEVBR1g7O0FSbU1EO0VPekpKLGtCQzdDZ0I7TUQ2Q2hCLFNDN0NnQixFQUdYOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBTDJISDtFSHdFRTtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWDtFUm1NRDtJT3pKSixrQkM3Q2dCO1FENkNoQixTQzdDZ0IsRUFHWCxFQUFBOztBQytNTDs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxVQUFTO0VBQ1QsV0FBVSxFQUNYOztBQUdEO0VBQ0UsbUJBQWtCO0VBQ2xCLGlCWm5Lc0I7RVlvS3RCLG9CWm5LMEI7RVlvSzFCLG1DWm5LeUMsRVlvSzFDOztBQUdEOztFQUVFLG1CQUFrQjtFQUNsQixxQkFBb0IsRUFDckI7O0FBR0Q7O0VBRUUsa0Jabk5xQjtFWW9OckIscUJBQW9CLEVBQ3JCOztBYjJGRDtFYXZGRSxlWjFMaUI7RVkyTGpCLHFCQUFvQixFQUNyQjs7QUFHRDs7Ozs7O0VBTUUsMEJaek8yQjtFWTBPM0Isb0JadE95QjtFWXVPekIsbUJaak5zQjtFWWtOdEIsZVo1TWtCO0VZNk1sQixtQ1oxTXNDO0VZMk10QyxjQUFhO0VBQ2Isc0JaN015QjtFWThNekIsaUJaL01tQixFWXFOcEI7RUFKQzs7Ozs7O0lBQ0UsZVp6UGU7SVkwUGYsZUFBYyxFQUNmOztBYjhDSDtFYXRDUSxrQlJoTytDLEVRaU9oRDs7QUFGRDtFQUNFLG1CUmhPK0MsRVFpT2hEOztBQUZEO0VBQ0UscUJSaE8rQyxFUWlPaEQ7O0FBRkQ7RUFDRSxvQlJoTytDLEVRaU9oRDs7QUFGRDtFQUNFLHFCUmhPK0MsRVFpT2hEOztBQUZEO0VBQ0UsZ0JSaE8rQyxFUWlPaEQ7O0FObktMO0VQd01GO0lhdENRLGdCUmhPK0MsRVFpT2hEO0VBRkQ7SUFDRSxrQlJoTytDLEVRaU9oRDtFQUZEO0lBQ0UscUJSaE8rQyxFUWlPaEQ7RUFGRDtJQUNFLHFCUmhPK0MsRVFpT2hEO0VBRkQ7SUFDRSxtQlJoTytDLEVRaU9oRDtFQUZEO0lBQ0UsZ0JSaE8rQyxFUWlPaEQsRUFBQTs7QWJWUDtFYWlCRSxlWjlRbUM7RVkrUW5DLHNCWnJOeUI7RVlzTnpCLHFCQUFvQjtFQUNwQixnQkFBZSxFQWFoQjtFQVhDO0lBRUUsZVo1TjJELEVZZ081RDtFQUVEO0lBQ0UsVUFBUyxFQUNWOztBYjJGSDtFYXRGRSxxQlI1UHFEO0VRNlByRCxVQUFTO0VBQ1QsZ0JBQWU7RUFDZixjQUFhO0VBQ2IsaUNablNpQjtFWW9TakIsZUFBYztFQUNkLHFCWjFPeUI7RVkyT3pCLFlBQVcsRUFDWjs7QUFHRDs7O0VBR0UsaUJaalFzQjtFWWtRdEIsb0JaalEwQjtFWWtRMUIsNkJaaFB5QixFWWlQMUI7O0FBR0Q7RUFDRSxtQkFBa0IsRUFDbkI7O0FBR0Q7RUFDRSxzQlozUGtCO0VZNFBsQixxQloxUHNCLEVZMlB2Qjs7QUFHRDtFQUNFLHFCWi9Qc0IsRVlnUXZCOztBQUdEO0VBRUkscUJacFEyQjtFWXFRM0IsaUJBQWdCLEVBQ2pCOztBQUlIO0VBQ0Usb0JaMVF5QixFWWdSMUI7RUFKQztJQUNFLHNCWjNROEI7SVk0UTlCLGtCWnJVbUIsRVlzVXBCOztBQUlIO0VBQ0UsaUJaelMwQjtFWTBTMUIsdUNScFRxRDtFUXFUckQsK0JaeFZpQixFWThWbEI7RUFURDtJQU1JLGlCWi9Tb0I7SVlnVHBCLGVaM1ZhLEVZNFZkOztBQUlIO0VBQ0UsZUFBYztFQUNkLHFCUmhVcUQ7RVFpVXJELGVabldlLEVZd1do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QUZ5QjtNQUV6Qix5QkFGeUIsRUVoQnhCOztBNURyQkg7RTBEdUNFLGdDQUZ5QjtNQUV6Qiw0QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6Qyw0QkFBMkIsRUNSMUI7O0FBVUQ7RUZvQkEsNkJBRnlCO01BRXpCLHlCQUZ5QixFRWhCeEI7O0E1RHBCSDtFMERzQ0UsNkJBRnlCO01BRXpCLHlCQUZ5QjtFQ3ZCdkIsd0NBQXVDO0VBR3pDLDRCQUEyQixFQ1IxQjs7QUFVRDtFRm9CQSxnQ0FGeUI7TUFFekIsNEJBRnlCLEVFaEJ4Qjs7QUFkRDtFRmdDQSw2QkFGeUI7TUFFekIseUJBRnlCO0VDdkJ2Qix3Q0FBdUM7RUFHekMsNEJBQTJCLEVDUjFCOztBNURQSDtFMERxQ0UsZ0NBRnlCO01BRXpCLDRCQUZ5QixFRWhCeEI7O0FBZEQ7RUZnQ0EsNkJBRnlCO01BRXpCLHlCQUZ5QjtFQ3ZCdkIsd0NBQXVDO0VBR3pDLDRCQUEyQixFQ1IxQjs7QTVETkg7RTBEb0NFLGlDQUZ5QjtNQUV6Qiw2QkFGeUIsRUVoQnhCOztBNURqQkg7RTBEbUNFLDZCQUZ5QjtNQUV6Qix5QkFGeUI7RUN2QnZCLHdDQUF1QztFQUd6Qyw0QkFBMkIsRUNSMUI7O0E1RExIO0UwRG1DRSxpQ0FGeUI7TUFFekIsNkJBRnlCLEVFaEJ4Qjs7QUFkRDtFRmdDQSxXMURoQ2tDO0U2REFsQyw2QkFBNEIsRURFM0I7O0FBVUQ7RUZvQkEsVzFEaENxQyxFNERjcEM7O0FBZEQ7RUZnQ0EsVzFEL0JrQztFNkREbEMsNkJBQTRCLEVERTNCOztBQVVEO0VGb0JBLFcxRC9CcUMsRTREYXBDOztBNURWSDtFMEQ0QkUsK0NJckNtQztFSnFDbkMsMEIxRDVCbUQ7TTBENEJuRCxzQjFENUJtRDtFK0RHakQsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVITjVCOztBNURFSDtFMEQ0QkUsNENJVjRDO0VDSjFDLFdBQTJCLEVISjVCOztBQWREO0VGZ0NBLCtDSXBDcUM7RUpvQ3JDLDRCMUQzQnFEO00wRDJCckQsd0IxRDNCcUQ7RStERW5ELHdDQUF1QztFQUN2QyxXQUEyQixFSE41Qjs7QUFVRDtFRm9CQSw0Q0lWNEM7RUNKMUMsV0FBMkIsRUhKNUI7O0FBZEQ7RUZnQ0EsOENJbkNpQztFSm1DakMsNkIxRDFCc0Q7TTBEMEJ0RCx5QjFEMUJzRDtFK0RDcEQsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVITjVCOztBQVVEO0VGb0JBLDRDSVY0QztFQ0oxQyxXQUEyQixFSEo1Qjs7QTVEUEg7RTBEeUJFLDhDSWxDK0I7RUprQy9CLDJCMUR6Qm9EO00wRHlCcEQsdUIxRHpCb0Q7RStEQWxELHdDQUF1QztFQUN2QyxXQUEyQixFSE41Qjs7QTVES0g7RTBEeUJFLDRDSVY0QztFQ0oxQyxXQUEyQixFSEo1Qjs7QUFkRDtFRmdDQSwrQ0lyQ21DO0VKcUNuQyw2QklDZTtNSkRmLHlCSUNlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUEyQixFSE41Qjs7QUFVRDtFRm9CQSw0Q0lWNEM7RUNKMUMsV0FBMkIsRUhKNUI7O0E1RExIO0UwRHVCRSwrQ0lwQ3FDO0VKb0NyQyw2QklDZTtNSkRmLHlCSUNlO0VDMUJiLHdDQUF1QztFQUN2QyxXQUEyQixFSE41Qjs7QUFVRDtFRm9CQSw0Q0lWNEM7RUNKMUMsV0FBMkIsRUhKNUI7O0E1REpIO0UwRHNCRSw0Q0lSOEM7RUpROUMsMEIxRHRCbUQ7TTBEc0JuRCxzQjFEdEJtRDtFK0RIakQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVITi9COztBNURRSDtFMERzQkUsK0NJckNtQztFQ3VCakMsV0FBOEIsRUhKL0I7O0E1REhIO0UwRHFCRSw0Q0lSOEM7RUpROUMsNEIxRHJCcUQ7TTBEcUJyRCx3QjFEckJxRDtFK0RKbkQsd0NBQXVDO0VBQ3ZDLFdBQThCLEVITi9COztBNURTSDtFMERxQkUsK0NJcENxQztFQ3NCbkMsV0FBOEIsRUhKL0I7O0FBZEQ7RUZnQ0EsNENJUjhDO0VKUTlDLDZCMURwQnNEO00wRG9CdEQseUIxRHBCc0Q7RStETHBELHdDQUF1QztFQUN2QyxXQUE4QixFSE4vQjs7QUFVRDtFRm9CQSw4Q0luQ2lDO0VDcUIvQixXQUE4QixFSEovQjs7QTVEREg7RTBEbUJFLDRDSVI4QztFSlE5QywyQjFEbkJvRDtNMERtQnBELHVCMURuQm9EO0UrRE5sRCx3Q0FBdUM7RUFDdkMsV0FBOEIsRUhOL0I7O0FBVUQ7RUZvQkEsOENJbEMrQjtFQ29CN0IsV0FBOEIsRUhKL0I7O0E1REFIO0UwRGtCRSw0Q0lSOEM7RUpROUMsNkJJQ2U7TUpEZix5QklDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBOEIsRUhOL0I7O0E1RFlIO0UwRGtCRSwrQ0lyQ21DO0VDdUJqQyxXQUE4QixFSEovQjs7QUFkRDtFRmdDQSw0Q0lSOEM7RUpROUMsNkJJQ2U7TUpEZix5QklDZTtFQzFCYix3Q0FBdUM7RUFDdkMsV0FBOEIsRUhOL0I7O0FBVUQ7RUZvQkEsK0NJcENxQztFQ3NCbkMsV0FBOEIsRUhKL0I7O0E1RElIO0UwRGNFLDBCQUZ5QjtNQUV6QixzQkFGeUI7RU0zQnZCLHdDQUF1QztFQUN2QyxXQUEyQixFSkY1Qjs7QTVEZ0JIO0UwRGNFLHdCQUZ5QjtNQUV6QixvQkFGeUI7RU1oQnZCLFdBQTJCLEVKQTVCOztBNURLSDtFMERhRSwwQkFGeUI7TUFFekIsc0JBRnlCO0VNM0J2Qix3Q0FBdUM7RUFDdkMsV0FBMkIsRUpGNUI7O0FBVUQ7RUZvQkEsd0JBRnlCO01BRXpCLG9CQUZ5QjtFTWhCdkIsV0FBMkIsRUpBNUI7O0FBZEQ7RUZnQ0Esd0JBRnlCO01BRXpCLG9CQUZ5QjtFTTNCdkIsd0NBQXVDO0VBQ3ZDLFdBQThCLEVKRi9COztBNURrQkg7RTBEWUUsMEJBRnlCO01BRXpCLHNCQUZ5QjtFTWhCdkIsV0FBOEIsRUpBL0I7O0E1RE9IO0UwRFdFLHdCQUZ5QjtNQUV6QixvQkFGeUI7RU0zQnZCLHdDQUF1QztFQUN2QyxXQUE4QixFSkYvQjs7QUFVRDtFRm9CQSwwQkFGeUI7TUFFekIsc0JBRnlCO0VNaEJ2QixXQUE4QixFSkEvQjs7QTVEVUg7RTBEUUUsaUNBRnlCO01BRXpCLDZCQUZ5QjtFTzNCdkIsd0NBQXVDO0VBQ3ZDLFdBQTJCLEVMRjVCOztBNURzQkg7RTBEUUUseUJBRnlCO01BRXpC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O0V6QkpEO0l5Qk9JLHFCQUFhO0lBQWIsY0FBYTtJdEMxQnZCLHdCc0MyQjhDO0l0QzFCOUMsdUJzQzBCOEM7SXRDekI5QyxvQnNDeUI4QyxFQVV2QztJekJkRzs7O01ieEJWLGtCc0NnQzRDO010Qy9CNUMsaUJzQytCNEM7TXRDOUI1QyxnQnNDOEI0QztNdEM3QjVDLGFzQzZCNEMsRUFDakM7SXpCSkQ7TWI3QlYsaUJzQ21DMEM7TXRDbEMxQyxnQnNDa0MwQztNdENqQzFDLGVzQ2lDMEM7TXRDaEMxQyxZc0NnQzBDLEVBQy9CLEVBQUE7O0FsSDZHVDtFeUZ0SUo7SXlCK0JZLGNBQWEsRUFDaEIsRUFBQTs7QWxIc0dMO0V5RnRJSjtJeUJvQ1ksY0FBYSxFQUNoQjtFekJyQ1Q7SWJWRSxtQnNDaUR3QztJdENoRHhDLGtCc0NnRHdDO0l0Qy9DeEMsZXNDK0N3QyxFQXdCakM7SXpCL0RUO01iWEUsaUJzQ29EeUM7TXRDbkR6QyxnQnNDbUR5QztNdENsRHpDLGVzQ2tEeUM7TXRDakR6QyxZc0NpRHlDO01BQzNCLGtCQUFRO1VBQVIsU0FBUSxFQUNYO0l6QnpCRDtNYjdCVixpQnNDd0R5QztNdEN2RHpDLGdCc0N1RHlDO010Q3REekMsZXNDc0R5QztNdENyRHpDLFlzQ3FEeUM7TUFDM0Isa0JBQVE7VUFBUixTQUFRLEVBQ1g7SXpCL0NiO015QmlEZ0IsbUJBQWtCO01BQ2xCLFVBQVM7TUFDVCxXQUFVO01BQ1YsV0FBVTtNQUNWLGlCQUFnQixFQUVuQjtJekJKRDtNeUJNSSxtQkFBa0I7TUFDbEIsV0FBVTtNQUNWLFdBQVU7TUFDVixXQUFVO01BQ1YsaUJBQWdCLEVBQ25CLEVBQUE7O0FsSHdFVDtFeUZ0SUo7SXlCbUVZLDBCQUF5QixFQUM1QixFQUFBOztBekJFRDs7RXlCT0ksaUJwRC9Fc0I7RW9EZ0Z0Qix1QkFBc0IsRUFDekI7O0FsSHVETDtFeUZsRUo7SXlCY1EsMEJ2SHJGaUIsRXVIaUd4QixFQUFBOztBbEh3Q0c7RXlGdkRBO0l5Qk9RLGlCQUFnQjtJQUNoQixhQUFZLEVBTW5CO0l6QnpCTDtNeUJx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Qm1Jd0Isb0JBQWU7Z0JBQWYsZ0JBQWU7WUFDZixRQUFPO1lBRVAsb0JBQW1CO1lBQ25CLCtCdkg1T0gsRXVIMlBBO1l6QnRKckI7Y3lCMEk0QixtQkFBa0IsRUFDckI7WXpCSkQ7O2N5Qk9JLGVBQWM7Y0FDZCxtQkFBa0I7Y0FDbEIsb0JBQW1CO2NBQ25CLG9CQUFtQjtjQUduQixhQUFZLEVBQ2Y7VXpCckp6QjtZYnRHRSxlc0M4UGdEO1l0QzdQaEQsY3NDNlBnRDtZdEM1UGhELGFzQzRQZ0Q7WXRDM1BoRCxVc0MyUGdEO1lBQzFCLGFBQVk7WUFDWiwrQnZIL1BIO1l1SGdRRyxvQkFBbUIsRUFPdEI7WXpCWEc7Y3lCTUkscUJBQW9CLEVBSXZCO2N6QmpLekI7Z0J5QitKZ0Msa0JBQWlCLEVBQ3BCLEVBQUE7RWxIckh6QjtJeUYzQ0o7TXlCdUtZLFVBQVMsRUF3QmhCO016QnZLRztReUJpSlEsaUJBQWdCLEVBb0JuQjtRekI3TGI7VXlCMktvQixvQnBEeFFjLEVvRHlRakI7UXpCSEc7VXlCTUksbUJwRDVRVTtVb0Q2UVYsa0JBQWlCLEVBQ3BCO1F6QmpMckI7VXlCbUx3QixnQkFBZTtVQUNmLGFBQVksRUFDZjtRekJyTHJCO1V5QndMb0Isb0JwRHJSYyxFb0R5UmpCO1V6QjVMakI7WXlCMEx3QixnQkFBZSxFQUNsQixFQUFBOztBekJHckI7RXlCTUksbUJBQWtCO0VBQ2xCLFlBQVc7RUFDWCwwQnZIM1NpQjtFdUg0U2pCLGlCQUFnQjtFQXNCaEIsMkNBQTJDLEVBOEQ5QztFekJ4Rkc7O0l5Qk9JLFlBQVcsRUFDZDtFekJKRDtJeUJNSSxtQkFBa0I7SUFDbEIsc0JBQXFCLEVBQ3hCO0V6QkpEO0l5Qk1JLDJCQUEwQjtJQUkxQjs7Ozs7VUFLRSxFQUNMO0l6QmRHO015Qk1DLFlBQVUsRUFDVjtFekJ0QlQ7SXlCaUNRLGNBQWEsRUFDaEI7RWxIckxEO0l5Rm1KSjtNeUJxQ0ssa0N2SHhVZ0I7TXVIeVViLGdDdkh6VWE7TXVIMFViLGlDdkgxVWEsRXVIZ1lwQjtNekI3RkQ7UXlCeUNZLHNCQUFxQjtRQUNy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ZDtFekI5Z0JUO0l5QmloQlEsZUFBYyxFQUNqQixFQUFBOztBQUdMO0V6QnZESTtJeUJ5REksK0JBQTZCLEVBQ2hDLEVBQUE7O0FBR0w7RXpCM3lCUTtJeUI4eUJJLFlBQVcsRUFPZDtJekIzeEJHO015QnN4QkksV0FBVSxFQUNiO0l6Qnh5QkQ7TXlCMHlCSSxXQUFVLEVBQ2I7RXpCNUZUO0l5QmlHUSxXQUFVLEVBQ2IsRUFBQTs7QUM5MEJEO0VBQ0ksaUJBQWdCLEVBQ25COztBQUlEO0VBQ0ksY0FBWSxFQUNmOztBQVZUO0VBY1EsaUJBQWdCO0VBQ2hCLFVBQVMsRUFDWjs7QUFoQkw7RUFvQlEsNEJBQTJCLEVBSzlCO0VBSkc7O0lBRUksY0FBYSxFQUNoQjs7QUF4QlQ7RUE2QlksbUJBQWlCLEVBQ3BCOztBQTlCVDtFQWlDWSxjQUFhLEVBQ2hCOztBQWxDVDtFQXNDZ0Isa0JBQWlCLEVBSXBCO0VBMUNiO0lBd0NvQixjQUFhLEVBQ2hCOztBQUdMO0VBRUksWUFBVSxFQUNiOztBQS9DYjtFQW1EUSxpQkFBZ0IsRUFDbkI7O0FBS0w7RUFDSSx1QkFBcUI7RUFDckIsbUJBQWlCO0VBQ2pCLHdCQUFzQjtFQUN0QixlQUFjLEVBSWpCO0VBUkQ7SUFNUSx3QkFBc0IsRUFDekIiLCJmaWxlIjoic3R5bGVzLm1pbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbiAqIFZlcnNpb24gNi4yLjRcbiAqIGZvdW5kYXRpb24uenVyYi5jb21cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AaW1wb3J0IHVybChcIi8vZmFzdC5mb250cy5uZXQvdC8xLmNzcz9hcGlUeXBlPWNzcyZwcm9qZWN0aWQ9MTAxMmJlZGItMzFmOC00NWZiLWI0NTYtOTIwZGE4YTFkZTI5XCIpO1xuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLCAuc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIsIC5zbGlkZS1pbi11cC5tdWktZW50ZXIsIC5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIsIC5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUsIC5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLCAuc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSwgLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSwgLmZhZGUtaW4ubXVpLWVudGVyLCAuZmFkZS1vdXQubXVpLWxlYXZlLCAuaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLCAuaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLCAuaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIsIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciwgLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLCAuaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUsIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUsIC5zY2FsZS1pbi11cC5tdWktZW50ZXIsIC5zY2FsZS1pbi1kb3duLm11aS1lbnRlciwgLnNjYWxlLW91dC11cC5tdWktbGVhdmUsIC5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUsIC5zcGluLWluLm11aS1lbnRlciwgLnNwaW4tb3V0Lm11aS1sZWF2ZSwgLnNwaW4taW4tY2N3Lm11aS1lbnRlciwgLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuXG4vKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG4vKipcbiAgICogMS4gU2V0IGRlZmF1bHQgZm9udCBmYW1pbHkgdG8gc2Fucy1zZXJpZi5cbiAgICogMi4gUHJldmVudCBpT1MgYW5kIElFIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgZGV2aWNlIG9yaWVudGF0aW9uIGNoYW5nZSxcbiAgICogICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuICAgKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAgICogUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuICAgKi9cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4gICAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExXG4gICAqIGFuZCBGaXJlZm94LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuICAgKi9cbmFydGljbGUsXG5hc2lkZSxcbmRldGFpbHMsXG5maWdjYXB0aW9uLFxuZmlndXJlLFxuZm9vdGVyLFxuaGVhZGVyLFxuaGdyb3VwLFxubWFpbixcbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICAgKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBQcmV2ZW50IG1vZGVybiBicm93c2VycyBmcm9tIGRpc3BsYXlpbmcgYGF1ZGlvYCB3aXRob3V0IGNvbnRyb2xzLlxuICAgKiBSZW1vdmUgZXhjZXNzIGhlaWdodCBpbiBpT1MgNSBkZXZpY2VzLlxuICAgKi9cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICAgKiBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4gICAqL1xuW2hpZGRlbl0sXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogTGlua3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAgICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLyoqXG4gICAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAgICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICAgKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxlIHNldCB0byBgYm9sZGVyYCBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuZGZuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHZhcmlhYmxlIGBoMWAgZm9udC1zaXplIGFuZCBtYXJnaW4gd2l0aGluIGBzZWN0aW9uYCBhbmQgYGFydGljbGVgXG4gICAqIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuICAgKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG4vKipcbiAgICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuICAgKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAgICovXG5pbWcge1xuICBib3JkZXI6IDA7IH1cblxuLyoqXG4gICAqIENvcnJlY3Qgb3ZlcmZsb3cgbm90IGhpZGRlbiBpbiBJRSA5LzEwLzExLlxuICAgKi9cbnN2Zzpub3QoOnJvb3QpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAgICogQWRkcmVzcyBtYXJnaW4gbm90IHByZXNlbnQgaW4gSUUgOC85IGFuZCBTYWZhcmkuXG4gICAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAgICogQWRkcmVzcyBkaWZmZXJlbmNlcyBiZXR3ZWVuIEZpcmVmb3ggYW5kIG90aGVyIGJyb3dzZXJzLlxuICAgKi9cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDsgfVxuXG4vKipcbiAgICogQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xucHJlIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gICAqIEFkZHJlc3Mgb2RkIGBlbWAtdW5pdCBmb250IHNpemUgcmVuZGVyaW5nIGluIGFsbCBicm93c2Vycy5cbiAgICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuLyogRm9ybXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICAgKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gICAqL1xuLyoqXG4gICAqIDEuIENvcnJlY3QgY29sb3Igbm90IGJlaW5nIGluaGVyaXRlZC5cbiAgICogICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4gICAqIDIuIENvcnJlY3QgZm9udCBwcm9wZXJ0aWVzIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqIDMuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi9cbiAgbWFyZ2luOiAwO1xuICAvKiAzICovIH1cblxuLyoqXG4gICAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICAgKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIGZvciBgYnV0dG9uYCBhbmQgYHNlbGVjdGAuXG4gICAqIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4gICAqIENvcnJlY3QgYGJ1dHRvbmAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveCwgSUUgOC85LzEwLzExLCBhbmQgT3BlcmEuXG4gICAqIENvcnJlY3QgYHNlbGVjdGAgc3R5bGUgaW5oZXJpdGFuY2UgaW4gRmlyZWZveC5cbiAgICovXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuXG4vKipcbiAgICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAgICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gICAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAgICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAgICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICAgKi9cbmJ1dHRvbixcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbmlucHV0W3R5cGU9XCJyZXNldFwiXSxcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqL1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC8qIDMgKi8gfVxuXG4vKipcbiAgICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICovXG5idXR0b25bZGlzYWJsZWRdLFxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgaW5uZXIgcGFkZGluZyBhbmQgYm9yZGVyIGluIEZpcmVmb3ggNCsuXG4gICAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gICAqIEFkZHJlc3MgRmlyZWZveCA0KyBzZXR0aW5nIGBsaW5lLWhlaWdodGAgb24gYGlucHV0YCB1c2luZyBgIWltcG9ydGFudGAgaW5cbiAgICogdGhlIFVBIHN0eWxlc2hlZXQuXG4gICAqL1xuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsOyB9XG5cbi8qKlxuICAgKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gICAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gICAqXG4gICAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gICAqL1xuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gICAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gICAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAgICovXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4vKipcbiAgICogMS4gQWRkcmVzcyBgYXBwZWFyYW5jZWAgc2V0IHRvIGBzZWFyY2hmaWVsZGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4gICAqL1xuaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAvKiAyICovIH1cblxuLyoqXG4gICAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBzZWFyY2ggY2FuY2VsIGJ1dHRvbiBpbiBTYWZhcmkgYW5kIENocm9tZSBvbiBPUyBYLlxuICAgKiBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4gICAqIHBhZGRpbmcgKGFuZCBgdGV4dGZpZWxkYCBhcHBlYXJhbmNlKS5cbiAgICovXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKipcbiAgICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICAgKiBbTk9URV0gV2UgZG9uJ3QgZW5hYmxlIHRoaXMgcnVsZXNldCBpbiBGb3VuZGF0aW9uLCBiZWNhdXNlIHdlIHdhbnQgdGhlIDxmaWVsZHNldD4gZWxlbWVudCB0byBoYXZlIHBsYWluIHN0eWxpbmcuXG4gICAqL1xuLyogZmllbGRzZXQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gICAgbWFyZ2luOiAwIDJweDtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG4gIH0gKi9cbi8qKlxuICAgKiAxLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gICAqIDIuIFJlbW92ZSBwYWRkaW5nIHNvIHBlb3BsZSBhcmVuJ3QgY2F1Z2h0IG91dCBpZiB0aGV5IHplcm8gb3V0IGZpZWxkc2V0cy5cbiAgICovXG5sZWdlbmQge1xuICBib3JkZXI6IDA7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyoqXG4gICAqIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgKGFwcGxpZWQgYnkgYSBydWxlIGFib3ZlKS5cbiAgICogTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4gICAqL1xub3B0Z3JvdXAge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKiBUYWJsZXNcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICAgKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4gICAqL1xudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDsgfVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZzbWFsbG1lZGl1bT0zMGVtJm1lZGl1bT00OGVtJmxhcmdlPTY0ZW0meGxhcmdlPTgwZW0meHhsYXJnZT05MGVtJnh4eGxhcmdlPTExOC43NWVtXCI7IH1cblxuaHRtbCB7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0OyB9XG5cbmJvZHkge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMyYzJmMmY7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuI21hcF9jYW52YXMgaW1nLFxuI21hcF9jYW52YXMgZW1iZWQsXG4jbWFwX2NhbnZhcyBvYmplY3QsXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7IH1cblxuYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSBidXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLnJvdyB7XG4gIG1heC13aWR0aDogOTMuMTI1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTEuMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAucm93IC5yb3cge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTMuMTI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnJvdyAucm93IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI1cmVtOyB9IH1cbiAgLnJvdy5leHBhbmRlZCB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5yb3cuaXMtY29sbGFwc2UtY2hpbGQsXG4gIC5yb3cuY29sbGFwc2UgPiAuY29sdW1uID4gLnJvdyxcbiAgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zID4gLnJvdyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgZmxleDogMSAxIDBweDtcbiAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICBtaW4td2lkdGg6IGluaXRpYWw7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9IH1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLnNtYWxsLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMyU7IH1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlOyB9XG5cbi5zbWFsbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG5cbi5zbWFsbC0zIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtNCB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLnNtYWxsLTUge1xuICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG5cbi5zbWFsbC02IHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7IH1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuXG4uc21hbGwtNyB7XG4gIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLnNtYWxsLTgge1xuICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG5cbi5zbWFsbC05IHtcbiAgZmxleDogMCAwIDc1JTtcbiAgbWF4LXdpZHRoOiA3NSU7IH1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuXG4uc21hbGwtMTAge1xuICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlOyB9XG5cbi5zbWFsbC0xMSB7XG4gIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG5cbi5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyOyB9XG5cbi5zbWFsbC1vcmRlci0zIHtcbiAgb3JkZXI6IDM7IH1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDsgfVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1OyB9XG5cbi5zbWFsbC1vcmRlci02IHtcbiAgb3JkZXI6IDY7IH1cblxuLnNtYWxsLXVwLTEge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLnNtYWxsLXVwLTIge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG5cbi5zbWFsbC11cC0zIHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cblxuLnNtYWxsLXVwLTUge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlOyB9XG5cbi5zbWFsbC11cC02IHtcbiAgZmxleC13cmFwOiB3cmFwOyB9XG4gIC5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyB7XG4gIGZsZXgtd3JhcDogd3JhcDsgfVxuICAuc21hbGwtdXAtNyA+IC5jb2x1bW4sIC5zbWFsbC11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cblxuLnNtYWxsLXVwLTgge1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgbWF4LXdpZHRoOiAxMi41JTsgfVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDsgfVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAubWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5tZWRpdW0tMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5tZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5tZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5tZWRpdW0tOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAubWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAubWVkaXVtLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5tZWRpdW0tdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5tZWRpdW0tdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5tZWRpdW0tdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cubWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucm93Lm1lZGl1bS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5tZWRpdW0tdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc21hbGxtZWRpdW0tMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLnNtYWxsbWVkaXVtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnNtYWxsbWVkaXVtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbG1lZGl1bS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbG1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTsgfVxuICAuc21hbGxtZWRpdW0tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAuc21hbGxtZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnNtYWxsbWVkaXVtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5zbWFsbG1lZGl1bS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC5zbWFsbG1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTsgfVxuICAuc21hbGxtZWRpdW0tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAuc21hbGxtZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnNtYWxsbWVkaXVtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5zbWFsbG1lZGl1bS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAuc21hbGxtZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLnNtYWxsbWVkaXVtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC5zbWFsbG1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsbWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnNtYWxsbWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuc21hbGxtZWRpdW0tb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnNtYWxsbWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5zbWFsbG1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAuc21hbGxtZWRpdW0tb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnNtYWxsbWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5zbWFsbG1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAuc21hbGxtZWRpdW0tdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnNtYWxsbWVkaXVtLXVwLTEgPiAuY29sdW1uLCAuc21hbGxtZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5zbWFsbG1lZGl1bS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5zbWFsbG1lZGl1bS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5zbWFsbG1lZGl1bS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5zbWFsbG1lZGl1bS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC5zbWFsbG1lZGl1bS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5zbWFsbG1lZGl1bS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC5zbWFsbG1lZGl1bS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAuc21hbGxtZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5zbWFsbG1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zbWFsbG1lZGl1bS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LnNtYWxsbWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnNtYWxsbWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAucm93LnNtYWxsbWVkaXVtLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnNtYWxsbWVkaXVtLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc21hbGxtZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGxtZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnNtYWxsbWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGxtZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5sYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMlOyB9XG4gIC5sYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAubGFyZ2UtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5sYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAubGFyZ2UtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5sYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLmxhcmdlLXVwLTEge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAubGFyZ2UtdXAtMiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtdXAtNCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtdXAtNSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubGFyZ2UtdXAtNyB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubGFyZ2UtdXAtOCB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtZXhwYW5kIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9IH1cblxuLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy5sYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC54bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54bGFyZ2UtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnhsYXJnZS01IHtcbiAgICBmbGV4OiAwIDAgNDEuNjY2NjclO1xuICAgIG1heC13aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnhsYXJnZS04IHtcbiAgICBmbGV4OiAwIDAgNjYuNjY2NjclO1xuICAgIG1heC13aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54bGFyZ2UtMTEge1xuICAgIGZsZXg6IDAgMCA5MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC54bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9XG4gIC54bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnhsYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueGxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgbWF4LXdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueGxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueGxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueGxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjAlO1xuICAgICAgbWF4LXdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueGxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueGxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTQuMjg1NzElO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueGxhcmdlLXVwLTggPiAuY29sdW1uLCAueGxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTIuNSU7XG4gICAgICBtYXgtd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkgYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLnhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgZmxleDogMCAwIDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5yb3cueGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93LnhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLnhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC54bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC54eGxhcmdlLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAueHhsYXJnZS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLTQge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLnh4bGFyZ2UtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC54eGxhcmdlLTcge1xuICAgIGZsZXg6IDAgMCA1OC4zMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLnh4bGFyZ2UtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAueHhsYXJnZS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlOyB9XG4gIC54eGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC54eGxhcmdlLTEwIHtcbiAgICBmbGV4OiAwIDAgODMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogODMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC54eGxhcmdlLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS0xMiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueHhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueHhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueHhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueHhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueHhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfVxuICAueHhsYXJnZS11cC0xIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0xID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIC54eGxhcmdlLXVwLTIge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTIgPiAuY29sdW1uLCAueHhsYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gIC54eGxhcmdlLXVwLTMge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTMgPiAuY29sdW1uLCAueHhsYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDMzLjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLXVwLTQge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTQgPiAuY29sdW1uLCAueHhsYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDI1JTtcbiAgICAgIG1heC13aWR0aDogMjUlOyB9XG4gIC54eGxhcmdlLXVwLTUge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTUgPiAuY29sdW1uLCAueHhsYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDIwJTtcbiAgICAgIG1heC13aWR0aDogMjAlOyB9XG4gIC54eGxhcmdlLXVwLTYge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTYgPiAuY29sdW1uLCAueHhsYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE2LjY2NjY3JTtcbiAgICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLXVwLTcge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTcgPiAuY29sdW1uLCAueHhsYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDE0LjI4NTcxJTtcbiAgICAgIG1heC13aWR0aDogMTQuMjg1NzElOyB9XG4gIC54eGxhcmdlLXVwLTgge1xuICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgIC54eGxhcmdlLXVwLTggPiAuY29sdW1uLCAueHhsYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDEyLjUlO1xuICAgICAgbWF4LXdpZHRoOiAxMi41JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWV4cGFuZCB7XG4gICAgZmxleDogMSAxIDBweDsgfSB9XG5cbi5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbiwgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1ucyB7XG4gIGZsZXg6IDAgMCAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICAgICAgZmxleDogMSAxIDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAueHhsYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAueHhsYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtMSB7XG4gICAgZmxleDogMCAwIDguMzMzMzMlO1xuICAgIG1heC13aWR0aDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTsgfVxuICAueHhsYXJnZS0yIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjclOyB9XG4gIC54eGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMyB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC54eGxhcmdlLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtNiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAueHhsYXJnZS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMlOyB9XG4gIC54eGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC54eGxhcmdlLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtOSB7XG4gICAgZmxleDogMCAwIDc1JTtcbiAgICBtYXgtd2lkdGg6IDc1JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAueHhsYXJnZS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTsgfVxuICAueHhsYXJnZS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLnh4bGFyZ2UtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NyU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnh4bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnh4bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH1cbiAgLnh4bGFyZ2UtdXAtMSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLnh4bGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC54eGxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAueHhsYXJnZS11cC0yIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0yID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAueHhsYXJnZS11cC0zIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC0zID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAzMy4zMzMzMyU7XG4gICAgICBtYXgtd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueHhsYXJnZS11cC00IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC00ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgICBtYXgtd2lkdGg6IDI1JTsgfVxuICAueHhsYXJnZS11cC01IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC01ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgICBtYXgtd2lkdGg6IDIwJTsgfVxuICAueHhsYXJnZS11cC02IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC02ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNi42NjY2NyU7XG4gICAgICBtYXgtd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAueHhsYXJnZS11cC03IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC03ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxNC4yODU3MSU7XG4gICAgICBtYXgtd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAueHhsYXJnZS11cC04IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAueHhsYXJnZS11cC04ID4gLmNvbHVtbiwgLnh4bGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDAgMCAxMi41JTtcbiAgICAgIG1heC13aWR0aDogMTIuNSU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1leHBhbmQge1xuICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG4ucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW4sIC5yb3cueHhsYXJnZS11bnN0YWNrID4gLmNvbHVtbnMge1xuICBmbGV4OiAwIDAgMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJvdy54eGxhcmdlLXVuc3RhY2sgPiAuY29sdW1uLCAucm93Lnh4bGFyZ2UtdW5zdGFjayA+IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLnh4bGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgLnh4bGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC54eGxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG4uc2hyaW5rIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4uY29sdW1uLmFsaWduLXRvcCwgLmFsaWduLXRvcC5jb2x1bW5zIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uY29sdW1uLmFsaWduLWJvdHRvbSwgLmFsaWduLWJvdHRvbS5jb2x1bW5zIHtcbiAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH1cblxuLmNvbHVtbi5hbGlnbi1taWRkbGUsIC5hbGlnbi1taWRkbGUuY29sdW1ucyB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uY29sdW1uLmFsaWduLXN0cmV0Y2gsIC5hbGlnbi1zdHJldGNoLmNvbHVtbnMge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5zbWFsbC1vcmRlci0xIHtcbiAgb3JkZXI6IDE7IH1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzOyB9XG5cbi5zbWFsbC1vcmRlci00IHtcbiAgb3JkZXI6IDQ7IH1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTsgfVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5zbWFsbG1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAuc21hbGxtZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnNtYWxsbWVkaXVtLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5zbWFsbG1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAuc21hbGxtZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnNtYWxsbWVkaXVtLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2Utb3JkZXItMSB7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC5sYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubGFyZ2Utb3JkZXItNCB7XG4gICAgb3JkZXI6IDQ7IH1cbiAgLmxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC5sYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLnhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7IH1cbiAgLnhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC54eGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54eGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyOyB9XG4gIC54eGxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC54eGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54eGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1OyB9XG4gIC54eGxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAueHhsYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjsgfVxuICAueHhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueHhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAueHhsYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTsgfVxuICAueHhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxucCB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgaDEgc21hbGwsXG4gIGgyIHNtYWxsLFxuICBoMyBzbWFsbCxcbiAgaDQgc21hbGwsXG4gIGg1IHNtYWxsLFxuICBoNiBzbWFsbCB7XG4gICAgY29sb3I6ICM2NzY3Njc7XG4gICAgbGluZS1oZWlnaHQ6IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDEuNXJlbTsgfVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtOyB9XG5cbmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuXG5oNSB7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtOyB9XG5cbmg2IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTsgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07IH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS45Mzc1cmVtOyB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTsgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtOyB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5hIHtcbiAgY29sb3I6ICMwQjg2NTE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzA5NzM0NjsgfVxuICBhIGltZyB7XG4gICAgYm9yZGVyOiAwOyB9XG5cbmhyIHtcbiAgbWF4LXdpZHRoOiA5My4xMjVyZW07XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY3Njc2NztcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIG1hcmdpbjogMS4yNXJlbSBhdXRvO1xuICBjbGVhcjogYm90aDsgfVxuXG51bCxcbm9sLFxuZGwge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlOyB9XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0OyB9XG5cbnVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtOyB9XG5cbnVsIHVsLCBvbCB1bCwgdWwgb2wsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gIGRsIGR0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM2NzY3Njc7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS42O1xuICAgIGNvbG9yOiAjOGE4YThhOyB9XG5cbmNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjOGE4YThhOyB9XG4gIGNpdGU6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7IH1cblxuYWJiciB7XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBjdXJzb3I6IGhlbHA7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzBhMGEwYTsgfVxuXG5jb2RlIHtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjc2NzY3O1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtOyB9XG5cbmtiZCB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7IH1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzhhOGE4YTsgfVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjsgfVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBwICsgLnN0YXQge1xuICAgIG1hcmdpbi10b3A6IC0xcmVtOyB9XG5cbi5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuc21hbGxtZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5zbWFsbG1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAuc21hbGxtZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuc21hbGxtZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAueGxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAueGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueGxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnh4bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54eGxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC54eGxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLnh4bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAueHhsYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLnh4bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnh4bGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAueHhsYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgLmhpZGUtZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgdGFibGUuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdGhlYWQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRib2R5LnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgdGQuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cbiAgLmlyIGE6YWZ0ZXIsXG4gIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gIGFbaHJlZl49JyMnXTphZnRlciB7XG4gICAgY29udGVudDogJyc7IH1cbiAgYWJiclt0aXRsZV06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cbiAgdHIsXG4gIGltZyB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQHBhZ2Uge1xuICAgIG1hcmdpbjogMC41Y207IH1cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMzsgfVxuICBoMixcbiAgaDMge1xuICAgIHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9IH1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBCODY1MTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzA5NzI0NTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnRpbnkge1xuICAgIGZvbnQtc2l6ZTogMC42cmVtOyB9XG4gIC5idXR0b24uc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAuYnV0dG9uLmxhcmdlIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gIC5idXR0b24ucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBCODY1MTtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTZiNDE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzc3NztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY1ZjVmO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24ud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM1ODQwO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGEzMTE2O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi5ob2xsb3cge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwQjg2NTE7XG4gICAgY29sb3I6ICMwQjg2NTE7IH1cbiAgICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzA2NDMyOTtcbiAgICAgIGNvbG9yOiAjMDY0MzI5OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjMEI4NjUxO1xuICAgICAgY29sb3I6ICMwQjg2NTE7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMwNjQzMjk7XG4gICAgICAgIGNvbG9yOiAjMDY0MzI5OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5IHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM3Nzc7XG4gICAgICBjb2xvcjogIzc3NzsgfVxuICAgICAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzYzNjM2M7XG4gICAgICAgIGNvbG9yOiAjM2MzYzNjOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgICAgIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMxNTc1Mzk7XG4gICAgICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgICAgIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4MDU3MDA7XG4gICAgICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gICAgLmJ1dHRvbi5ob2xsb3cuYWxlcnQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2VjNTg0MDtcbiAgICAgIGNvbG9yOiAjZWM1ODQwOyB9XG4gICAgICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICM4ODFmMGU7XG4gICAgICAgIGNvbG9yOiAjODgxZjBlOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBCODY1MTtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQucHJpbWFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ucHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwQjg2NTE7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeSB7XG4gICAgICBvcGFjaXR5OiAwLjI1O1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuICAgICAgLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuc3VjY2Vzczpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0uc3VjY2Vzczpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nIHtcbiAgICAgIG9wYWNpdHk6IDAuMjU7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gICAgICAuYnV0dG9uLmRpc2FibGVkLndhcm5pbmc6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZzpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi5kaXNhYmxlZC5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQge1xuICAgICAgb3BhY2l0eTogMC4yNTtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAgIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6aG92ZXIsIC5idXR0b24uZGlzYWJsZWQuYWxlcnQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydDpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwLjRlbTtcbiAgICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgdG9wOiAtMC4xZW07IH1cblxuW3R5cGU9J3RleHQnXSwgW3R5cGU9J3Bhc3N3b3JkJ10sIFt0eXBlPSdkYXRlJ10sIFt0eXBlPSdkYXRldGltZSddLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgW3R5cGU9J21vbnRoJ10sIFt0eXBlPSd3ZWVrJ10sIFt0eXBlPSdlbWFpbCddLCBbdHlwZT0nbnVtYmVyJ10sIFt0eXBlPSdzZWFyY2gnXSwgW3R5cGU9J3RlbCddLCBbdHlwZT0ndGltZSddLCBbdHlwZT0ndXJsJ10sIFt0eXBlPSdjb2xvciddLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NzY3Njc7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IH1cbiAgW3R5cGU9J3RleHQnXTpmb2N1cywgW3R5cGU9J3Bhc3N3b3JkJ106Zm9jdXMsIFt0eXBlPSdkYXRlJ106Zm9jdXMsIFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXTpmb2N1cywgW3R5cGU9J21vbnRoJ106Zm9jdXMsIFt0eXBlPSd3ZWVrJ106Zm9jdXMsIFt0eXBlPSdlbWFpbCddOmZvY3VzLCBbdHlwZT0nbnVtYmVyJ106Zm9jdXMsIFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgW3R5cGU9J3RlbCddOmZvY3VzLCBbdHlwZT0ndGltZSddOmZvY3VzLCBbdHlwZT0ndXJsJ106Zm9jdXMsIFt0eXBlPSdjb2xvciddOmZvY3VzLFxuICB0ZXh0YXJlYTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjNjc2NzY3O1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG5cbnRleHRhcmVhIHtcbiAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gIHRleHRhcmVhW3Jvd3NdIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cblxuaW5wdXQ6OnBsYWNlaG9sZGVyLFxudGV4dGFyZWE6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM2NzY3Njc7IH1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBkZWZhdWx0OyB9XG5cblt0eXBlPSdzdWJtaXQnXSxcblt0eXBlPSdidXR0b24nXSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lOyB9XG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjNjc2NzY3O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmbGV4OiAwIDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwOyB9XG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7IH1cblxubGVnZW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXgtd2lkdGg6IDEwMCU7IH1cblxuLmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY3Njc2NztcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgcGFkZGluZzogMCAwLjE4NzVyZW07XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtOyB9XG5cbnNlbGVjdCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NzY3Njc7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpOyB9IH1cbiAgc2VsZWN0OmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgc2VsZWN0W211bHRpcGxlXSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzNiwgODgsIDY0LCAwLjEpO1xuICBib3JkZXItY29sb3I6ICNlYzU4NDA7IH1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2VjNTg0MDsgfVxuXG4uZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZWM1ODQwOyB9XG4gIC5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbG1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1zbWFsbG1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkgYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGxtZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbG1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSBhbmQgKG1heC13aWR0aDogMTE4LjY4NzVlbSkge1xuICAuaGlkZS1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gIC5zaG93LWZvci14eGxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg5LjkzNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkgYW5kIChtYXgtd2lkdGg6IDExOC42ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXh4bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTM3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAuc2hvdy1mb3IteHhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTsgfVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bzsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50OyB9XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuXG4uY2xlYXJmaXg6OmJlZm9yZSwgLmNsZWFyZml4OjphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogdGFibGU7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxOyB9XG5cbi5jbGVhcmZpeDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwOyB9XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogIzBCODY1MTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwOyB9XG4gIDpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7IH1cbiAgLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcrJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTAuNXJlbTsgfVxuICAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4oCTJzsgfVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gIDpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2OyB9XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4zZW07XG4gIG1pbi13aWR0aDogMi4xZW07XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogIzBCODY1MTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJhZGdlLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc3NztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2Uuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2Uud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYmFkZ2UuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwOyB9XG4gIC5icmVhZGNydW1iczo6YmVmb3JlLCAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAuYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuYnJlYWRjcnVtYnMgbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLmJyZWFkY3J1bWJzIGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgICAgIGNvbG9yOiAjNjc2NzY3O1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgICBtYXJnaW46IDAgMC43NXJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuYnJlYWRjcnVtYnMgYSB7XG4gICAgY29sb3I6ICMwQjg2NTE7IH1cbiAgICAuYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuYnJlYWRjcnVtYnMgLmRpc2FibGVkIHtcbiAgICBjb2xvcjogIzY3Njc2NztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gICAgY29udGVudDogJyAnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDFweDtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH1cbiAgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG4gIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEI4NjUxO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTZiNDE7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzc3O1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNWY1ZjVmO1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gICAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgICAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGEzMTE2O1xuICAgICAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5jYWxsb3V0IHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsgfVxuICAuY2FsbG91dCA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuICAuY2FsbG91dCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jYWxsb3V0LnByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2ZiZTc7IH1cbiAgLmNhbGxvdXQuc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViOyB9XG4gIC5jYWxsb3V0LnN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWZhZWE7IH1cbiAgLmNhbGxvdXQud2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjNkOTsgfVxuICAuY2FsbG91dC5hbGVydCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTZlMjsgfVxuICAuY2FsbG91dC5zbWFsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTsgfVxuICAuY2FsbG91dC5sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07IH1cblxuLmNsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgY29sb3I6ICM4YThhOGE7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5jbG9zZS1idXR0b24ge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gICAgY29sb3I6ICMwYTBhMGE7IH1cblxuLmlzLWRyaWxsZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaXMtZHJpbGxkb3duIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG5cbi5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAtMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cblxuLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA2cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMEI4NjUxO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgcmlnaHQ6IDFyZW07IH1cblxuLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDZweDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMEI4NjUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtOyB9XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY3Njc2NztcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIHdpZHRoOiAzMDBweDtcbiAgei1pbmRleDogMTA7IH1cbiAgLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLnNtYWxsIHtcbiAgd2lkdGg6IDIwMHB4OyB9XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4OyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMTAwJTsgfVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbiAgdG9wOiAxMDAlOyB9XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXI6IGluc2V0IDVweDtcbiAgYm9yZGVyLWNvbG9yOiAjMEI4NjUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgcmlnaHQ6IDVweDtcbiAgbWFyZ2luLXRvcDogLTJweDsgfVxuXG5bZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7IH1cblxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG4gIG1hcmdpbi10b3A6IC0zcHg7IH1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNXB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBCODY1MTtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzBCODY1MSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwQjg2NTE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUuc21hbGxtZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUuc21hbGxtZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnNtYWxsbWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUuc21hbGxtZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUuc21hbGxtZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LnNtYWxsbWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnNtYWxsbWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5zbWFsbG1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUuc21hbGxtZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5zbWFsbG1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwQjg2NTE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IC0zcHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwQjg2NTE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiAjMEI4NjUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiAtMnB4OyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMEI4NjUxO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDEwMCU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMEI4NjUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwQjg2NTE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmRyb3Bkb3duLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogIzBCODY1MSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbWFyZ2luLXRvcDogLTJweDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlOyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgICBtYXJnaW4tdG9wOiAtM3B4OyB9XG4gIC5kcm9wZG93bi5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwQjg2NTEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDsgfVxuICAuZHJvcGRvd24ubWVudS54eGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgNXB4O1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBCODY1MTtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwOyB9IH1cblxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDsgfVxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogNXB4O1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiBhdXRvOyB9XG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7IH1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzY3Njc2NzsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCA1cHg7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMEI4NjUxIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7IH1cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDVweDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwQjg2NTE7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmZsZXgtdmlkZW8gaWZyYW1lLFxuICAuZmxleC12aWRlbyBvYmplY3QsXG4gIC5mbGV4LXZpZGVvIGVtYmVkLFxuICAuZmxleC12aWRlbyB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyB9XG4gIC5mbGV4LXZpZGVvLnZpbWVvIHtcbiAgICBwYWRkaW5nLXRvcDogMDsgfVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogIzBCODY1MTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgLmxhYmVsLnNlY29uZGFyeSB7XG4gICAgYmFja2dyb3VuZDogIzc3NztcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwud2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAubGFiZWwuYWxlcnQge1xuICAgIGJhY2tncm91bmQ6ICNlYzU4NDA7XG4gICAgY29sb3I6ICNmZWZlZmU7IH1cblxuLm1lZGlhLW9iamVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC5tZWRpYS1vYmplY3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMjkuOTM3NWVtKSB7XG4gICAgLm1lZGlhLW9iamVjdC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5tZWRpYS1vYmplY3Quc3RhY2stZm9yLXNtYWxsIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGZsZXg6IDAgMSBhdXRvOyB9XG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb246bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ubWFpbi1zZWN0aW9uIHtcbiAgICBmbGV4OiAxIDEgMHB4OyB9XG5cbi5tZW51IHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLm1lbnUgPiBsaSB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm1lbnUgPiBsaSB7XG4gICAgICBvdXRsaW5lOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTsgfVxuICAubWVudSBpbnB1dCxcbiAgLm1lbnUgYSxcbiAgLm1lbnUgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5tZW51ID4gbGkgPiBhIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7IH1cbiAgICAubWVudSA+IGxpID4gYSBpbWcsXG4gICAgLm1lbnUgPiBsaSA+IGEgaSxcbiAgICAubWVudSA+IGxpID4gYSBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtOyB9XG4gIC5tZW51ID4gbGkge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gIC5tZW51LnZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAubWVudS52ZXJ0aWNhbCA+IGxpIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgLm1lbnUudmVydGljYWwgPiBsaSA+IGEge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gICAgICAubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLm1lbnUuc21hbGxtZWRpdW0taG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLm1lbnUuc21hbGxtZWRpdW0taG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAubWVudS5zbWFsbG1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5tZW51LnNtYWxsbWVkaXVtLXZlcnRpY2FsID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAubWVudS5zbWFsbG1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAgICAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9XG4gICAgICAubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpID4gYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLm1lbnUueGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkgPiBhIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubWVudS54eGxhcmdlLWhvcml6b250YWwge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgICAgIC5tZW51Lnh4bGFyZ2UtaG9yaXpvbnRhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAubWVudS54eGxhcmdlLXZlcnRpY2FsIHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDsgfVxuICAgICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpIHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm1lbnUueHhsYXJnZS1ob3Jpem9udGFsIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gICAgICAubWVudS54eGxhcmdlLWhvcml6b250YWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLm1lbnUueHhsYXJnZS12ZXJ0aWNhbCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgIC5tZW51Lnh4bGFyZ2UtdmVydGljYWwgPiBsaSA+IGEge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9IH1cbiAgLm1lbnUuc2ltcGxlIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9XG4gIC5tZW51LnNpbXBsZSBhIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIC5tZW51LmFsaWduLXJpZ2h0IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIC5tZW51LmV4cGFuZGVkID4gbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7IH1cbiAgLm1lbnUuZXhwYW5kZWQgPiBsaTpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVudS5pY29uLXRvcCA+IGxpID4gYSB7XG4gICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwOyB9XG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaW1nLFxuICAgIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIGksXG4gICAgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgc3ZnIHtcbiAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtOyB9XG4gIC5tZW51Lm5lc3RlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07IH1cbiAgLm1lbnUgLmFjdGl2ZSA+IGEge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgIGJhY2tncm91bmQ6ICMwQjg2NTE7IH1cblxuLm1lbnUtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07IH1cblxuLm1lbnUtY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5odG1sLFxuYm9keSB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXItaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlOyB9XG4gIC5vZmYtY2FudmFzLXdyYXBwZXItaW5uZXI6OmJlZm9yZSwgLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5vZmYtY2FudmFzLXdyYXBwZXItaW5uZXI6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LFxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZy1ib3R0b206IDAuMXB4O1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7IH1cblxuLmpzLW9mZi1jYW52YXMtZXhpdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC41cyBlYXNlOyB9XG5cbi5vZmYtY2FudmFzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICB6LWluZGV4OiAtMTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcyB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICBsZWZ0OiAtMjUwcHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAyNTBweDsgfVxuICAgIC5pcy1vcGVuLWxlZnQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgcmlnaHQ6IC0yNTBweDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDI1MHB4OyB9XG4gICAgLmlzLW9wZW4tcmlnaHQge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1zbWFsbG1lZGl1bSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3Itc21hbGxtZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1zbWFsbG1lZGl1bSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1zbWFsbG1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLXh4bGFyZ2Uge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIHtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IGF1dG87XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteHhsYXJnZSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogYXV0bztcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14eGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9IH1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDsgfVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5vcmJpdC1pbWFnZSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTsgfVxuXG4ub3JiaXQtcHJldmlvdXMsIC5vcmJpdC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1wcmV2aW91cywgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vcmJpdC1uZXh0IHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmZvY3VzLCAub3JiaXQtbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpOyB9XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7IH1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDsgfVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9yYml0LWJ1bGxldHMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgICB3aWR0aDogMS4ycmVtO1xuICAgIGhlaWdodDogMS4ycmVtO1xuICAgIG1hcmdpbjogMC4xcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NzY3Njc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cbiAgICAub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7IH1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhZ2luYXRpb24gbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAucGFnaW5hdGlvbiBhLFxuICAucGFnaW5hdGlvbiBidXR0b24ge1xuICAgIGNvbG9yOiAjMGEwYTBhO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAwOyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGJhY2tncm91bmQ6ICMwQjg2NTE7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC5wYWdpbmF0aW9uIC5kaXNhYmxlZCB7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjNjc2NzY3O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgICAucGFnaW5hdGlvbiAuZGlzYWJsZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gICAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICAgIGNvbG9yOiAjMGEwYTBhOyB9XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBjb250ZW50OiAnXFwwMGFiJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTsgfVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBjb250ZW50OiAnXFwwMGJiJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtOyB9XG5cbi5wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NzY3Njc7XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICAucHJvZ3Jlc3MucHJpbWFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwQjg2NTE7IH1cbiAgLnByb2dyZXNzLnNlY29uZGFyeSAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM3Nzc7IH1cbiAgLnByb2dyZXNzLnN1Y2Nlc3MgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5wcm9ncmVzcy53YXJuaW5nIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDsgfVxuICAucHJvZ3Jlc3MuYWxlcnQgLnByb2dyZXNzLW1ldGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM1ODQwOyB9XG5cbi5wcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEI4NjUxOyB9XG5cbi5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7IH1cblxuLnNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY3Njc2NztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7IH1cbiAgLnNsaWRlci1maWxsLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyOyB9XG5cbi5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwQjg2NTE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnNsaWRlci1oYW5kbGUge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwOTcyNDU7IH1cbiAgLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7IH1cblxuLnNsaWRlci5kaXNhYmxlZCxcbi5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDsgfVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAwLjVyZW07XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAuc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogMS40cmVtO1xuICAgIGhlaWdodDogMS40cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTsgfVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7IH1cbiAgLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICAgIHRvcDogMDsgfVxuICAuc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gICAgYm90dG9tOiAwOyB9XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiBhdXRvOyB9XG4gIC5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgICBib3R0b206IDA7IH1cblxuYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuaHRtbC5pcy1yZXZlYWwtb3Blbixcbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7IH1cblxuLnJldmVhbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDEwMDY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM2NzY3Njc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLnJldmVhbCB7XG4gICAgb3V0bGluZTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnJldmVhbCB7XG4gICAgICBtaW4taGVpZ2h0OiAwOyB9IH1cbiAgLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zLFxuICAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgICBtaW4td2lkdGg6IDA7IH1cbiAgLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogOTMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yZXZlYWwgLnJldmVhbCB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5yZXZlYWwuY29sbGFwc2Uge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiA5My4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnJldmVhbC5zbWFsbCB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWF4LXdpZHRoOiA5My4xMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnJldmVhbC5sYXJnZSB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWF4LXdpZHRoOiA5My4xMjVyZW07IH0gfVxuICAucmV2ZWFsLmZ1bGwge1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAyOS45Mzc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDsgfSB9XG4gIC5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLnN3aXRjaCB7XG4gIGhlaWdodDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG5cbi5zd2l0Y2gtaW5wdXQge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiAjNjc2NzY3O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG4gIGlucHV0ICsgLnN3aXRjaC1wYWRkbGUge1xuICAgIG1hcmdpbjogMDsgfVxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgdG9wOiAwLjI1cmVtO1xuICAgIHdpZHRoOiAxLjVyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIGJhY2tncm91bmQ6ICMwQjg2NTE7IH1cbiAgICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAgIGxlZnQ6IDIuMjVyZW07IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGlucHV0OmZvY3VzIH4gLnN3aXRjaC1wYWRkbGUge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLnN3aXRjaC1hY3RpdmUsIC5zd2l0Y2gtaW5hY3RpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cblxuLnN3aXRjaC1hY3RpdmUge1xuICBsZWZ0OiA4JTtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBpbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHJpZ2h0OiAxNSU7IH1cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuXG4uc3dpdGNoLnRpbnkge1xuICBoZWlnaHQ6IDEuNXJlbTsgfVxuICAuc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGUge1xuICAgIHdpZHRoOiAzcmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC42MjVyZW07IH1cbiAgLnN3aXRjaC50aW55IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgd2lkdGg6IDFyZW07XG4gICAgaGVpZ2h0OiAxcmVtOyB9XG4gIC5zd2l0Y2gudGlueSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAxLjc1cmVtOyB9XG5cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6IDMuNXJlbTtcbiAgICBoZWlnaHQ6IDEuNzVyZW07XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5zd2l0Y2guc21hbGwgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB3aWR0aDogMS4yNXJlbTtcbiAgICBoZWlnaHQ6IDEuMjVyZW07IH1cbiAgLnN3aXRjaC5zbWFsbCBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICBsZWZ0OiAycmVtOyB9XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTsgfVxuICAuc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogNXJlbTtcbiAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07IH1cbiAgLnN3aXRjaC5sYXJnZSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTsgfVxuICAuc3dpdGNoLmxhcmdlIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIGxlZnQ6IDIuNzVyZW07IH1cblxudGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7IH1cbiAgY2FwdGlvbiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtOyB9XG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjhmOGY4O1xuICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gIHRoZWFkIHRyLFxuICB0Zm9vdCB0ciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgdGhlYWQgdGgsXG4gIHRoZWFkIHRkLFxuICB0Zm9vdCB0aCxcbiAgdGZvb3QgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIHRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTsgfVxuICB0Ym9keSB0aCxcbiAgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7IH0gfVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87IH1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzOyB9XG5cbnRhYmxlLmhvdmVyIHRmb290IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWNlYzsgfVxuXG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7IH1cblxudGFibGUuaG92ZXIgdGJvZHkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlY2VjOyB9XG5cbi50YWJsZS1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG4gIC50YWJsZS1zY3JvbGwgdGFibGUge1xuICAgIHdpZHRoOiBhdXRvOyB9XG5cbi50YWJzIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7IH1cbiAgLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBvcmRlcjogMTsgfVxuICAudGFiczo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICB3aWR0aDogYXV0bztcbiAgZmxvYXQ6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzBCODY1MTsgfVxuICAudGFicy5wcmltYXJ5ID4gbGkgPiBhIHtcbiAgICBjb2xvcjogI2ZlZmVmZTsgfVxuICAgIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZDogIzBjOTc1YjsgfVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0OyB9XG4gIC50YWJzLXRpdGxlID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gICAgLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZWZlZmU7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuXG4udGFicy1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRodW1ibmFpbCB7XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAudGh1bWJuYWlsOmhvdmVyLCAudGh1bWJuYWlsOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDExLCAxMzQsIDgxLCAwLjUpOyB9XG5cbi50aXRsZS1iYXIge1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07IH1cblxuLnRpdGxlLWJhci1sZWZ0LFxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsZXg6IDEgMSAwcHg7IH1cblxuLnRpdGxlLWJhci1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi5oYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAjOGE4YThhO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGN1cnNvcjogaGVscDsgfVxuXG4udG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDc1JTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgdG9wOiBjYWxjKDEwMCUgKyAwLjY0OTVyZW0pO1xuICBtYXgtd2lkdGg6IDEwcmVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLnRvb2x0aXA6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMC43NXJlbTtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3R0b206IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cbiAgLnRvb2x0aXAudG9wOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgdG9wOiAxMDAlO1xuICAgIGJvdHRvbTogYXV0bzsgfVxuICAudG9vbHRpcC5sZWZ0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNzVyZW07XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG5cbi50b3AtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgLnRvcC1iYXIsXG4gIC50b3AtYmFyIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2OyB9XG4gIC50b3AtYmFyIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuICAudG9wLWJhciAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAudG9wLWJhciBpbnB1dC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50b3AtYmFyIHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gICAgICAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICAgICAgZmxleDogMSAxIGF1dG87IH1cbiAgICAgIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAxIGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1zbWFsbG1lZGl1bSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXNtYWxsbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1zbWFsbG1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45Mzc1ZW0pIHtcbiAgICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTguNjg3NWVtKSB7XG4gICAgLnRvcC1iYXIuc3RhY2tlZC1mb3IteHhsYXJnZSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH1cbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTE4LjY4NzVlbSkge1xuICAgIC50b3AtYmFyLnN0YWNrZWQtZm9yLXh4bGFyZ2Uge1xuICAgICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLWxlZnQsXG4gICAgICAudG9wLWJhci5zdGFja2VkLWZvci14eGxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTsgfSB9XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1hcmdpbi1yaWdodDogMXJlbTsgfVxuXG4udG9wLWJhci1sZWZ0LFxuLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgYXV0bzsgfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTsgfVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTsgfVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5OyB9XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTsgfVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTsgfVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDsgfVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7IH1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7IH1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxOyB9XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwOyB9XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDsgfVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7IH1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7IH1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7IH1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03OyB9XG5cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpOyB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTsgfSB9XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47IH1cblxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH0gfVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjsgfVxuXG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7IH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMXR1cm4pOyB9IH1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZzsgfVxuXG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7IH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7IH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTsgfSB9XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi5zbG93IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50OyB9XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50OyB9XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDsgfVxuXG4uZWFzZSB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDsgfVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDsgfVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50OyB9XG5cbi5lYXNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7IH1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50OyB9XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7IH1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50OyB9XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50OyB9XG5cbi8qKioqKioqKioqKipcclxuIFVzZVxyXG5cclxuLmJveCB7XHJcbiAgJi5hcnJvdy10b3AtbGVmdCB7QGluY2x1ZGUgYXJyb3coJ3RvcCcsJ2xlZnQnLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LXRvcC1yaWdodCB7QGluY2x1ZGUgYXJyb3coJ3RvcCcsJ3JpZ2h0JywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy10b3AtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygndG9wJywnY2VudGVyJywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1ib3R0b20tbGVmdCB7QGluY2x1ZGUgYXJyb3coJ2JvdHRvbScsJ2xlZnQnLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LWJvdHRvbS1yaWdodCB7QGluY2x1ZGUgYXJyb3coJ2JvdHRvbScsJ3JpZ2h0JywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1ib3R0b20tY2VudGVyIHtAaW5jbHVkZSBhcnJvdygnYm90dG9tJywnY2VudGVyJywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1sZWZ0LXRvcCB7QGluY2x1ZGUgYXJyb3coJ2xlZnQnLCd0b3AnLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LWxlZnQtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygnbGVmdCcsJ2NlbnRlcicsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctbGVmdC1ib3R0b20ge0BpbmNsdWRlIGFycm93KCdsZWZ0JywnYm90dG9tJywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1yaWdodC10b3Age0BpbmNsdWRlIGFycm93KCdyaWdodCcsJ3RvcCcsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctcmlnaHQtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygncmlnaHQnLCdjZW50ZXInLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LXJpZ2h0LWJvdHRvbSB7QGluY2x1ZGUgYXJyb3coJ3JpZ2h0JywnYm90dG9tJywgMTBweCwgIzRmYWRlMyl9XHJcbn1cclxuXHJcblxyXG4uYm94LXdpdGgtYm9yZGVyIHtcclxuICAmLmFycm93LXRvcC1sZWZ0IHtAaW5jbHVkZSBhcnJvdygndG9wJywnbGVmdCcsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy10b3AtcmlnaHQge0BpbmNsdWRlIGFycm93KCd0b3AnLCdyaWdodCcsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy10b3AtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygndG9wJywnY2VudGVyJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LWJvdHRvbS1sZWZ0IHtAaW5jbHVkZSBhcnJvdygnYm90dG9tJywnbGVmdCcsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy1ib3R0b20tcmlnaHQge0BpbmNsdWRlIGFycm93KCdib3R0b20nLCdyaWdodCcsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy1ib3R0b20tY2VudGVyIHtAaW5jbHVkZSBhcnJvdygnYm90dG9tJywnY2VudGVyJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LWxlZnQtdG9wIHtAaW5jbHVkZSBhcnJvdygnbGVmdCcsJ3RvcCcsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy1sZWZ0LWNlbnRlciB7QGluY2x1ZGUgYXJyb3coJ2xlZnQnLCdjZW50ZXInLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctbGVmdC1ib3R0b20ge0BpbmNsdWRlIGFycm93KCdsZWZ0JywnYm90dG9tJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LXJpZ2h0LXRvcCB7QGluY2x1ZGUgYXJyb3coJ3JpZ2h0JywndG9wJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LXJpZ2h0LWNlbnRlciB7QGluY2x1ZGUgYXJyb3coJ3JpZ2h0JywnY2VudGVyJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LXJpZ2h0LWJvdHRvbSB7QGluY2x1ZGUgYXJyb3coJ3JpZ2h0JywnYm90dG9tJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxufVxyXG5cclxuXHJcbioqKioqKioqKioqKi9cbi8qIHVzYWdlIGV4YW1wbGVcclxuLmRpdiB7ICBcclxuICAmOmFmdGVyIHtcclxuICAgIEBpbmNsdWRlIHdmLWljb24gKGljb24sIGZvbnQtc2l6ZSwgY29sb3IpO1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOjUwcHg7XHJcbiAgICBoZWlnaHQ6NTBweDsgICAgXHJcbiAgfVxyXG59XHJcblxyXG4qL1xuLmFuaW1hdGVkIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDsgfVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwJSwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJblVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDsgfVxuXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIGFwcGxldCwgb2JqZWN0LCBpZnJhbWUsXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBibG9ja3F1b3RlLCBwcmUsXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXG5kZWwsIGRmbiwgZW0sIGltZywgaW5zLCBrYmQsIHEsIHMsIHNhbXAsXG5zbWFsbCwgc3RyaWtlLCBzdHJvbmcsIHN1Yiwgc3VwLCB0dCwgdmFyLFxuYiwgdSwgaSwgY2VudGVyLFxuZGwsIGR0LCBkZCwgb2wsIHVsLCBsaSxcbmZpZWxkc2V0LCBmb3JtLCBsYWJlbCwgbGVnZW5kLFxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXG5hcnRpY2xlLCBhc2lkZSwgY2FudmFzLCBkZXRhaWxzLCBlbWJlZCxcbmZpZ3VyZSwgZmlnY2FwdGlvbiwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCxcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvLCBtYWluIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgZm9udDogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbi8qIGh0dHA6Ly93d3cucGF1bGlyaXNoLmNvbS8yMDEyL2JveC1zaXppbmctYm9yZGVyLWJveC1mdHcvICovXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qIExpbmtzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXHJcbiAqL1xuYSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIGE6bGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIGE6YWN0aXZlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7IH1cblxuLyoqXHJcbiAqIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxyXG4gKi9cbmltZyB7XG4gIGJvcmRlcjogMDsgfVxuXG5ociB7XG4gIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7IH1cblxuLyoqXHJcbiAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxyXG4gKi9cbmJ1dHRvbiB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxyXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKi9cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4vKipcclxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxyXG4gKi9cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbmlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbi8qKlxyXG4gKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXHJcbiAqIHRoZSBVQSBzdHlsZXNoZWV0LlxyXG4gKi9cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDsgfVxuXG4vKipcclxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxyXG4gKlxyXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4gKi9cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMiAqLyB9XG5cbi8qKlxyXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiAqL1xuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXHJcbiAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxyXG4gKi9cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgLyogMSAqLyB9XG5cbi8qKlxyXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4gKi9cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IH1cblxuLyogVGFibGVzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcclxuICogUmVtb3ZlIG1vc3Qgc3BhY2luZyBiZXR3ZWVuIHRhYmxlIGNlbGxzLlxyXG4gKi9cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7IH1cblxudGQsXG50aCB7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyogSGVscGVyIGNsYXNzZXNcclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXHJcbiAqIDEuIEF2b2lkIHRoZSBXZWJLaXQgYnVnIGluIEFuZHJvaWQgNC4wLiogd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gXHJcbiAqICAgIGFuZCBgdmlkZW9gIGNvbnRyb2xzLlxyXG4gKiAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXHJcbiAqIDMuIEltcHJvdmUgdXNhYmlsaXR5IGFuZCBjb25zaXN0ZW5jeSBvZiBjdXJzb3Igc3R5bGUgYmV0d2VlbiBpbWFnZS10eXBlXHJcbiAqICAgIGBpbnB1dGAgYW5kIG90aGVycy5cclxuICovXG5idXR0b24sXG5odG1sIGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICAvKiAzICovIH1cblxuLyogSFRNTDUgZGlzcGxheS1yb2xlIHJlc2V0IGZvciBvbGRlciBicm93c2VycyAqL1xuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcbmZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1lbnUsIG5hdiwgc2VjdGlvbiwgbWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmh0bWwsXG5ib2R5IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMTsgfVxuXG5ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiBIZXVyaXN0aWNhOyB9XG5cbm9sLCB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG51bCBsaSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7IH1cblxuaW5wdXQge1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0OyB9XG5cbi8qbGFiZWx7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxufSovXG4uY2xlYXIge1xuICBjbGVhcjogYm90aDtcbiAgZmxvYXQ6IG5vbmU7IH1cblxuLnRpdGxlTmFtZVBhZ2UgaDMge1xuICBwYWRkaW5nOiAyMHB4IDAgMTVweCAwOyB9XG5cbi5waW5rQnRuMTkge1xuICBmb250LXNpemU6IDE5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG5cbi5waW5rQnRuMjQge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAyM3B4OyB9XG5cbi5waW5rU3VibWl0IHtcbiAgZm9udC1mYW1pbHk6IGludGVyZmFjZSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTlweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjYWYxNDc4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgcGFkZGluZzogMTBweCAxNXB4OyB9XG4gIC5waW5rU3VibWl0LnBvc3RDb21tZW50IHtcbiAgICBmb250LWZhbWlseTogaW50ZXJmYWNlLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDI0cHg7IH1cblxuLmZzMTYge1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLmJSIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U5ZTllOTsgfVxuXG4uYlJHcmF5IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2I3YjdiNzsgfVxuXG4uYkIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U5ZTllOTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIC5iUiB7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gIC5iUkdyYXkge1xuICAgIGJvcmRlcjogbm9uZTsgfSB9XG5cbi8qICfuoIAnICovXG4vKiAn7qCBJyAqL1xuLyogJ+6ggicgKi9cbi8qICfuoIMnICovXG4vKiAn7qCEJyAqL1xuLyogJ+6ghScgKi9cbi8qICfuoIYnICovXG4vKiAn7qCHJyAqL1xuLyogJ+6giCcgKi9cbi8qICfuoIknICovXG4vKiAn7qCKJyAqL1xuLyogJ+6giycgKi9cbi8qICfuoIwnICovXG4vKiAn7qCNJyAqL1xuLyogJ+6gjicgKi9cbi8qICfuoI8nICovXG4vKiAn7qCQJyAqL1xuLyogJ+6gkScgKi9cbi8qICfuoJInICovXG4vKiAn7qCTJyAqL1xuLyogJ+6glCcgKi9cbi8qICfuoJUnICovXG4vKiAn7qCWJyAqL1xuLyogJ+6glycgKi9cbi8qICfuoJgnICovXG4vKiAn7qCZJyAqL1xuLyogJ+6gmicgKi9cbi8qICfuoJsnICovXG4vKiAn7qCcJyAqL1xuLyogJ+6gnScgKi9cbi8qICfuoJ4nICovXG4vKiAn7qCfJyAqL1xuLyogJ+6goCcgKi9cbi8qICfuoKEnICovXG4vKiAn7qCiJyAqL1xuLyogJ+6goycgKi9cbi8qICfuoKQnICovXG4vKiAn7qClJyAqL1xuLyogJ+6gpicgKi9cbi8qICfuoKcnICovXG4vKiAn7qCoJyAqL1xuLyogJ+6gqScgKi9cbi8qICfuoKonICovXG4vKiAn7qCrJyAqL1xuLyogJ+6grCcgKi9cbi8qICfuoK0nICovXG4vKiAn7qCuJyAqL1xuLyogJ+6grycgKi9cbi8qICfuoLAnICovXG4vKiAn7qCxJyAqL1xuLyogJ+6gsicgKi9cbi8qICfuoLMnICovXG4vKiAn7qC0JyAqL1xuLyogJ+6gtScgKi9cbi8qICfuoLYnICovXG4vKiAn7qC3JyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2Q0ZWIzZjNkLTRkNDAtNDJjYy04MGViLTAwNWFhYWNkMmQwMS5lb3Q/I2llZml4XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2Q0ZWIzZjNkLTRkNDAtNDJjYy04MGViLTAwNWFhYWNkMmQwMS5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVvdFwiKSwgdXJsKFwiLi4vZm9udHMvZGYzMjYwYTgtNDI0OS00ODc2LWIyZWEtOWQzMGNhOGE1ZDg0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9mOTk5NzM3MS1mMmIwLTRlZmQtOWFmYS1hZWRjNTIzYmRhODMud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy80ODRjMDNkYi02ZGE0LTQxM2YtODVlNy1iZmNlZDYyNzc0NzYudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9lMWY5YjhkNS0yOTkwLTQ5MWItOTQ2MS02NDEwYTE5N2VlYjYuc3ZnI2UxZjliOGQ1LTI5OTAtNDkxYi05NDYxLTY0MTBhMTk3ZWViNlwiKSBmb3JtYXQoXCJzdmdcIik7IH1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvZTI1ZTZmNDYtOTljOS00NmI3LTk3ODAtMzFmNWUzN2VkMjBmLmVvdD8jaWVmaXhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvZTI1ZTZmNDYtOTljOS00NmI3LTk3ODAtMzFmNWUzN2VkMjBmLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy85NGQzZmNjMC0yYTk2LTQ3NzEtOTFiNy1hMzlmNGRkZDQ5MTcud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL2IyM2RmYzg3LWJiZTQtNDdmYS1hMGI5LTQ1NDc5NmY4Zjc1YS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzLzI1MzNjYjQzLWMyNjctNDZjNS1hMjNiLTNmM2JlNWViMGI1MC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2YyYmY0ODlmLWQ1OGItNDYyNS05ODBmLTg3NTdiNjNlZDgzYS5zdmcjZjJiZjQ4OWYtZDU4Yi00NjI1LTk4MGYtODc1N2I2M2VkODNhXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvOWIwZGJjYzMtM2ZkZi00MzIxLWFkZTMtN2JlM2E1ODhlYjBmLmVvdD8jaWVmaXhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvOWIwZGJjYzMtM2ZkZi00MzIxLWFkZTMtN2JlM2E1ODhlYjBmLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9kZmE1MTcwYS03NzI4LTQ5ZGEtOTUwYS1iNGVhYjUwMjlhYzcud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzLzk3NmRlNzFjLWI1ZDAtNDRkNy04OWYxLTQ3NDliZDFhYzQzMi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL2JlOWUyOWE2LTJkM2UtNDE2OC04ZTFmLWQ4NDBkMmY1N2M5My50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzLzNlMTQ1OTc1LTJiZjgtNGE5OS1hMzQxLWZhODk3NDJhZjYzMS5zdmcjM2UxNDU5NzUtMmJmOC00YTk5LWEzNDEtZmE4OTc0MmFmNjMxXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiRm91bmRlcnNHcm90ZXNrQ29uZC1Cb2xkXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvRm91bmRlcnNHcm90ZXNrQ29uZC1Cb2xkLmVvdD8jaWVmaXhcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvRm91bmRlcnNHcm90ZXNrQ29uZC1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9Gb3VuZGVyc0dyb3Rlc2tDb25kLUJvbGQud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uL2ZvbnRzL0ZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL0ZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL0ZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZC5zdmdcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay5lb3RcIikgZm9ybWF0KFwiZW90XCIpLCB1cmwoXCIuLi9mb250cy9zbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvYXZlbmlyL0F2ZW5pckxUUHJvUm9tYW4ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJBdmVuaXIgQm9sZFwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2F2ZW5pci9BdmVuaXJMVFByb0hlYXZ5LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExpZ2h0XCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvYXZlbmlyL0F2ZW5pckxUUHJvTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaGV1cmlzdGljYS9oZXVyaXN0aWNhLXJlZ3VsYXItd2ViZm9udC5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaGV1cmlzdGljYS9oZXVyaXN0aWNhLXJlZ3VsYXItd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtcmVndWxhci13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaGV1cmlzdGljYS9oZXVyaXN0aWNhLXJlZ3VsYXItd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2hldXJpc3RpY2EvaGV1cmlzdGljYS1yZWd1bGFyLXdlYmZvbnQuc3ZnI0hldXJpc3RpY2FcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhIEJvbGRcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtYm9sZC13ZWJmb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtYm9sZC13ZWJmb250LmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL2hldXJpc3RpY2EvaGV1cmlzdGljYS1ib2xkLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtYm9sZC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaGV1cmlzdGljYS9oZXVyaXN0aWNhLWJvbGQtd2ViZm9udC5zdmcjSGV1cmlzdGljYSBCb2xkXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBJdGFsaWNcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtaXRhbGljLXdlYmZvbnQuZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2hldXJpc3RpY2EvaGV1cmlzdGljYS1pdGFsaWMtd2ViZm9udC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtaXRhbGljLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtaXRhbGljLXdlYmZvbnQudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9oZXVyaXN0aWNhL2hldXJpc3RpY2EtaXRhbGljLXdlYmZvbnQuc3ZnI0hldXJpc3RpY2EgSXRhbGljXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiV2VzZmFybWVyc0ljb25zXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvd2VzZmFybWVycy1pY29ucy93ZXNmYXJtZXJzLWljb25zLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy93ZXNmYXJtZXJzLWljb25zL3dlc2Zhcm1lcnMtaWNvbnMuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvd2VzZmFybWVycy1pY29ucy93ZXNmYXJtZXJzLWljb25zLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvd2VzZmFybWVycy1pY29ucy93ZXNmYXJtZXJzLWljb25zLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvd2VzZmFybWVycy1pY29ucy93ZXNmYXJtZXJzLWljb25zLnN2ZyNXZXNmYXJtZXJzSWNvbnNcIikgZm9ybWF0KFwic3ZnXCIpOyB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIExpZ2h0XCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc3RvbHpsL3N0b2x6bC1saWdodC13ZWJmb250LmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zdG9semwvc3RvbHpsLWxpZ2h0LXdlYmZvbnQuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc3RvbHpsL3N0b2x6bC1saWdodC13ZWJmb250LndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvc3RvbHpsL3N0b2x6bC1saWdodC13ZWJmb250LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc3RvbHpsL3N0b2x6bC1saWdodC13ZWJmb250LnN2ZyNTdG9semwgVzAwIExpZ2h0XCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG4vKlxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIExpZ2h0XCI7XHJcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9TdG9semwtTGlnaHQub3RmXCIpIGZvcm1hdChcIm90ZlwiKTtcclxufVxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XHJcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9IZXVyaXN0aWNhLVJlZ3VsYXIub3RmXCIpIGZvcm1hdChcIm90ZlwiKTtcclxufVxyXG5AZm9udC1mYWNlIHsgXHJcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBCb2xkXCI7XHJcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9IZXVyaXN0aWNhLUJvbGQub3RmXCIpIGZvcm1hdChcIm90ZlwiKTtcclxufVxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhIEl0YWxpY1wiO1xyXG4gIHNyYzogdXJsKCcuLi9mb250cy9IZXVyaXN0aWNhLUl0YWxpYy5vdGYnKSBmb3JtYXQoXCJvdGZcIik7XHJcbn1cclxuKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBjb2xvcjogIzJjMmYyZjtcbiAgcGFkZGluZzogMDsgfVxuXG5oMiwgaDMsIGg0LCBoNSwgaDYge1xuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhIEJvbGRcIjsgfVxuXG5oMSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDIuMzc1ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9IH1cblxuaDIge1xuICBmb250LXNpemU6IDEuMzc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4MTgyZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH0gfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNWVtOyB9IH1cblxuaDQge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9IH1cblxuaDUge1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgY29sb3I6ICMwQjg2NTE7IH0gfVxuXG5wIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDcwNTllbTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDAgMTBweCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ0NDQ0ZW07XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwOyB9IH1cbiAgcCAuYnRuIHtcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIHAgLmJ0biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgY29sb3I6ICMyYzJmMmY7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuICBhOmhvdmVyLCBhOmZvY3VzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBwID4gYTpob3ZlciwgcCA+IGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9IH1cblxudWwsIG9sIHtcbiAgbWFyZ2luOiAwIDAgMWVtIDFlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgdWwsIG9sIHtcbiAgICAgIG1hcmdpbjogMCAwIDEuMTg3NWVtIDEuMTg3NWVtOyB9IH1cblxudWwgbGksIG9sIGxpIHtcbiAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTYyNWVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICB1bCBsaSwgb2wgbGkge1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDQ0NDRlbTsgfSB9XG5cbmxpIHVsLCBsaSBvbCB7XG4gIG1hcmdpbjogMC41ZW0gMCAwLjVlbSAxLjE4NzVlbTsgfVxuXG5saSB1bCBsaSwgbGkgb2wgbGkge1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTg3NWVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBsaSB1bCBsaSwgbGkgb2wgbGkge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07IH0gfVxuXG51bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYzsgfVxuXG5vbCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGVjaW1hbDsgfVxuXG5vbCBvbCB7XG4gIGxpc3Qtc3R5bGU6IHVwcGVyLWFscGhhOyB9XG5cbm9sIG9sIG9sIHtcbiAgbGlzdC1zdHlsZTogbG93ZXItcm9tYW47IH1cblxub2wgb2wgb2wgb2wge1xuICBsaXN0LXN0eWxlOiBsb3dlci1hbHBoYTsgfVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYmxvY2txdW90ZSwgcSB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICBmb250LXNpemU6IDEuMDYyNWVtO1xuICBsaW5lLWhlaWdodDogMS40NzA1OWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzJjMmYyZjtcbiAgcXVvdGVzOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAyMHB4IDA7XG4gIGJvcmRlci1sZWZ0OiA5cHggc29saWQgIzAwZTg2MjsgfVxuICBibG9ja3F1b3RlOmJlZm9yZSwgcTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgYmxvY2txdW90ZTphZnRlciwgcTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgYmxvY2txdW90ZSwgcSB7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgIGJvcmRlci1sZWZ0OiAxNXB4IHNvbGlkICMwMGU4NjI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIG1heC13aWR0aDogOTAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGJsb2NrcXVvdGUsIHEge1xuICAgICAgZm9udC1zaXplOiAxLjYyNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzMwNzdlbTtcbiAgICAgIGJvcmRlci1sZWZ0OiAyM3B4IHNvbGlkICMwMGU4NjI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICBtYXJnaW46IDMwcHggMDtcbiAgICAgIG1heC13aWR0aDogOTAlOyB9IH1cblxudGFibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdy14OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICB0YWJsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7IH0gfVxuICB0YWJsZSBjYXB0aW9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTk5OWVtOyB9XG4gIHRhYmxlIHRoLCB0YWJsZSB0ZCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBwYWRkaW5nOiAxNXB4IDIwcHg7IH1cbiAgdGFibGUgdGgge1xuICAgIGJhY2tncm91bmQ6ICM5Njk3OTc7IH1cbiAgdGFibGUgdHIuaGlnaGxpZ2h0IHtcbiAgICBiYWNrZ3JvdW5kOiAjZTdmNGY5O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgdGFibGUgdGQge1xuICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjOTY5Nzk3OyB9XG4gIHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTsgfVxuICB0YWJsZSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjRmOTsgfVxuICB0YWJsZSAuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDBlODYyOyB9XG5cbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cblxuLmxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjE4NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxhcmdlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07IH0gfVxuXG5pIHtcbiAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuYXJ0aWNsZSA+IDpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICBhcnRpY2xlIHtcbiAgICBtYXJnaW4tbGVmdDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMDBweDsgfSB9XG5cbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgaHRtbCB7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuOyB9IH1cblxuYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIGJvZHkuZnRyLWZpeCB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbi53cmFwcGVyIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogYXV0bzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLndyYXBwZXIge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfSB9XG5cbiNtYWluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4jbWFpbjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4jbWFpbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICNtYWluLm92ZXJsYXk6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZDogIzJjMmYyZjtcbiAgICBvcGFjaXR5OiAuMzU7IH1cblxuLmNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDE0NDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDAgMTVweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7IH0gfVxuICAuY29udGFpbmVyID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbnNlY3Rpb24ge1xuICBtYXJnaW46IDA7IH1cbiAgc2VjdGlvbi5ncmV5IHtcbiAgICBiYWNrZ3JvdW5kOiAjZWJmMGYxOyB9XG4gIHNlY3Rpb24ucGFuZWxzIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgc2VjdGlvbi5wYW5lbHMge1xuICAgICAgICBwYWRkaW5nOiAzMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBzZWN0aW9uLnBhbmVscyB7XG4gICAgICAgIHBhZGRpbmc6IDQ1cHggMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5wYW5lbHMge1xuICAgICAgICBwYWRkaW5nOiA0NXB4IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIHNlY3Rpb24ucGFuZWxzIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDc1cHg7IH0gfVxuICBzZWN0aW9uLmluZGVudC1tZWRpdW0ge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgICAgIHNlY3Rpb24uaW5kZW50LW1lZGl1bSB7XG4gICAgICAgIG1heC13aWR0aDogMTM0NXB4OyB9IH1cbiAgc2VjdGlvbi5pbmRlbnQtc21hbGwge1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgc2VjdGlvbi5pbmRlbnQtc21hbGwge1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICBzZWN0aW9uLmluZGVudC1zbWFsbCB7XG4gICAgICAgIG1heC13aWR0aDogMTA2MHB4OyB9IH1cbiAgc2VjdGlvbi5zcGFjZWQge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfVxuXG5hIHtcbiAgY29sb3I6ICM2MTYzNjM7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uYnRuLmNsb3NlIHtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy9pY29ucy9pY29uLWNsb3NlLnBuZ1wiKSBuby1yZXBlYXQgNXB4IDhweDsgfVxuICAuYnRuLmNsb3NlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvaWNvbnMvaWNvbi1jbG9zZS1hY3RpdmUucG5nXCIpIG5vLXJlcGVhdCA1cHggOHB4OyB9XG5cbi5idG4uZmlsdGVyIHtcbiAgY29sb3I6ICM2MTYzNjM7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogc29saWQgMXB4ICM2NDY0NjQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogc21hbGw7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuYnRuLmZpbHRlcjpob3ZlciwgLmJ0bi5maWx0ZXI6Zm9jdXMsIC5idG4uZmlsdGVyOmFjdGl2ZSB7XG4gICAgYm9yZGVyOiBzb2xpZCAxcHggIzAwZTg2MjtcbiAgICBiYWNrZ3JvdW5kOiAjMDBlODYyO1xuICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5idG4uaW52ZXJ0IHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICNlYzY3MWM7IH1cbiAgLmJ0bi5pbnZlcnQ6aG92ZXIsIC5idG4uaW52ZXJ0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGNvbG9yOiAjZWM2NzFjOyB9XG4gIC5idG4uaW52ZXJ0OnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjZWM2NzFjOyB9XG5cbi5idG4tc3VibWl0IHtcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgZm9udC1zaXplOiAwLjc1ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1ZW07XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4O1xuICBtYXJnaW4tdG9wOiAyNXB4OyB9XG4gIC5idG4tc3VibWl0OmFjdGl2ZSwgLmJ0bi1zdWJtaXQ6dmlzaXRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjsgfVxuICAuYnRuLXN1Ym1pdDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzYxNjM2MzsgfVxuXG4uYnRuRmlsdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDsgfVxuXG4uYnRuRmlsdGVyIHNwYW4ge1xuICBmb250LXNpemU6IHNtYWxsO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuXG4ucGFnZS1pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ViZjBmMTtcbiAgcGFkZGluZy10b3A6IDM1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLWludHJvID4gKjpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5wYWdlLWludHJvIC53eXNpd3lnID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5wYWdlLWludHJvIC53eXNpd3lnID4gZGl2ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnBhZ2UtaW50cm8ge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFnZS1pbnRybyB7XG4gICAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5wYWdlLWludHJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhZ2UtaW50cm8ge1xuICAgICAgcGFkZGluZy10b3A6IDgwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAgIC5wYWdlLWludHJvIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMDVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0MnB4OyB9IH1cbiAgLnBhZ2UtaW50cm8gaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhZ2UtaW50cm8gaDEge1xuICAgICAgICBmb250LXNpemU6IDEuNjI1ZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5wYWdlLWludHJvIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1ZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5wYWdlLWludHJvIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgICAucGFnZS1pbnRybyBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi42MjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucGFnZS1pbnRybyBwIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1heC13aWR0aDogNTAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnBhZ2UtaW50cm8gcCB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4OyB9IH1cbiAgLnBhZ2UtaW50cm8gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnBhZ2UtaW50cm8uc2hhbGxvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uaGlkZGVuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtOTk5OWVtOyB9XG5cbi5yb3VuZC1pbWcge1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDgwJTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA4MCU7XG4gIC1vLWJvcmRlci1yYWRpdXM6IDgwJTtcbiAgYm9yZGVyLXJhZGl1czogODAlOyB9XG5cbi5yZXNwLWltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5hbGlnbi1jZW50ZXIge1xuICBtYXJnaW46IDAgYXV0bzsgfVxuXG4uY29udGVudC1wYWdlIHN0cm9uZywgLnJvdy1zZWN0aW9uIHN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbnRlbnQtcGFnZSAucm93LCAucm93LXNlY3Rpb24gLnJvdyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuLmNvbnRlbnQtcGFnZSAucm93LmdhbGxlcnktaW5mbywgLnJvdy1zZWN0aW9uIC5yb3cuZ2FsbGVyeS1pbmZvIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAucm93LmdhbGxlcnktaW5mbywgLnJvdy1zZWN0aW9uIC5yb3cuZ2FsbGVyeS1pbmZvIHtcbiAgICAgIG1heC13aWR0aDogOTgwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4IGF1dG8gODBweCBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5jb250ZW50LXBhZ2UgLnJvdy5nYWxsZXJ5LWluZm8sIC5yb3ctc2VjdGlvbiAucm93LmdhbGxlcnktaW5mbyB7XG4gICAgICBtYXgtd2lkdGg6IDEyODBweDtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvIDEyMHB4IGF1dG87IH0gfVxuICAuY29udGVudC1wYWdlIC5yb3cuZ2FsbGVyeS1pbmZvIGFiYnIsIC5yb3ctc2VjdGlvbiAucm93LmdhbGxlcnktaW5mbyBhYmJyIHtcbiAgICBwYWRkaW5nOiAwIDE1cHggMCAwOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi1kZXZpY2Utd2lkdGg6IDEwMjRweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMjc5cHgpIHtcbiAgLmxhcmdlLWNvbGxhcHNlIC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSAuY29sdW1ucyxcbiAgLmxhcmdlLWNvbGxhcHNlIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgcGFkZGluZy1yaWdodDogNTBweDsgfSB9XG5cbiNtYWluIC5pbnZlc3RvcnMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmOyB9XG4gICNtYWluIC5pbnZlc3RvcnMgLnBhZ2UtaW50cm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzJmMmY7XG4gICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICMwMGU4NjI7IH1cbiAgICAjbWFpbiAuaW52ZXN0b3JzIC5wYWdlLWludHJvIGgxIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAjbWFpbiAuaW52ZXN0b3JzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAjbWFpbiAuaW52ZXN0b3JzIC5wYWdlLWludHJvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAjbWFpbiAuaW52ZXN0b3JzIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDEwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgI21haW4gLmludmVzdG9ycyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAjMDBlODYyOyB9XG4gICAgICAjbWFpbiAuaW52ZXN0b3JzIC5wYWdlLWludHJvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfSB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjY2FjYmNiO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbjo6LW1vei1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjY2FjYmNiO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI2NhY2JjYjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnN1YnNjcmliZSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2JjYjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uc3Vic2NyaWJlIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjY2FjYmNiO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi5zdWJzY3JpYmUgOi1tb3otcGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogI2NhY2JjYjtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4uc3Vic2NyaWJlIDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMTtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLnN1YnNjcmliZSA6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLypcclxuLy8gc3RpY2t5IGZvb3RlclxyXG5AaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcclxuICBodG1sLCBib2R5IHtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgI3dyYXBwZXIge1xyXG4gICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gICNtYWluIHtcclxuICAgICAgbWluLWhlaWdodDoxMDAlO1xyXG4gIH1cclxuXHJcblxyXG59Ki9cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0LCBuYXYgLmdsb2JhbCxcbm5hdiAudXRpbCwgbmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiwgLmNvbnRlbnQtbmF2IHVsLCAucmVsYXRlZC1jb250ZW50IHVsLCBmb290ZXIgbmF2IHVsLCBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwsIC5ob21lLW5ld3MtbGlzdCB1bCwgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay11cGRhdGVkLWxpc3QsIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwsIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQsIC5nYWxsZXJ5LWZpbHRlciAub3B0aW9ucywgLmdhbGxlcnktZmlsdGVyIC5vcHRpb25zIGxpIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cblxuLmJ0biB7XG4gIGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb29rJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjNjcxYztcbiAgY29sb3I6ICNmZmY7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXNpemU6IDEuMTg3NWVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlcjogMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7IH1cbiAgLmJ0bjpob3ZlciwgLmJ0bjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG4gICAgY29sb3I6ICNmZmY7IH1cbiAgLmJ0bjp2aXNpdGVkIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4udWktZGF0ZXBpY2tlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDhweDtcbiAgei1pbmRleDogMTAwNSAhaW1wb3J0YW50OyB9XG5cbi51aS1kYXRlcGlja2VyLWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGhlaWdodDogNDBweDtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLnVpLWRhdGVwaWNrZXItaGVhZGVyIGEge1xuICAgIHdpZHRoOiAzNnB4O1xuICAgIGhlaWdodDogNDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAudWktZGF0ZXBpY2tlci1oZWFkZXIgYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTdlN2U3OyB9XG4gICAgLnVpLWRhdGVwaWNrZXItaGVhZGVyIGEudWktc3RhdGUtZGlzYWJsZWQge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4udWktZGF0ZXBpY2tlci10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4OyB9XG5cbi51aS1kYXRlcGlja2VyLXByZXYge1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2ZmZjtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29ucy9pY29uLWFydy1sZnQtd2h0LnBuZykgbm8tcmVwZWF0IGNlbnRlcjsgfVxuXG4udWktZGF0ZXBpY2tlci1uZXh0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1hcnctcmdodC13aHQucG5nKSBuby1yZXBlYXQgY2VudGVyOyB9XG5cbi51aS1kYXRlcGlja2VyLW1vbnRoLCAudWktZGF0ZXBpY2tlci15ZWFyIHtcbiAgd2lkdGg6IDY1cHg7XG4gIGhlaWdodDogMzBweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyOiBzb2xpZCAxcHggI2U1ZTdlODtcbiAgcGFkZGluZzogMnB4IDIwcHggMnB4IDJweDtcbiAgbWFyZ2luOiA1cHggMCAwIDA7XG4gIGZvbnQtZmFtaWx5OiBcInNvbGVpbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKlJlbW92ZXMgZGVmYXVsdCBjaHJvbWUgYW5kIHNhZmFyaSBzdHlsZSovXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogUmVtb3ZlcyBEZWZhdWx0IEZpcmVmb3ggc3R5bGUqL1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybCguLi9pbWcvaWNvbnMvaWNvbi0tdWktY2FsLWRvd24ucG5nKSBuby1yZXBlYXQ7XG4gIC8qQWRkcyBiYWNrZ3JvdW5kLWltYWdlKi9cbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTBweDtcbiAgLypQb3NpdGlvbiBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSovXG4gIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gIC8qIFJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1xuICB0ZXh0LW92ZXJmbG93OiBcIlwiO1xuICAvKlJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqLyB9XG5cbi51aS1kYXRlcGlja2VyLW1vbnRoOjotbXMtZXhwYW5kLCAudWktZGF0ZXBpY2tlci15ZWFyOjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ubm8tY3NzY29sdW1ucyAudWktZGF0ZXBpY2tlci1tb250aCwgLm5vLWNzc2NvbHVtbnMgLnVpLWRhdGVwaWNrZXIteWVhciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDVweDsgfVxuXG4udWktZGF0ZXBpY2tlci1tb250aCB7XG4gIG1hcmdpbi1yaWdodDogMTVweDsgfVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgdGFibGUtbGF5b3V0OiBhdXRvOyB9XG4gIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGJvZHkge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyB9XG4gIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRoZWFkIHRyLFxuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0Ym9keSB0ciB7XG4gICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRoLFxuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0ZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDAwMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZDlkOWQ5O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDsgfVxuICAgIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRoLnVpLWRhdGVwaWNrZXItdG9kYXksXG4gICAgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQudWktZGF0ZXBpY2tlci10b2RheSB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjRmNGY0OyB9XG4gICAgICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0aC51aS1kYXRlcGlja2VyLXRvZGF5IGEsXG4gICAgICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0ZC51aS1kYXRlcGlja2VyLXRvZGF5IGEge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAudWktZGF0ZXBpY2tlci1jYWxlbmRhciB0aCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0OyB9XG4gIC51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlOyB9XG4gICAgLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIgdGQgYSB7XG4gICAgICBjb2xvcjogI2RkZDtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB3aWR0aDogMzJweDtcbiAgICAgIGhlaWdodDogMzJweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuLnVpLWRhdGVwaWNrZXItdW5zZWxlY3RhYmxlIHtcbiAgY29sb3I6ICM5OTk7XG4gIGN1cnNvcjogZGVmYXVsdDsgfVxuXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktZGF0ZXBpY2tlci1vdGhlci1tb250aCBhIHtcbiAgY29sb3I6ICM5OTk7IH1cblxudGQudWktZGF0ZXBpY2tlci1jdXJyZW50LWRheSBhIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzFjNjgwMjsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnNsaWNrLWxpc3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjdXJzb3I6IGhhbmQ7IH1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG5cbi5zbGljay10cmFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2xpY2stbG9hZGluZyAuc2xpY2stdHJhY2sge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiByaWdodDsgfVxuICAuc2xpY2stc2xpZGUgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuc2xpY2stc2xpZGUuc2xpY2stbG9hZGluZyBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7IH1cbiAgLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50OyB9XG4gIC5zbGljay1zbGlkZTpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLi9pbWcvaWNvbnMvYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0OyB9XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbiAgLnNsaWNrLW5leHQ6aG92ZXIsXG4gIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5zbGljay1wcmV2OmhvdmVyOmJlZm9yZSwgLnNsaWNrLXByZXY6Zm9jdXM6YmVmb3JlLFxuICAgIC5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbiAgICAuc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMTsgfVxuICAuc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4gIC5zbGljay1uZXh0LnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgb3BhY2l0eTogMC43NTsgfVxuICAuc2xpY2stcHJldjpiZWZvcmUsXG4gIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4uc2xpY2stcHJldiB7XG4gIGxlZnQ6IC0yNXB4OyB9XG4gIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4OyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLihpBcIjsgfVxuICAgIFtkaXI9XCJydGxcIl0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwi4oaSXCI7IH1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogLTI1cHg7IH1cbiAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dCB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgcmlnaHQ6IGF1dG87IH1cbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIuKGklwiOyB9XG4gICAgW2Rpcj1cInJ0bFwiXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCLihpBcIjsgfVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLnNsaWNrLWRvdHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIC5zbGljay1kb3RzIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICB3aWR0aDogMjBweDtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgICAgZm9udC1zaXplOiAwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTsgfVxuICAgICAgICAuc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAxOyB9XG4gICAgICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6IFwi4oCiXCI7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29sb3I6ICNlYzY3MWM7XG4gICAgICBvcGFjaXR5OiAwLjc1OyB9XG5cbmhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICMyODI4Mjg7XG4gIHBhZGRpbmc6IDEwcHggMDsgfVxuICBoZWFkZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGhlYWRlcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDlweCAwIDIwcHggMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICBoZWFkZXIge1xuICAgICAgcGFkZGluZzogMTVweCAwIDAgMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7IH0gfVxuICBoZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGhlYWRlciAuY29udGFpbmVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDQwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgICBoZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDI1NjBweDsgfSB9XG4gIGhlYWRlciAubG9nbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiAxMDRweDtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICBoZWFkZXIgLmxvZ28gPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvd2YtbG9nby5zdmdcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBoZWFkZXIgLmxvZ28ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTIycHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGhlYWRlciAubG9nbyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxNDBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgaGVhZGVyIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDE1NnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDIwOyB9XG4gICAgICAgIGhlYWRlciAubG9nbyA+IGEge1xuICAgICAgICAgIGhlaWdodDogNjRweDsgfSB9XG4gIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCB7XG4gICAgYmFja2dyb3VuZDogIzI4MjgyODtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgbWFyZ2luOiAwIDAgMzBweCAwOyB9XG4gICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogLTdweCAwIDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCBmaWVsZHNldCB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCBmaWVsZHNldCBsZWdlbmQsXG4gICAgICBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgbGFiZWwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IC05OTk5OWVtOyB9XG4gICAgICBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgLmZvcm0tcm93IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICAgICAgICBmb250LXNpemU6IDEuMDYyNWVtO1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNDBweDsgfVxuICAgICAgICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCBmaWVsZHNldCAuZm9ybS1yb3cgaW5wdXRbdHlwZT0ndGV4dCddOmhvdmVyLCBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgLmZvcm0tcm93IGlucHV0W3R5cGU9J3RleHQnXTpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgICAgICAgIGhlYWRlciAuZ2xvYmFsLXNlYXJjaCBmaWVsZHNldCAuZm9ybS1yb3cgaW5wdXRbdHlwZT0ndGV4dCddIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgICAgICAgICAgIGNvbG9yOiAjOTY5Nzk3O1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCA1cHggMnB4O1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2NhY2JjYjtcbiAgICAgICAgICAgICAgd2lkdGg6IDEyLjVlbTsgfVxuICAgICAgICAgICAgICBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgLmZvcm0tcm93IGlucHV0W3R5cGU9J3RleHQnXTpob3ZlciwgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpbnB1dFt0eXBlPSd0ZXh0J106Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7IH0gfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgICAgICAgICBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgLmZvcm0tcm93IGlucHV0W3R5cGU9J3RleHQnXSB7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1ZW07IH0gfVxuICAgICAgICBoZWFkZXIgLmdsb2JhbC1zZWFyY2ggZmllbGRzZXQgLmZvcm0tcm93IGlucHV0W3R5cGU9J3RleHQnXTpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICBjb2xvcjogI2VhZWFlYTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpbnB1dFt0eXBlPSd0ZXh0J106Zm9jdXMge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwMDtcbiAgICAgICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9IH1cbiAgICAgICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgICAgaGVhZGVyIC5nbG9iYWwtc2VhcmNoIGZpZWxkc2V0IC5mb3JtLXJvdyBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAjM2MzZTNlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2OCU7IH0gfVxuICBoZWFkZXIgLmJ1cmdlci1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMzRweDtcbiAgICBib3R0b206IDE0cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICBoZWFkZXIgLmJ1cmdlci1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBoZWFkZXIgLmJ1cmdlci1idXR0b24gLmJ1cmdlci1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDdweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDdweDtcbiAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbiAgICAgIGhlYWRlciAuYnVyZ2VyLWJ1dHRvbiAuYnVyZ2VyLWljb24sIGhlYWRlciAuYnVyZ2VyLWJ1dHRvbiAuYnVyZ2VyLWljb246OmJlZm9yZSwgaGVhZGVyIC5idXJnZXItYnV0dG9uIC5idXJnZXItaWNvbjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjIyO1xuICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIC13ZWJraXQtdHJhbnNmb3JtO1xuICAgICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIC1tb3otdHJhbnNmb3JtO1xuICAgICAgICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCAtby10cmFuc2Zvcm07XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIHRyYW5zZm9ybTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xuICAgICAgICAtbW96LXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgICAgIC1vLXRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7IH1cbiAgICAgIGhlYWRlciAuYnVyZ2VyLWJ1dHRvbiAuYnVyZ2VyLWljb246OmJlZm9yZSwgaGVhZGVyIC5idXJnZXItYnV0dG9uIC5idXJnZXItaWNvbjo6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgICAgIGhlYWRlciAuYnVyZ2VyLWJ1dHRvbiAuYnVyZ2VyLWljb246OmJlZm9yZSB7XG4gICAgICAgIHRvcDogLTdweDsgfVxuICAgICAgaGVhZGVyIC5idXJnZXItYnV0dG9uIC5idXJnZXItaWNvbjo6YWZ0ZXIge1xuICAgICAgICB0b3A6IDdweDsgfVxuICAgIGhlYWRlciAuYnVyZ2VyLWJ1dHRvbi5pcy1hY3RpdmUgLmJ1cmdlci1pY29uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgaGVhZGVyIC5idXJnZXItYnV0dG9uLmlzLWFjdGl2ZSAuYnVyZ2VyLWljb246OmJlZm9yZSB7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDdweCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cHgpIHJvdGF0ZSg0NWRlZyk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3B4KSByb3RhdGUoNDVkZWcpOyB9XG4gICAgaGVhZGVyIC5idXJnZXItYnV0dG9uLmlzLWFjdGl2ZSAuYnVyZ2VyLWljb246OmFmdGVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTdweCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC03cHgpIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbmhlYWRlci5ob21lIHtcbiAgbWluLWhlaWdodDogODBweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2ZmZjsgfVxuICBoZWFkZXIuaG9tZSAubG9nbyB7XG4gICAgbWFyZ2luLXRvcDogNHB4OyB9XG4gIGhlYWRlci5ob21lIC5idXJnZXItYnV0dG9uIHtcbiAgICBib3R0b206IDIwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGhlYWRlci5ob21lIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDkwcHg7IH1cbiAgICAgIGhlYWRlci5ob21lIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICBoZWFkZXIuaG9tZSB7XG4gICAgICBwYWRkaW5nOiA2MHB4IDAgMCAwO1xuICAgICAgbWluLWhlaWdodDogbm9uZTtcbiAgICAgIG1heC1oZWlnaHQ6IDE2MHB4OyB9XG4gICAgICBoZWFkZXIuaG9tZSAuZ2xvYmFsLXN1YiB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmMyZjJmOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIGhlYWRlci5ob21lIC5sb2dvIHtcbiAgICAgIHdpZHRoOiAxNzVweDsgfVxuICAgICAgaGVhZGVyLmhvbWUgLmxvZ28gPiBhIHtcbiAgICAgICAgaGVpZ2h0OiA3MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgICBoZWFkZXIuaG9tZSAubG9nbyB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgd2lkdGg6IDIwNXB4OyB9XG4gICAgICBoZWFkZXIuaG9tZSAubG9nbyA+IGEge1xuICAgICAgICBoZWlnaHQ6IDgwcHg7IH0gfVxuXG4vKlxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgbmF2IC5pbnZlc3RvcnMgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLy93aWR0aDoxMDAlIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4qL1xuLm5hdi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDQ1MG1zO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA0NTBtcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTAwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyAxcHgpO1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTMyMHB4O1xuICB3aWR0aDogMzIwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5uYXYtd3JhcHBlciB7XG4gICAgICByaWdodDogLTMyMHB4O1xuICAgICAgd2lkdGg6IDMyMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5uYXYtd3JhcHBlciB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9IH1cbiAgLm5hdi13cmFwcGVyLm1ibC1hY3RpdmUge1xuICAgIHJpZ2h0OiAwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogOTk5OTk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubmF2LXdyYXBwZXIubWJsLWFjdGl2ZSB7XG4gICAgICAgIHJpZ2h0OiAwcHg7IH0gfVxuXG5uYXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbm5hdjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG5uYXYgLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH1cblxubmF2IC5tZW51LXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgMCAxMHB4O1xuICBtYXJnaW46IDRweCAzMHB4IDMwcHg7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgY29sb3I6ICM2MTYzNjM7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM2MTYzNjM7IH1cblxubmF2IC5nbG9iYWwsXG5uYXYgLnV0aWwge1xuICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgbmF2IC5nbG9iYWw6YmVmb3JlLFxuICBuYXYgLnV0aWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIG5hdiAuZ2xvYmFsOmFmdGVyLFxuICBuYXYgLnV0aWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgbmF2IC5nbG9iYWwgPiBsaSxcbiAgbmF2IC51dGlsID4gbGkge1xuICAgIHBhZGRpbmc6IDAgMCAxLjEyNWVtIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiBIZXVyaXN0aWNhO1xuICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaTpiZWZvcmUsXG4gICAgbmF2IC51dGlsID4gbGk6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaTphZnRlcixcbiAgICBuYXYgLnV0aWwgPiBsaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBzcGFuLFxuICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBhLFxuICAgIG5hdiAudXRpbCA+IGxpID4gc3BhbixcbiAgICBuYXYgLnV0aWwgPiBsaSA+IGEge1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBzcGFuOmhvdmVyLCBuYXYgLmdsb2JhbCA+IGxpID4gc3Bhbjpmb2N1cywgbmF2IC5nbG9iYWwgPiBsaSA+IHNwYW4uYWN0aXZlLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSA+IGE6aG92ZXIsXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpID4gYTpmb2N1cyxcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBhLmFjdGl2ZSxcbiAgICAgIG5hdiAudXRpbCA+IGxpID4gc3Bhbjpob3ZlcixcbiAgICAgIG5hdiAudXRpbCA+IGxpID4gc3Bhbjpmb2N1cyxcbiAgICAgIG5hdiAudXRpbCA+IGxpID4gc3Bhbi5hY3RpdmUsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IGE6aG92ZXIsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IGE6Zm9jdXMsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IGEuYWN0aXZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGNvbG9yOiAjNjE2MzYzOyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YixcbiAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiB7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDQ1MG1zO1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDUwbXM7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYmFja2dyb3VuZDogI2VhZWFlYTtcbiAgICAgIHotaW5kZXg6IDY7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8sXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7IH1cbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2LFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLnJvdyxcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5yb3cge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgc3BhbixcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgYSxcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpIHNwYW4sXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSBhIHtcbiAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjsgfVxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IHNwYW4sXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IHNwYW4sXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3BhbixcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgICBjb2xvcjogIzYxNjM2MztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLm1lbnUtdGl0bGUsXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAubWVudS10aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjMEI4NjUxO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMEI4NjUxO1xuICAgICAgICBtYXJnaW46IDE0cHggMTBweCAzMHB4OyB9XG5cbm5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5yb3cgLmNvbHVtbnMgLnJvdyB7XG4gIG1heC13aWR0aDogMTQ4MHB4OyB9XG5cbi8qXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgIG5hdiB7fVxyXG59XHJcbiovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIG5hdiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjE1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMTVyZW07IH1cbiAgbmF2IC5nbG9iYWwgPiBsaSxcbiAgbmF2IC51dGlsID4gbGkge1xuICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTYyNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBuYXYgLmNvbHVtbnMge1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICBuYXYge1xuICAgIG1hcmdpbi10b3A6IC0zNXB4OyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViID4gLnJvdyB7XG4gICAgICBmbGV4LWZsb3c6IHJvdzsgfVxuICAgIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5nbG9iYWwtc3ViLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIG5hdiAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgbmF2IC5jb2x1bW5zIHtcbiAgICAgIGZsZXg6IDEgYXV0bzsgfVxuICAgICAgbmF2IC5jb2x1bW5zIC5nbG9iYWwtc3ViLW5hdixcbiAgICAgIG5hdiAuY29sdW1ucyAuc3ViLXRpdGxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAzODBweDsgfVxuICAgIG5hdiAubWVudS10aXRsZSxcbiAgICBuYXYgLmdsb2JhbC1zdWIgLm1lbnUtdGl0bGUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIG5hdiAuZ2xvYmFsLFxuICAgIG5hdiAudXRpbCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGksXG4gICAgICBuYXYgLnV0aWwgPiBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpID4gc3BhbixcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSA+IGEsXG4gICAgICAgIG5hdiAudXRpbCA+IGxpID4gc3BhbixcbiAgICAgICAgbmF2IC51dGlsID4gbGkgPiBhIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XG4gICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjc4MTI1ZW07XG4gICAgICAgICAgbWluLWhlaWdodDogNjBweDsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7IH1cbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaTpob3ZlciA+IHNwYW4sXG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGk6aG92ZXIgPiBhLCBuYXYgLmdsb2JhbCA+IGxpOmZvY3VzID4gc3BhbixcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaTpmb2N1cyA+IGEsIG5hdiAuZ2xvYmFsID4gbGkuYWN0aXZlID4gc3BhbixcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaS5hY3RpdmUgPiBhLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaTpob3ZlciA+IHNwYW4sXG4gICAgICAgIG5hdiAudXRpbCA+IGxpOmhvdmVyID4gYSxcbiAgICAgICAgbmF2IC51dGlsID4gbGk6Zm9jdXMgPiBzcGFuLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaTpmb2N1cyA+IGEsXG4gICAgICAgIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSA+IHNwYW4sXG4gICAgICAgIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSA+IGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGk6aG92ZXIgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGk6aG92ZXIgPiBhOmFmdGVyLCBuYXYgLmdsb2JhbCA+IGxpOmZvY3VzID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpOmZvY3VzID4gYTphZnRlciwgbmF2IC5nbG9iYWwgPiBsaS5hY3RpdmUgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuYWN0aXZlID4gYTphZnRlcixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaTpob3ZlciA+IHNwYW46YWZ0ZXIsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGk6aG92ZXIgPiBhOmFmdGVyLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpOmZvY3VzID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaTpmb2N1cyA+IGE6YWZ0ZXIsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkuYWN0aXZlID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaS5hY3RpdmUgPiBhOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICAgICAgYm90dG9tOiAtOHB4O1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIsXG4gICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiA1MHB4IDAgMzBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICB3aWR0aDogMTA1JTtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgNDVweCk7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJjMmYyZjsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLm5hdi1saXN0LFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5uYXYtbGlzdCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8sXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmbGV4OiAxIDAgMjAwcHg7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDkwcHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdIZXVyaXN0aWNhJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMzBweDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICNjYWNiY2Igc29saWQ7IH1cbiAgICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayA+IC5pbWFnZSxcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbmsgPiAuaW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayA+IC5pbWFnZSA+IGltZyxcbiAgICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayA+IC5pbWFnZSA+IGltZyB7XG4gICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rID4gLmltYWdlOmJlZm9yZSxcbiAgICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayA+IC5pbWFnZTpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zczsgfVxuICAgICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rID4gc3BhbixcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbmsgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNnB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuICAgICAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbmsgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rID4gc3BhbjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBjb250ZW50OiBcIu6gs1wiO1xuICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMGU4NjI7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluazpob3ZlciA+IC5pbWFnZSA+IGltZywgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluazpmb2N1cyA+IC5pbWFnZSA+IGltZyxcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbms6aG92ZXIgPiAuaW1hZ2UgPiBpbWcsXG4gICAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rOmZvY3VzID4gLmltYWdlID4gaW1nIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cbiAgICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluazpob3ZlciA+IC5pbWFnZTpiZWZvcmUsIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbms6Zm9jdXMgPiAuaW1hZ2U6YmVmb3JlLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluazpob3ZlciA+IC5pbWFnZTpiZWZvcmUsXG4gICAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rOmZvY3VzID4gLmltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogLjMzOyB9XG4gICAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbms6aG92ZXIgPiBwLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIC5pbWFnZS1saW5rOmZvY3VzID4gcCxcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbms6aG92ZXIgPiBwLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluazpmb2N1cyA+IHAge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDBjZjU3O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyBwLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gcCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1ZW07IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5zdWItdGl0bGUsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLnN1Yi10aXRsZSB7XG4gICAgICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4zcywgYm9yZGVyIC4zcztcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCAjY2FjYmNiIHNvbGlkOyB9XG4gICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpID4gc3BhbixcbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBzcGFuLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhIHtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdIZXVyaXN0aWNhJztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggI2NhY2JjYiBzb2xpZDsgfVxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpsYXN0LWNoaWxkOmhvdmVyLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmxhc3QtY2hpbGQ6Zm9jdXMsIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZC5hY3RpdmUsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpsYXN0LWNoaWxkOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZDpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmxhc3QtY2hpbGQuYWN0aXZlIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzAwZTg2MjsgfVxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cywgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwZTg2MjsgfVxuICAgICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gc3BhbixcbiAgICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IGEsIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuLFxuICAgICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuLFxuICAgICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IGEsXG4gICAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gc3BhbixcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IHNwYW4sXG4gICAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYSxcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3BhbixcbiAgICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwOyB9XG4gICAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgKyBsaSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyArIGxpLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSArIGxpLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciArIGxpLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyArIGxpLFxuICAgICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgKyBsaSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwZTg2MjsgfVxuICAgIG5hdiAuZ2xvYmFsIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpID4gc3BhbixcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBzcGFuOmJlZm9yZSxcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpID4gYTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpID4gYTphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpOmhvdmVyIHNwYW4sIG5hdiAuZ2xvYmFsID4gbGk6aG92ZXIgYSwgbmF2IC5nbG9iYWwgPiBsaTpmb2N1cyBzcGFuLCBuYXYgLmdsb2JhbCA+IGxpOmZvY3VzIGEsIG5hdiAuZ2xvYmFsID4gbGkuYWN0aXZlIHNwYW4sIG5hdiAuZ2xvYmFsID4gbGkuYWN0aXZlIGEge1xuICAgICAgICAgIGNvbG9yOiAjMEI4NjUxOyB9XG4gICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaTpob3ZlciBzcGFuOmFmdGVyLCBuYXYgLmdsb2JhbCA+IGxpOmhvdmVyIGE6YWZ0ZXIsIG5hdiAuZ2xvYmFsID4gbGk6Zm9jdXMgc3BhbjphZnRlciwgbmF2IC5nbG9iYWwgPiBsaTpmb2N1cyBhOmFmdGVyLCBuYXYgLmdsb2JhbCA+IGxpLmFjdGl2ZSBzcGFuOmFmdGVyLCBuYXYgLmdsb2JhbCA+IGxpLmFjdGl2ZSBhOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGk6aG92ZXIgLmdsb2JhbC1zdWIsIG5hdiAuZ2xvYmFsID4gbGk6Zm9jdXMgLmdsb2JhbC1zdWIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5uYXYtbGlzdC1pbnZlc3RvcnMgPiAucm93OmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAubmF2LWxpc3QtaW52ZXN0b3JzID4gLnJvdzpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgZmxleC1mbG93OiByb3c7IH1cbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLnN1Yi10aXRsZSArIC5nbG9iYWwtc3ViLW5hdiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyA+IHNwYW4sXG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzID4gYSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyA+IHNwYW46YmVmb3JlLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzID4gYTpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNjE2MzYzOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5pbWFnZS1saW5rIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA5NXB4OyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViLWludHJvIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1YiB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLmdsb2JhbC1zdWIgLnJvdyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1YiAuaW52LWNlbnRyZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOTA2MjVlbTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5pbnYtY2VudHJlOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwi7qCzXCI7XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICBjb2xvcjogIzAwZTg2MjtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1YiAuaW52LWNlbnRyZTpob3ZlciwgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLmdsb2JhbC1zdWIgLmludi1jZW50cmU6Zm9jdXMsIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5pbnYtY2VudHJlLmFjdGl2ZSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAjMDBjZjU3O1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuICAgIG5hdiAudXRpbCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBuYXYgLnV0aWwgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDsgfVxuICAgICAgICBuYXYgLnV0aWwgPiBzcGFuOmJlZm9yZSxcbiAgICAgICAgbmF2IC51dGlsID4gYTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgbmF2IC51dGlsID4gc3BhbjphZnRlcixcbiAgICAgICAgbmF2IC51dGlsID4gYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBuYXYgLnV0aWwgPiBzcGFuOmhvdmVyLCBuYXYgLnV0aWwgPiBzcGFuOmZvY3VzLFxuICAgICAgICBuYXYgLnV0aWwgPiBhOmhvdmVyLFxuICAgICAgICBuYXYgLnV0aWwgPiBhOmZvY3VzIHtcbiAgICAgICAgICBjb2xvcjogIzBCODY1MTsgfVxuICAgICAgbmF2IC51dGlsID4gbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgICAgICAgbmF2IC51dGlsID4gbGkgPiBzcGFuLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSA+IGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBmb250LXNpemU6IDAuNzVlbTsgfVxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCk7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIC8qXHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgKi8gfVxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViOmJlZm9yZSwgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWI6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIG5hdiAudXRpbCA+IGxpOmhvdmVyIC5nbG9iYWwtc3ViOmJlZm9yZSwgbmF2IC51dGlsID4gbGk6aG92ZXIgLmdsb2JhbC1zdWI6YWZ0ZXIsIG5hdiAudXRpbCA+IGxpOmZvY3VzIC5nbG9iYWwtc3ViOmJlZm9yZSwgbmF2IC51dGlsID4gbGk6Zm9jdXMgLmdsb2JhbC1zdWI6YWZ0ZXIsIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSAuZ2xvYmFsLXN1YjpiZWZvcmUsIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSAuZ2xvYmFsLXN1YjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIG5hdiAudXRpbCA+IGxpOmhvdmVyID4gc3BhbixcbiAgICAgICAgbmF2IC51dGlsID4gbGk6aG92ZXIgPiBhLCBuYXYgLnV0aWwgPiBsaTpmb2N1cyA+IHNwYW4sXG4gICAgICAgIG5hdiAudXRpbCA+IGxpOmZvY3VzID4gYSwgbmF2IC51dGlsID4gbGkuYWN0aXZlID4gc3BhbixcbiAgICAgICAgbmF2IC51dGlsID4gbGkuYWN0aXZlID4gYSB7XG4gICAgICAgICAgY29sb3I6ICMwQjg2NTE7IH1cbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaTpob3ZlciA+IHNwYW46YWZ0ZXIsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGk6aG92ZXIgPiBhOmFmdGVyLCBuYXYgLnV0aWwgPiBsaTpmb2N1cyA+IHNwYW46YWZ0ZXIsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGk6Zm9jdXMgPiBhOmFmdGVyLCBuYXYgLnV0aWwgPiBsaS5hY3RpdmUgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSA+IGE6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgICAgICBuYXYgLnV0aWwgPiBsaTpob3ZlciAuZ2xvYmFsLXN1YiwgbmF2IC51dGlsID4gbGk6Zm9jdXMgLmdsb2JhbC1zdWIsIG5hdiAudXRpbCA+IGxpLmFjdGl2ZSAuZ2xvYmFsLXN1YiB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIG5hdiAudXRpbCA+IGxpLmV4YyA+IHNwYW46YWZ0ZXIsXG4gICAgICBuYXYgLnV0aWwgPiBsaS5leGMgPiBhOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC8qIG5hc3R5IHNwZWNpZmljIGhhY2sgKi9cbiAgLmhvbWUgbmF2IC51dGlsID4gbGk6aG92ZXIgPiBzcGFuOmFmdGVyLFxuICAuaG9tZSBuYXYgLnV0aWwgPiBsaTpob3ZlciA+IGE6YWZ0ZXIsIC5ob21lIG5hdiAudXRpbCA+IGxpOmZvY3VzID4gc3BhbjphZnRlcixcbiAgLmhvbWUgbmF2IC51dGlsID4gbGk6Zm9jdXMgPiBhOmFmdGVyLCAuaG9tZSBuYXYgLnV0aWwgPiBsaS5hY3RpdmUgPiBzcGFuOmFmdGVyLFxuICAuaG9tZSBuYXYgLnV0aWwgPiBsaS5hY3RpdmUgPiBhOmFmdGVyLFxuICAuaG9tZSBuYXYgLmdsb2JhbCA+IGxpOmhvdmVyID4gc3BhbjphZnRlcixcbiAgLmhvbWUgbmF2IC5nbG9iYWwgPiBsaTpob3ZlciA+IGE6YWZ0ZXIsXG4gIC5ob21lIG5hdiAuZ2xvYmFsID4gbGk6Zm9jdXMgPiBzcGFuOmFmdGVyLFxuICAuaG9tZSBuYXYgLmdsb2JhbCA+IGxpOmZvY3VzID4gYTphZnRlcixcbiAgLmhvbWUgbmF2IC5nbG9iYWwgPiBsaS5hY3RpdmUgPiBzcGFuOmFmdGVyLFxuICAuaG9tZSBuYXYgLmdsb2JhbCA+IGxpLmFjdGl2ZSA+IGE6YWZ0ZXIge1xuICAgIGJvdHRvbTogLTVweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgbmF2IC5nbG9iYWwgPiBsaSA+IHNwYW4sXG4gIG5hdiAuZ2xvYmFsID4gbGkgPiBhLFxuICBuYXYgLnV0aWwgPiBsaSA+IHNwYW4sXG4gIG5hdiAudXRpbCA+IGxpID4gYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMC44NDM3NWVtO1xuICAgIG1pbi1oZWlnaHQ6IDYycHg7IH1cbiAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YixcbiAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIge1xuICAgIHBhZGRpbmctdG9wOiA2MHB4OyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyxcbiAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyB7XG4gICAgICBtYXgtd2lkdGg6IDQzMHB4O1xuICAgICAgZmxleDogMSAwIDQzMHB4OyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIHAsXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyBwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07IH1cbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItaW50cm8gLmltYWdlLWxpbmssXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyAuaW1hZ2UtbGluayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDgwcHg7IH1cbiAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5zdWItdGl0bGUsXG4gICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLnN1Yi10aXRsZSB7XG4gICAgICBtaW4taGVpZ2h0OiAyMHB4OyB9XG4gIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzID4gc3BhbixcbiAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgPiBhIHtcbiAgICBtYXJnaW4tbGVmdDogMTRweDsgfVxuICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzID4gc3BhbjpiZWZvcmUsXG4gICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgPiBhOmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDI0cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICBuYXYgLmdsb2JhbCA+IGxpID4gc3BhbixcbiAgbmF2IC5nbG9iYWwgPiBsaSA+IGEsXG4gIG5hdiAudXRpbCA+IGxpID4gc3BhbixcbiAgbmF2IC51dGlsID4gbGkgPiBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDM2cHg7XG4gICAgY29sb3I6ICMyYzJmMmY7XG4gICAgZm9udC1zaXplOiAwLjkzNzVlbTsgfVxuICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1Yi1pbnRybyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgPiBzcGFuLFxuICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyA+IGEge1xuICAgIG1hcmdpbi1sZWZ0OiAyNHB4OyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgPiBzcGFuOmJlZm9yZSxcbiAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyA+IGE6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0yOHB4O1xuICAgICAgaGVpZ2h0OiAyNnB4OyB9XG4gIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViLWludHJvIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIG1pbi13aWR0aDogNDkycHg7XG4gICAgZmxleDogMSAwIDQ5MnB4OyB9XG4gIG5hdiAudXRpbCA+IGxpIHNwYW4sXG4gIG5hdiAudXRpbCA+IGxpIGEge1xuICAgIGZvbnQtc2l6ZTogMC43ODEyNWVtOyB9IH1cblxubmF2IC5nbG9iYWwtc3ViIC5jb2x1bW5zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzIGVhc2UtaW4tb3V0OyB9XG5cbm5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIHAge1xuICAgIGNvbG9yOiAjNjE2MzYzOyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLWludHJvIHAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICMyYzJmMmY7IH1cblxubmF2IC5nbG9iYWwtc3ViIC5zdWItdGl0bGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMC44NDM3NWVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgbWFyZ2luOiAxMHB4IDEwcHggMDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyIC40cztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICBuYXYgLmdsb2JhbC1zdWIgLnN1Yi10aXRsZSArIC5nbG9iYWwtc3ViLW5hdiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICB0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC40cyBlYXNlLWluLW91dDtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViIC5zdWItdGl0bGUgKyAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbm5hdiAuZ2xvYmFsLXN1YiAuaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICBuYXYgLmdsb2JhbC1zdWIgLmlzLWFjdGl2ZSAuc3ViLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJjMmYyZjsgfVxuICAgIG5hdiAuZ2xvYmFsLXN1YiAuaXMtYWN0aXZlIC5zdWItdGl0bGUgKyAuZ2xvYmFsLXN1Yi1uYXYge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7IH1cblxubmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiB7XG4gIHBhZGRpbmc6IDAgMTBweDsgfVxuICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgbGkge1xuICAgIGZvbnQtZmFtaWx5OiAnSGV1cmlzdGljYSc7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cbiAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IGxpID4gYSxcbiAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IGxpID4gc3BhbiB7XG4gICAgICBjb2xvcjogIzJjMmYyZjsgfVxuICAgICAgbmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiBsaSA+IGE6aG92ZXIsIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgbGkgPiBhOmZvY3VzLFxuICAgICAgbmF2IC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiBsaSA+IHNwYW46aG92ZXIsXG4gICAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IGxpID4gc3Bhbjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgbGkge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE4NzVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgbmF2IC5nbG9iYWwtc3ViIHtcbiAgICBwYWRkaW5nLXRvcDogNjVweDtcbiAgICBtaW4taGVpZ2h0OiA0OTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBuYXYgLmdsb2JhbC1zdWI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogOTk5OXB4O1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1pbnRybyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYge1xuICAgICAgcGFkZGluZzogMCAwIDUwcHg7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lOyB9XG4gICAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07IH1cbiAgICBuYXYgLmdsb2JhbC1zdWIgLnN1Yi10aXRsZSB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xuICAgICAgZm9udC1zaXplOiAwLjg0Mzc1ZW07XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzYxNjM2MzsgfVxuICAgICAgbmF2IC5nbG9iYWwtc3ViIC5zdWItdGl0bGUgKyAuZ2xvYmFsLXN1Yi1uYXYge1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gIG5hdiAuZ2xvYmFsLXN1YiAucm93IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDsgfVxuICBuYXYgLmludmVzdG9ycyAucm93IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nOiAwOyB9XG4gIG5hdiAuaW52ZXN0b3JzIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgbmF2IC5pbnZlc3RvcnMgLnJvdyAucm93IC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5zdWItdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIG5hdiAuZ2xvYmFsLXN1YiAuc3ViLXRpdGxlOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGU4MDQnO1xuICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgY29sb3I6ICMwQjg2NTE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgMDtcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgLnN1Yi10aXRsZSB7XG4gICAgY29sb3I6ICMyYzJmMmY7IH1cbiAgICBuYXYgLmdsb2JhbC1zdWIgLmlzLWFjdGl2ZSAuc3ViLXRpdGxlOmFmdGVyIHtcbiAgICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgxODBkZWcpOyB9XG4gIG5hdiAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgLmdsb2JhbC1zdWItbmF2IHtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjRzIGVhc2UtaW4tb3V0O1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBuYXYgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5zdWItbmF2ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgbmF2IC5nbG9iYWwtc3ViIC5zdWItbmF2ID4gYTphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxlODA0JztcbiAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlIDA7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5zdWItbmF2OmhvdmVyID4gYSwgbmF2IC5nbG9iYWwtc3ViIC5zdWItbmF2OmZvY3VzID4gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIG5hdiAuZ2xvYmFsLXN1YiAuc3ViLW5hdi5pcy1hY3RpdmUgPiBhOmFmdGVyIHtcbiAgICBjb2xvcjogIzJjMmYyZjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7IH1cbiAgbmF2IC5nbG9iYWwtc3ViIC5zdWItbmF2LmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYge1xuICAgIG1heC1oZWlnaHQ6IDUwMHB4OyB9IH1cblxuLmludi1jZW50cmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDEwcHggMjBweDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDsgfVxuICAuaW52LWNlbnRyZTpob3ZlciwgLmludi1jZW50cmU6Zm9jdXMsIC5pbnYtY2VudHJlLmFjdGl2ZSB7XG4gICAgY29sb3I6ICM2MTYzNjM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5pbnYtY2VudHJlIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDA7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IG5vbmU7XG4gICAgICAtbW96LXRyYW5zaXRpb246IG5vbmU7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgIC1vLXRyYW5zaXRpb246IG5vbmU7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgbWFyZ2luOiAwIDAgMjBweDsgfSB9XG5cbi5tYmwtYmFjayB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2MjY0NjQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAzMHB4IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogIzAwMDsgfVxuICAubWJsLWJhY2s6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5tYmwtYmFjazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubWJsLWJhY2s6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIu6ggVwiO1xuICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgY29sb3I6ICMyYzJmMmY7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIHdpZHRoOiA5cHg7XG4gICAgaGVpZ2h0OiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAubWJsLWJhY2sge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICBuYXYgLmdsb2JhbCAuaW52ZXN0b3JzIC5nbG9iYWwtc3ViLWludHJvIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IC01cHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLm5hdi13cmFwcGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxMDAwcHg7IH1cbiAgbmF2IC5tZW51LXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIG5hdiAuZ2xvYmFsID4gbGksXG4gIG5hdiAudXRpbCA+IGxpIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYmNiO1xuICAgIG1hcmdpbjogMCAtNXB4OyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaSA+IHNwYW4sXG4gICAgbmF2IC5nbG9iYWwgPiBsaSA+IGEsXG4gICAgbmF2IC51dGlsID4gbGkgPiBzcGFuLFxuICAgIG5hdiAudXRpbCA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogIzJjMmYyZjtcbiAgICAgIHBhZGRpbmc6IDhweCA1cHg7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAxODc1ZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpID4gc3Bhbjpob3ZlciwgbmF2IC5nbG9iYWwgPiBsaSA+IHNwYW46Zm9jdXMsIG5hdiAuZ2xvYmFsID4gbGkgPiBzcGFuLmFjdGl2ZSxcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgPiBhOmhvdmVyLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSA+IGE6Zm9jdXMsXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpID4gYS5hY3RpdmUsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IHNwYW46aG92ZXIsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IHNwYW46Zm9jdXMsXG4gICAgICBuYXYgLnV0aWwgPiBsaSA+IHNwYW4uYWN0aXZlLFxuICAgICAgbmF2IC51dGlsID4gbGkgPiBhOmhvdmVyLFxuICAgICAgbmF2IC51dGlsID4gbGkgPiBhOmZvY3VzLFxuICAgICAgbmF2IC51dGlsID4gbGkgPiBhLmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5zdWItdGl0bGUsXG4gICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLnN1Yi10aXRsZSB7XG4gICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgIHBhZGRpbmc6IDE1cHggMjZweCAxNXB4IDVweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNjE2MzYzOyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5zdWItdGl0bGU6YWZ0ZXIsXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuc3ViLXRpdGxlOmFmdGVyIHtcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxNXB4IDcuNXB4O1xuICAgICAgICBjb2xvcjogIzYxNjM2MzsgfVxuICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmlzLWFjdGl2ZSAuc3ViLXRpdGxlLFxuICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgLnN1Yi10aXRsZSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmOyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgLnN1Yi10aXRsZTphZnRlcixcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgLnN1Yi10aXRsZTphZnRlciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7IH1cbiAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgKyAuY29sdW1ucyAuc3ViLXRpdGxlLFxuICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5pcy1hY3RpdmUgKyAuY29sdW1ucyAuc3ViLXRpdGxlIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmY7IH1cbiAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5tZW51LXRpdGxlLFxuICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5tZW51LXRpdGxlIHtcbiAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgLnN1Yi1uYXYuaXMtYWN0aXZlOmhvdmVyID4gYSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgLnN1Yi1uYXYuaXMtYWN0aXZlOmZvY3VzID4gYSwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgLnN1Yi1uYXYuaXMtYWN0aXZlLmFjdGl2ZSA+IGEsXG4gICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5zdWItbmF2LmlzLWFjdGl2ZTpob3ZlciA+IGEsXG4gICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5zdWItbmF2LmlzLWFjdGl2ZTpmb2N1cyA+IGEsXG4gICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5zdWItbmF2LmlzLWFjdGl2ZS5hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYsXG4gICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2LFxuICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdixcbiAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2IHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDAgNXB4OyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGksXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSxcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYmNiOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhLFxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpID4gc3BhbixcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhLFxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSA+IHNwYW4sXG4gICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpID4gYSxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBzcGFuLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBzcGFuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDVweDsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhOmFmdGVyLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpID4gYTphZnRlcixcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSA+IHNwYW46YWZ0ZXIsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhOmFmdGVyLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpID4gc3BhbjphZnRlcixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkgPiBhOmFmdGVyLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSA+IHNwYW46YWZ0ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4OyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zmlyc3QtY2hpbGQsXG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZpcnN0LWNoaWxkLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmaXJzdC1jaGlsZCxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNjE2MzYzOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCxcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cywgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUsXG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyLFxuICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyxcbiAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlcixcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMsXG4gICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMsXG4gICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBjb2xvcjogIzAwMDsgfVxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYSxcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3BhbiwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3BhbixcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IGEsXG4gICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYSxcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IHNwYW4sXG4gICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gYSxcbiAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYSxcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IHNwYW4sXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBhLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3BhbixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IHNwYW4sXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYSxcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuLFxuICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IGEsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3BhbixcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gYSxcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3BhbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhOmhvdmVyLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYTpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IHNwYW46Zm9jdXMsIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBhOmhvdmVyLCBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYTpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IHNwYW46Zm9jdXMsIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gYTpob3ZlciwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBhOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBhOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gYTpob3ZlcixcbiAgICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXMsXG4gICAgICAgICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3Bhbjpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYTpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYTpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gc3Bhbjpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gc3Bhbjpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYTpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYTpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3Bhbjpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3Bhbjpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3Bhbjpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IHNwYW46Zm9jdXMsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBhOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmhvdmVyID4gYTpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpob3ZlciA+IHNwYW46aG92ZXIsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6aG92ZXIgPiBzcGFuOmZvY3VzLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gYTpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmb2N1cyA+IGE6Zm9jdXMsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6Zm9jdXMgPiBzcGFuOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZvY3VzID4gc3Bhbjpmb2N1cyxcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBhOmhvdmVyLFxuICAgICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpLmFjdGl2ZSA+IGE6Zm9jdXMsXG4gICAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkuYWN0aXZlID4gc3Bhbjpob3ZlcixcbiAgICAgICAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaS5hY3RpdmUgPiBzcGFuOmZvY3VzIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgLmdsb2JhbC1zdWItbmF2ID4gbGksXG4gICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpIC5nbG9iYWwtc3ViLW5hdiA+IGxpLFxuICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSxcbiAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpIC5nbG9iYWwtc3ViLW5hdiA+IGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOTM3NWVtOyB9XG4gICAgICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpsYXN0LWNoaWxkLFxuICAgICAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmxhc3QtY2hpbGQsXG4gICAgICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGkgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCxcbiAgICAgICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGkgLmdsb2JhbC1zdWItbmF2ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6aG92ZXIgPiBhLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpOmhvdmVyID4gc3BhbiwgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpOmZvY3VzID4gYSxcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KTpmb2N1cyA+IHNwYW4sIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KS5hY3RpdmUgPiBhLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpLmFjdGl2ZSA+IHNwYW4sXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpOmhvdmVyID4gYSxcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6aG92ZXIgPiBzcGFuLFxuICAgICAgbmF2IC5nbG9iYWwgPiBsaSAuZ2xvYmFsLXN1Yi5pcy1hY3RpdmUgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KTpmb2N1cyA+IGEsXG4gICAgICBuYXYgLmdsb2JhbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpOmZvY3VzID4gc3BhbixcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdikuYWN0aXZlID4gYSxcbiAgICAgIG5hdiAuZ2xvYmFsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdikuYWN0aXZlID4gc3BhbixcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6aG92ZXIgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KTpob3ZlciA+IHNwYW4sXG4gICAgICBuYXYgLnV0aWwgPiBsaSAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpOmZvY3VzID4gYSxcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6Zm9jdXMgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KS5hY3RpdmUgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2ID4gbGk6bm90KC5zdWItbmF2KS5hY3RpdmUgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6aG92ZXIgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6aG92ZXIgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6Zm9jdXMgPiBhLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdik6Zm9jdXMgPiBzcGFuLFxuICAgICAgbmF2IC51dGlsID4gbGkgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIC5nbG9iYWwtc3ViLW5hdiA+IGxpOm5vdCguc3ViLW5hdikuYWN0aXZlID4gYSxcbiAgICAgIG5hdiAudXRpbCA+IGxpIC5nbG9iYWwtc3ViLmlzLWFjdGl2ZSAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpub3QoLnN1Yi1uYXYpLmFjdGl2ZSA+IHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyOyB9XG4gIG5hdiAuZ2xvYmFsID4gbGk6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjNjE2MzYzOyB9XG4gIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5nbG9iYWwtc3ViLW5hdiB7XG4gICAgbWFyZ2luOiAwIDEwcHg7IH1cbiAgICBuYXYgLmdsb2JhbCA+IGxpLmludmVzdG9ycyAuZ2xvYmFsLXN1YiAuZ2xvYmFsLXN1Yi1uYXYgPiBsaTpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItdG9wOiBub25lOyB9XG4gIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5pbnYtY2VudHJlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzYxNjM2MztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBjb2xvcjogIzJjMmYyZjtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxODc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDAuODc1ZW07XG4gICAgcGFkZGluZzogMTVweCAwIDE1cHggMzBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogbm9uZTtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAgIG5hdiAuZ2xvYmFsID4gbGkuaW52ZXN0b3JzIC5nbG9iYWwtc3ViIC5pbnYtY2VudHJlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIu6gs1wiO1xuICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgY29sb3I6ICMwMGU4NjI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDBweDtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLmdsb2JhbC1zdWIgLmludi1jZW50cmU6aG92ZXIsXG4gICAgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLmdsb2JhbC1zdWIgLmludi1jZW50cmU6Zm9jdXMgbmF2IC5nbG9iYWwgPiBsaS5pbnZlc3RvcnMgLmdsb2JhbC1zdWIgLmludi1jZW50cmUuYWN0aXZlIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAjMDBiNTRjOyB9XG4gIG5hdiAudXRpbCA+IGxpOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYmNiOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICBoZWFkZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA5OTk5OTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBoZWFkZXIsXG4gIGhlYWRlciAuY29udGFpbmVyLFxuICAubG9nbyB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7IH1cbiAgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbCA+IGxpOmhvdmVyIC5nbG9iYWwtc3ViLFxuICBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsID4gbGk6aG92ZXIgPiBzcGFuOmFmdGVyLFxuICBoZWFkZXIgLmNvbnRhaW5lciAudXRpbCA+IGxpOmhvdmVyIC5nbG9iYWwtc3ViLFxuICBoZWFkZXIgLmNvbnRhaW5lciAudXRpbCA+IGxpOmhvdmVyID4gc3BhbjphZnRlciB7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC41cyBlYXNlLWluLW91dDsgfVxuICAjbWFpbiB7XG4gICAgbWFyZ2luLXRvcDogMTI2cHg7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG1hcmdpbi10b3AgLjVzIGVhc2UtaW4tb3V0OyB9XG4gIC5zdGlja3ktaGVhZGVyICNtYWluIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4ICFpbXBvcnRhbnQ7IH1cbiAgLnN0aWNreS1oZWFkZXIgaGVhZGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTYwcHgpOyB9XG4gICAgLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExcHgpOyB9XG4gICAgICAuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAubG9nbyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMnB4KSBzY2FsZSgwLjYpOyB9XG4gICAgICAuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsLXN1YiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTFweCkgIWltcG9ydGFudDsgfVxuICAgICAgLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gYTphZnRlcixcbiAgICAgIC5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIC5nbG9iYWwgPiBsaSA+IHNwYW46YWZ0ZXIsXG4gICAgICAuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAudXRpbCA+IGxpID4gYTphZnRlcixcbiAgICAgIC5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIC51dGlsID4gbGkgPiBzcGFuOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMXB4KSAhaW1wb3J0YW50OyB9XG4gICNob21lICNtYWluIHtcbiAgICBtYXJnaW4tdG9wOiAxNjBweDsgfVxuICAjaG9tZS5zdGlja3ktaGVhZGVyICNtYWluIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4ICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTRweCk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMyYzJmMmY7IH1cbiAgICAjaG9tZS5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNHB4KTsgfVxuICAgICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAubG9nbyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNXB4KSBzY2FsZSgwLjc1KTsgfVxuICAgICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsLXN1YiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCkgIWltcG9ydGFudDsgfVxuICAgICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAudXRpbCA+IGxpID4gYTphZnRlcixcbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLnV0aWwgPiBsaSA+IHNwYW46YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICNtYWluIHtcbiAgICBtYXJnaW4tdG9wOiAxNTBweDsgfVxuICAuc3RpY2t5LWhlYWRlciBoZWFkZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtODBweCk7IH1cbiAgICAuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTVweCk7IH1cbiAgICAgIC5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIC5nbG9iYWwtc3ViIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KSAhaW1wb3J0YW50OyB9XG4gICAgICAuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gc3BhbjphZnRlcixcbiAgICAgIC5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIC51dGlsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLnV0aWwgPiBsaSA+IHNwYW46YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWUgI21haW4ge1xuICAgIG1hcmdpbi10b3A6IDE4MnB4OyB9XG4gICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTk3cHgpOyB9XG4gICAgI2hvbWUuc3RpY2t5LWhlYWRlciBoZWFkZXIgLmNvbnRhaW5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmxvZ28ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjVweCkgc2NhbGUoMC41NSk7IH1cbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbC1zdWIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIzcHgpICFpbXBvcnRhbnQ7IH1cbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gYTphZnRlcixcbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gc3BhbjphZnRlcixcbiAgICAgICNob21lLnN0aWNreS1oZWFkZXIgaGVhZGVyIC5jb250YWluZXIgLnV0aWwgPiBsaSA+IGE6YWZ0ZXIsXG4gICAgICAjaG9tZS5zdGlja3ktaGVhZGVyIGhlYWRlciAuY29udGFpbmVyIC51dGlsID4gbGkgPiBzcGFuOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KSAhaW1wb3J0YW50OyB9IH1cblxuLnJlc2l6ZSBoZWFkZXIsXG4ucmVzaXplIGhlYWRlciAuY29udGFpbmVyLFxuLnJlc2l6ZSBoZWFkZXIgLmNvbnRhaW5lciAuZ2xvYmFsLXN1Yixcbi5yZXNpemUgLmxvZ28sXG4ucmVzaXplICNtYWluLFxuLnJlc2l6ZSAubmF2LXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBub25lOyB9XG5cbi5jb250ZW50LW5hdiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY29udGVudC1uYXYgLm1ibC1iYWNrIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBjb2xvcjogIzYxNjM2MztcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAuMnM7XG4gICAgei1pbmRleDogOTk5O1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgICAuY29udGVudC1uYXYgLm1ibC1iYWNrOmhvdmVyLCAuY29udGVudC1uYXYgLm1ibC1iYWNrOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IC5tYmwtYmFjayB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuY29udGVudC1uYXYgLm1ibC1iYWNrIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IC5tYmwtYmFjayB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMDRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IC5tYmwtYmFjayB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY29udGVudC1uYXYgLm1ibC1jb250ZW50LW5hdiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICBjb2xvcjogIzYxNjM2MztcbiAgICBtYXJnaW46IDIwcHggMCAwO1xuICAgIHBhZGRpbmc6IDAgMzBweCAyMHB4IDIwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNvbnRlbnQtbmF2IC5tYmwtY29udGVudC1uYXY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbnRlbnQtbmF2IC5tYmwtY29udGVudC1uYXY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuY29udGVudC1uYXYgLm1ibC1jb250ZW50LW5hdjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIu6ghFwiO1xuICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIC1vLXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwO1xuICAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMzclIDA7XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwO1xuICAgICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwO1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IC5tYmwtY29udGVudC1uYXYge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAuY29udGVudC1uYXYgLm1ibC1jb250ZW50LW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIC5jb250ZW50LW5hdiAubWJsLWNvbnRlbnQtbmF2LmlzLWFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzJjMmYyZjsgfVxuICAgICAgLmNvbnRlbnQtbmF2IC5tYmwtY29udGVudC1uYXYuaXMtYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAuY29udGVudC1uYXYgLm1ibC1jb250ZW50LW5hdi5pcy1hY3RpdmUgKyB1bCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDsgfVxuICAgIC5jb250ZW50LW5hdiAubWJsLWNvbnRlbnQtbmF2LmlzLWFjdGl2ZSArIHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjY2FjYmNiOyB9XG4gIC5jb250ZW50LW5hdiB1bCB7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAuY29udGVudC1uYXYgdWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbnRlbnQtbmF2IHVsOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmNvbnRlbnQtbmF2IHVsIGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45MDYyNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTc2NDdlbTtcbiAgICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4gICAgICAuY29udGVudC1uYXYgdWwgbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5jb250ZW50LW5hdiB1bCBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjk2ODc1ZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzMzNlbTsgfSB9XG4gICAgICAuY29udGVudC1uYXYgdWwgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAjNjE2MzYzOyB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgICAgICAuY29udGVudC1uYXYgdWwgbGkgYTpob3ZlciwgLmNvbnRlbnQtbmF2IHVsIGxpIGE6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfSB9XG4gICAgICAgIC5jb250ZW50LW5hdiB1bCBsaSBhLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC5jb250ZW50LW5hdiB1bCBsaTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5jb250ZW50LW5hdiB1bCBsaTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmNvbnRlbnQtbmF2IHVsIGxpLnRpdGxlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNjYWNiY2I7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbiAgICAgICAgLmNvbnRlbnQtbmF2IHVsIGxpLnRpdGxlID4gYSB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICAgICAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjMwNzY5ZW07XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgICAgICAgLmNvbnRlbnQtbmF2IHVsIGxpLnRpdGxlID4gYTpob3ZlciwgLmNvbnRlbnQtbmF2IHVsIGxpLnRpdGxlID4gYTpmb2N1cyB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBjb2xvcjogIzJjMmYyZjsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgICAgLmNvbnRlbnQtbmF2IHVsIGxpLnRpdGxlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4OyB9XG4gICAgICAgICAgICAuY29udGVudC1uYXYgdWwgbGkudGl0bGUgPiBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1ZW07XG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuY29udGVudC1uYXYgdWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jb250ZW50LW5hdiB1bCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IHVsIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMDBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5jb250ZW50LW5hdiB1bCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmNvbnRlbnQtbmF2IHVsIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNzZweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4OyB9IH1cblxuLmNvbnRlbnQtbmF2Lm1vYmlsZS1uYXYge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY29udGVudC1uYXYuZGVza3RvcC1uYXYge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbnRlbnQtbmF2Lm1vYmlsZS1uYXYge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDsgfVxuICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsIHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyNnB4IDI2cHggMjZweCAwOyB9XG4gICAgICAuY29udGVudC1uYXYuZGVza3RvcC1uYXYgPiB1bCA+IGxpLmRyb3Bkb3duIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNiY2I7IH1cbiAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IC50aXRsZSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAgICAgICAuY29udGVudC1uYXYuZGVza3RvcC1uYXYgPiB1bCA+IGxpLmRyb3Bkb3duID4gLnRpdGxlOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGU4MDQnO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gICAgICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkuZHJvcGRvd24gPiB1bCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjZzIGVhc2UtaW4tb3V0OyB9XG4gICAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IHVsID4gbGkgPiBhOmhvdmVyLCAuY29udGVudC1uYXYuZGVza3RvcC1uYXYgPiB1bCA+IGxpLmRyb3Bkb3duID4gdWwgPiBsaSBhOmZvY3VzIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IHVsID4gbGk6YWN0aXZlIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgICAuY29udGVudC1uYXYuZGVza3RvcC1uYXYgPiB1bCA+IGxpLmRyb3Bkb3duID4gdWwgPiBsaSA+IHVsIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IHVsID4gbGkgPiB1bCA+IGxpIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjk2ODc1ZW07XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7IH1cbiAgICAgICAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IHVsID4gbGkgPiB1bCA+IGxpID4gYTpob3ZlciwgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93biA+IHVsID4gbGkgPiB1bCA+IGxpIGE6Zm9jdXMge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAgICAgICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkuZHJvcGRvd24gPiB1bCA+IGxpID4gdWwgPiBsaTphY3RpdmUgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkuZHJvcGRvd24uaXMtYWN0aXZlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93bi5pcy1hY3RpdmUgPiAudGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93bi5pcy1hY3RpdmUgPiAudGl0bGU6YWZ0ZXIge1xuICAgICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyB9XG4gICAgICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkuZHJvcGRvd24uaXMtYWN0aXZlID4gdWwge1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDsgfVxuICAgICAgICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkuZHJvcGRvd24uaXMtYWN0aXZlID4gdWwgPiBsaS5pcy1hY3RpdmUgPiB1bCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7IH1cbiAgICAgICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaS5kcm9wZG93bi5pcy1hY3RpdmUgPiB1bCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNiY2I7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiA+IHVsID4gbGkge1xuICAgIGZvbnQtc2l6ZTogMS4wMzEyNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2ID4gdWwgPiBsaSB7XG4gICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfSB9XG5cbi5oZXJvIC5jb250YWluZXIge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5oZXJvIC5jb250YWluZXIgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlcm8gLmNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkge1xuICAgIGJhY2tncm91bmQ6ICMyYzJmMmY7XG4gICAgcGFkZGluZzogMjBweCAyMHB4IDQwcHggMjBweDsgfVxuICAgIC5oZXJvIC5jb250YWluZXIgLmhlcm8tY29weTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHk6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHggNDBweCAzMHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA1Ni4zMTI1ZW0pIHtcbiAgICAgIC5oZXJvIC5jb250YWluZXIgLmhlcm8tY29weSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDI5MHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgPiAqIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oZXJvIC5jb250YWluZXIgLmhlcm8tY29weSB7XG4gICAgICAgIGxlZnQ6IDQwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5oZXJvIC5jb250YWluZXIgLmhlcm8tY29weSB7XG4gICAgICAgIG1heC13aWR0aDogMzUwcHg7XG4gICAgICAgIHBhZGRpbmc6IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsZWZ0OiA4MHB4OyB9IH1cbiAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgaDEge1xuICAgICAgY29sb3I6ICMwMGU4NjI7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgaDEge1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1heC13aWR0aDogNDglO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS43NWVtOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2LjMxMjVlbSkge1xuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDgwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgIC5oZXJvIC5jb250YWluZXIgLmhlcm8tY29weSBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1ZW07XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cbiAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgcCB7XG4gICAgICBjb2xvcjogI2VhZWFlYTtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS40MTE3NmVtOyB9XG4gICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgcCBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgcCB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1heC13aWR0aDogNDglOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDU2LjMxMjVlbSkge1xuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgcCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuaGVybyAuY29udGFpbmVyIC5oZXJvLWNvcHkgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS40MTE3NmVtO1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIG1heC13aWR0aDogODAlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgICAgLmhlcm8gLmNvbnRhaW5lciAuaGVyby1jb3B5IHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7IH0gfVxuXG5pbnB1dFt0eXBlPSd0ZXh0J10sIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sIGlucHV0W3R5cGU9J2RhdGUnXSwgaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSwgaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgaW5wdXRbdHlwZT0nbW9udGgnXSwgaW5wdXRbdHlwZT0nd2VlayddLCBpbnB1dFt0eXBlPSdlbWFpbCddLCBpbnB1dFt0eXBlPSdudW1iZXInXSwgaW5wdXRbdHlwZT0nc2VhcmNoJ10sIGlucHV0W3R5cGU9J3RlbCddLCBpbnB1dFt0eXBlPSd0aW1lJ10sIGlucHV0W3R5cGU9J3VybCddLCBpbnB1dFt0eXBlPSdjb2xvciddLCB0ZXh0YXJlYSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3V0bGluZTogbm9uZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjNlbTsgfVxuXG5maWVsZHNldCBsZWdlbmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5ZW07XG4gIGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb2xkJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNjI1ZW07IH1cblxuZmllbGRzZXQgLmZvcm0tcm93IHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDAgMjBweCAwOyB9XG4gIGZpZWxkc2V0IC5mb3JtLXJvdzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgZmllbGRzZXQgLmZvcm0tcm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG5cbmZpZWxkc2V0IGxhYmVsIHtcbiAgZm9udC1mYW1pbHk6ICdTdG9semwgVzAwIEJvbGQnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNWVtOyB9XG5cbmZpZWxkc2V0IHNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogc29saWQgMXB4ICM5Njk3OTc7XG4gIHBhZGRpbmc6IDhweCAzMHB4IDEwcHggMTBweDtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDFlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAvKlJlbW92ZXMgZGVmYXVsdCBjaHJvbWUgYW5kIHNhZmFyaSBzdHlsZSovXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLyogUmVtb3ZlcyBEZWZhdWx0IEZpcmVmb3ggc3R5bGUqL1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybCguLi9pbWcvaWNvbnMvaWNvbi1kZC1hcnJvdy5wbmcpIG5vLXJlcGVhdDtcbiAgLypBZGRzIGJhY2tncm91bmQtaW1hZ2UqL1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxN3B4O1xuICAvKlBvc2l0aW9uIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlKi9cbiAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcbiAgLyogUmVtb3ZlcyBkZWZhdWx0IGFycm93IGZyb20gZmlyZWZveCovXG4gIHRleHQtb3ZlcmZsb3c6IFwiXCI7XG4gIC8qUmVtb3ZlcyBkZWZhdWx0IGFycm93IGZyb20gZmlyZWZveCovXG4gIGhlaWdodDogNDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG4gIGZpZWxkc2V0IHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggI2ZmZjsgfVxuXG5maWVsZHNldCBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAvKmllMTEgZ2V0IHJpZCBvZiBkZWZhdWx0IGRkIGFycm93Ki9cbiAgZGlzcGxheTogbm9uZTsgfVxuXG5maWVsZHNldCBpbnB1dFt0eXBlPSd0ZXh0J10sIGZpZWxkc2V0IGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sIGZpZWxkc2V0IGlucHV0W3R5cGU9J2RhdGUnXSwgZmllbGRzZXQgaW5wdXRbdHlwZT0nZGF0ZXRpbWUnXSwgZmllbGRzZXQgaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgZmllbGRzZXQgaW5wdXRbdHlwZT0nbW9udGgnXSwgZmllbGRzZXQgaW5wdXRbdHlwZT0nd2VlayddLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdlbWFpbCddLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdudW1iZXInXSwgZmllbGRzZXQgaW5wdXRbdHlwZT0nc2VhcmNoJ10sIGZpZWxkc2V0IGlucHV0W3R5cGU9J3RlbCddLCBmaWVsZHNldCBpbnB1dFt0eXBlPSd0aW1lJ10sIGZpZWxkc2V0IGlucHV0W3R5cGU9J3VybCddLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdjb2xvciddLCBmaWVsZHNldCB0ZXh0YXJlYSB7XG4gIGhlaWdodDogNDBweDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW46IDAgMCAyMHB4IDA7XG4gIGJvcmRlcjogc29saWQgMXB4ICM5Njk3OTc7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNWVtOyB9XG4gIGZpZWxkc2V0IGlucHV0W3R5cGU9J3RleHQnXTpmb2N1cywgZmllbGRzZXQgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXTpmb2N1cywgZmllbGRzZXQgaW5wdXRbdHlwZT0nZGF0ZSddOmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdkYXRldGltZSddOmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdkYXRldGltZS1sb2NhbCddOmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdtb250aCddOmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPSd3ZWVrJ106Zm9jdXMsIGZpZWxkc2V0IGlucHV0W3R5cGU9J2VtYWlsJ106Zm9jdXMsIGZpZWxkc2V0IGlucHV0W3R5cGU9J251bWJlciddOmZvY3VzLCBmaWVsZHNldCBpbnB1dFt0eXBlPSdzZWFyY2gnXTpmb2N1cywgZmllbGRzZXQgaW5wdXRbdHlwZT0ndGVsJ106Zm9jdXMsIGZpZWxkc2V0IGlucHV0W3R5cGU9J3RpbWUnXTpmb2N1cywgZmllbGRzZXQgaW5wdXRbdHlwZT0ndXJsJ106Zm9jdXMsIGZpZWxkc2V0IGlucHV0W3R5cGU9J2NvbG9yJ106Zm9jdXMsIGZpZWxkc2V0IHRleHRhcmVhOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7IH1cblxuZmllbGRzZXQgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW46IDA7IH1cblxuZmllbGRzZXQgLnNlYXJjaC1pbnB1dCBpbnB1dFt0eXBlPSd0ZXh0J10ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDE1cHggMCAwO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNjZweCk7IH1cblxuZmllbGRzZXQgLnNlYXJjaC1pbnB1dCAuYnRuIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGJhY2tncm91bmQ6ICNlYzY3MWMgdXJsKFwiLi4vaW1nL2ljb25zL2ljb24tc2VhcmNoLnBuZ1wiKSBuby1yZXBlYXQgMTVweCA5cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNTFweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICB0ZXh0LWluZGVudDogOTk5OWVtOyB9XG5cbmZpZWxkc2V0IC5zZWFyY2gtZmlsdGVycyBsZWdlbmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IGF1dG87XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMCAxMHB4IDA7IH1cblxuZmllbGRzZXQgLnNlYXJjaC1maWx0ZXJzIHNlbGVjdCB7XG4gIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIGZpZWxkc2V0IC5zZWFyY2gtZmlsdGVycyBzZWxlY3Qge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMjAwcHg7XG4gICAgICBtYXJnaW46IDAgMTVweCAwIDA7IH0gfVxuXG5maWVsZHNldCAuc2VhcmNoLWZpbHRlcnMgLmJ0biB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5ob3ItZmlsdGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuICAuaG9yLWZpbHRlciBsZWdlbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW46IDAgMCAxMHB4IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuaG9yLWZpbHRlciBsZWdlbmQge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIC5ob3ItZmlsdGVyIC5maWVsZHMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogQ3JlYXRlcyBhIG5ldyBibG9jayBmb3JtYXQgY29udGV4dCwgd2hpY2ggd2lsbCBtYWtlIHRoaXMgdGFnIGZpbGwgdGhlIHJlbWFpbmluZyB3aWR0aCAqLyB9XG4gICAgLmhvci1maWx0ZXIgLmZpZWxkczpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuaG9yLWZpbHRlciAuZmllbGRzOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cCwgLmhvci1maWx0ZXIgLmZpZWxkLWdyb3VwLXdpZGUge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cCwgLmhvci1maWx0ZXIgLmZpZWxkLWdyb3VwLXdpZGUge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHggMCAwO1xuICAgICAgICB3aWR0aDogMjgycHg7IH0gfVxuICAgIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cCBzZWxlY3QsIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cC13aWRlIHNlbGVjdCB7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cCBsYWJlbCwgLmhvci1maWx0ZXIgLmZpZWxkLWdyb3VwLXdpZGUgbGFiZWwge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogLTk5OTllbTsgfVxuICAgIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cC13aWRlLCAuaG9yLWZpbHRlciAuZmllbGQtZ3JvdXAtd2lkZS13aWRlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIDAgMTBweCAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5ob3ItZmlsdGVyIC5maWVsZC1ncm91cC13aWRlLCAuaG9yLWZpbHRlciAuZmllbGQtZ3JvdXAtd2lkZS13aWRlIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMDtcbiAgICAgICAgICB3aWR0aDogODQ2cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhvci1maWx0ZXIgaW5wdXRbdHlwZT0nc3VibWl0J10ge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmhvci1maWx0ZXIuaGlkZS1sZWdlbmQgbGVnZW5kIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTk5OTllbTsgfVxuXG4uc2ltcGxlLXNlbGVjdCBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbiAgbWFyZ2luOiAwIDAgMTBweCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2ltcGxlLXNlbGVjdCBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEuMTg3NWVtOyB9IH1cblxuLnNpbXBsZS1zZWxlY3Qgc2VsZWN0IHtcbiAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNpbXBsZS1zZWxlY3Qgc2VsZWN0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW46IDAgMTBweCAwIDA7IH0gfVxuXG4ubm8tY3NzY29sdW1ucyBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG5cbi5jb250ZW50LXBhZ2UgLnd5c2l3eWcge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfSB9XG4gIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgZGl2Lnd5c2l3eWctaW5uZXIgPiAqOmZpcnN0LWNoaWxkLFxuICAuY29udGVudC1wYWdlIC53eXNpd3lnID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBkaXYud3lzaXd5Zy1pbm5lciA+ICo6Zmlyc3QtY2hpbGQsXG4gICAgICAuY29udGVudC1wYWdlIC53eXNpd3lnID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogLTZweDsgfVxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBkaXYud3lzaXd5Zy1pbm5lciA+IGgyOmZpcnN0LWNoaWxkLFxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyA+IGgyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEycHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBzdHJvbmcsIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgYiB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuICAuY29udGVudC1wYWdlIC53eXNpd3lnIGhyIHtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYmNiOyB9XG4gIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgaDIge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuY29udGVudC1wYWdlIC53eXNpd3lnIGgyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7IH0gfVxuICAuY29udGVudC1wYWdlIC53eXNpd3lnIGgzIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgaDMge1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoNCxcbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoNSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgaDQsXG4gICAgICAuY29udGVudC1wYWdlIC53eXNpd3lnIGg1IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoNCxcbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgaDUge1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuY29udGVudC1wYWdlIC53eXNpd3lnIHN1cCxcbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBzdWIge1xuICAgIGZvbnQtc2l6ZTogMC43ODk0N2VtO1xuICAgIHBhZGRpbmc6IDAgM3B4OyB9XG4gIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDIwcHggMDsgfVxuICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgdWwgbGkge1xuICAgICAgcGFkZGluZzogMCAwIDEwcHggMjVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB1bCBsaTpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgY29udGVudDogXCLigKIgXCI7XG4gICAgICAgIGNvbG9yOiAjMDBlODYyOyB9XG4gIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgb2wge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAyMHB4IDAgMjBweCAyMHB4OyB9XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBvbCBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDAgMTBweCA1cHg7IH1cbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBmaWd1cmUge1xuICAgIG1hcmdpbjogMjBweCAwIDE1cHggMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiA0MHB4IDAgMTVweCAwOyB9IH1cbiAgICAuY29udGVudC1wYWdlIC53eXNpd3lnIGZpZ3VyZSBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTtcbiAgICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuY29udGVudC1wYWdlIC53eXNpd3lnIGZpZ3VyZSBmaWdjYXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5Zy5saXN0LXN0YWNrZWQgdWwge1xuICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAtbW96LWNvbHVtbi1nYXA6IDQwcHg7XG4gICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNDBweDtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIGNvbHVtbi1nYXA6IDQwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5Zy5saXN0LXN0YWNrZWQgdWwgbGkge1xuICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5Zy5saXN0LXN0YWNrZWQgb2wge1xuICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAtbW96LWNvbHVtbi1nYXA6IDUwcHg7XG4gICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNTBweDtcbiAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgIGNvbHVtbi1nYXA6IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5Zy5saXN0LXN0YWNrZWQgb2wgbGkge1xuICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5Zy5saXN0LXN0YWNrZWQgdWwsIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcubGlzdC1zdGFja2VkIG9sIHtcbiAgICAgIC1tb3otY29sdW1uLWdhcDogNjBweDtcbiAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNjBweDtcbiAgICAgIGNvbHVtbi1nYXA6IDYwcHg7IH0gfVxuICAuY29udGVudC1wYWdlIC53eXNpd3lnIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyAubGVhZCB7XG4gICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyAubGVhZCB7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuY29udGVudC1wYWdlIC53eXNpd3lnIC5sZWFkIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgaDI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDsgfVxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7IH1cbiAgICAgIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgdWwsIC5jb250ZW50LXBhZ2UgLnd5c2l3eWcgb2wge1xuICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDYwcHg7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNjBweDtcbiAgICAgICAgY29sdW1uLWdhcDogNjBweDsgfVxuICAgICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyBibG9ja3F1b3RlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA3NSU7IH0gfVxuXG4vKiBQbHVnaW4gc3R5bGVzICovXG4uc29jaWFsLWZlZWQtZWxlbWVudC5oaWRkZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQgIWltcG9ydGFudDsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAucHVsbC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICB3aWR0aDogYXV0b1xcOTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLmF0dGFjaG1lbnQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljOyB9XG5cbi8qIExpbmsgc3R5bGVzICovXG4uc29jaWFsLWZlZWQtZWxlbWVudCBhIHtcbiAgY29sb3I6ICMwMDg4Y2M7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCBhOmZvY3VzIHtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMztcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCBhOmhvdmVyLFxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgYTphY3RpdmUge1xuICBvdXRsaW5lOiAwO1xuICBjb2xvcjogIzAwNTU4MDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLyogVGV4dCBzdHlsZXMgKi9cbi5zb2NpYWwtZmVlZC1lbGVtZW50IHNtYWxsIHtcbiAgZm9udC1zaXplOiA4NSU7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgcCB7XG4gIG1hcmdpbjogMCAwIDEwcHg7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLm1lZGlhLWJvZHkgPiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBtaW4taGVpZ2h0OiAyMHB4OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IHAuc29jaWFsLWZlZWQtdGV4dCB7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogNTtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDsgfVxuXG4vKiBNZXNzYWdlIHN0eWxlcyAqL1xuLnNvY2lhbC1mZWVkLWVsZW1lbnQsXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHpvb206IDE7XG4gICpvdmVyZmxvdzogdmlzaWJsZTsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtYm9keSAuc29jaWFsLW5ldHdvcmstaWNvbiB7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xuICB3aWR0aDogMTZweDsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtYm9keSBkaXYge1xuICBjb2xvcjogIzY2NjtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQ6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwOyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDQ4cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtaGVhZGluZyB7XG4gIG1hcmdpbjogMCAwIDVweDsgfVxuXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtbGlzdCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tdXRlZCB7XG4gIGNvbG9yOiAjOTk5OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IGEubXV0ZWQ6aG92ZXIsXG4uc29jaWFsLWZlZWQtZWxlbWVudCBhLm11dGVkOmZvY3VzIHtcbiAgY29sb3I6ICM4MDgwODA7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCAwIHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgdHJhbnNpdGlvbjogMC4yNXM7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBtYXJnaW46IC0xcHg7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjMzMzO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50OmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggMCByZ2JhKDEwLCAxMCwgMTAsIDAuNCk7IH1cblxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5zb2NpYWwtbmV0d29yay1pY29uIHtcbiAgb3BhY2l0eTogMC43OyB9XG5cbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5hdXRob3ItdGl0bGUge1xuICBjb2xvcjogIzQ0NDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICBmb250LXdlaWdodDogNTAwOyB9XG5cbi50d2l0dGVyLWZlZWQge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAudHdpdHRlci1mZWVkIHtcbiAgICAgIHBhZGRpbmc6IDAgMTBweDsgfSB9XG4gIC50d2l0dGVyLWZlZWQgaDIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7IH1cbiAgICAudHdpdHRlci1mZWVkIGgyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnQCc7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjsgfVxuICAgIC50d2l0dGVyLWZlZWQgaDI6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLuoI5cIjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAycHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbi50d2l0dGVyLWZlZWQtZWxlbWVudCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXRvcDogc29saWQgMnB4ICMwMGU4NjI7IH1cbiAgLnR3aXR0ZXItZmVlZC1lbGVtZW50IC5tZWRpYS1ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAudHdpdHRlci1mZWVkLWVsZW1lbnQgLmRhdGUtdGltZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwIDAgMjBweCAwOyB9XG4gIC50d2l0dGVyLWZlZWQtZWxlbWVudCBhIHtcbiAgICBjb2xvcjogIzJjMmYyZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAudHdpdHRlci1mZWVkLWVsZW1lbnQgYTpob3ZlciwgLnR3aXR0ZXItZmVlZC1lbGVtZW50IGE6Zm9jdXMsIC50d2l0dGVyLWZlZWQtZWxlbWVudCBhOmFjdGl2ZSwgLnR3aXR0ZXItZmVlZC1lbGVtZW50IGE6dmlzaXRlZCB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAudHdpdHRlci1mZWVkLWVsZW1lbnQ6aG92ZXIsIC50d2l0dGVyLWZlZWQtZWxlbWVudDpmb2N1cywgLnR3aXR0ZXItZmVlZC1lbGVtZW50OmFjdGl2ZSwgLnR3aXR0ZXItZmVlZC1lbGVtZW50OnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjMDAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG4ud3lzaXd5ZyAudHdpdHRlci1mZWVkID4gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAud3lzaXd5ZyAudHdpdHRlci1mZWVkID4gYTpob3ZlciwgLnd5c2l3eWcgLnR3aXR0ZXItZmVlZCA+IGE6Zm9jdXMsIC53eXNpd3lnIC50d2l0dGVyLWZlZWQgPiBhOmFjdGl2ZSwgLnd5c2l3eWcgLnR3aXR0ZXItZmVlZCA+IGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLnR3aXR0ZXItZmVlZHMgLnd5c2l3eWcge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5yZWxhdGVkLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4OyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgICAucmVsYXRlZC1jb250ZW50IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5yZWxhdGVkLWNvbnRlbnQge1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDEwMHB4IDUwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnJlbGF0ZWQtY29udGVudCB7XG4gICAgICB3aWR0aDogMTVlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIG1pbi13aWR0aDogMjQwcHggIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuICAucmVsYXRlZC1jb250ZW50IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yNWVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXRvcDogc29saWQgMXB4ICNjYWNiY2I7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgLnJlbGF0ZWQtY29udGVudCBoMiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgcGFkZGluZzogMCAwIDQwcHggMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMTJweDsgfSB9XG4gIC5yZWxhdGVkLWNvbnRlbnQgdWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAgMzBweCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5yZWxhdGVkLWNvbnRlbnQgdWw6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCB1bDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5yZWxhdGVkLWNvbnRlbnQgdWw6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFHUUFBQUJrQ0FZQUFBQnc0cFZVQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5WnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU5pMWpNRFkzSURjNUxqRTFOemMwTnl3Z01qQXhOUzh3TXk4ek1DMHlNem8wTURvME1pQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTkRJREl3TVRVZ0tGZHBibVJ2ZDNNcElpQjRiWEJOVFRwSmJuTjBZVzVqWlVsRVBTSjRiWEF1YVdsa09qUkJOamczTURBNE1ESkNSakV4UlRaQ05qSTNRVU5ET0VWQk5USkJNMFUzSWlCNGJYQk5UVHBFYjJOMWJXVnVkRWxFUFNKNGJYQXVaR2xrT2pSQk5qZzNNREE1TURKQ1JqRXhSVFpDTmpJM1FVTkRPRVZCTlRKQk0wVTNJajRnUEhodGNFMU5Pa1JsY21sMlpXUkdjbTl0SUhOMFVtVm1PbWx1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2TkVFMk9EY3dNRFl3TWtKR01URkZOa0kyTWpkQlEwTTRSVUUxTWtFelJUY2lJSE4wVW1WbU9tUnZZM1Z0Wlc1MFNVUTlJbmh0Y0M1a2FXUTZORUUyT0Rjd01EY3dNa0pHTVRGRk5rSTJNamRCUTBNNFJVRTFNa0V6UlRjaUx6NGdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtJRHd2Y21SbU9sSkVSajRnUEM5NE9uaHRjRzFsZEdFK0lEdy9lSEJoWTJ0bGRDQmxibVE5SW5JaVB6NlR6KzdCQUFBQjgwbEVRVlI0MnV6YnkwMERRUkJGVVZNSkVJL0pBTUlnU0p3QnNiQ0ZDT2hac0VFeUhnL3p1VlYxVzZyRjdGbzY2c1Ywdi9kdytuZzlOVjduTVpjeGo0QzlmSTE1RGpFNEdHUGVRd3dPeHZRUlluQXdPb0tnTWJxQjRERTZnYVRBNkFLU0JxTURTQ3FNNmlEcE1DcURrREErNTJKVUJhRmh2TXpGcUFpU0dxTWFTSHFNU2lBbE1LcUFsTUdvQUZJS0l6dElPWXpNSUNVeHNvS1V4Y2dJVWhvakcwaDVqRXdnTFRDeWdMVEJ5QURTQ29NTzBnNkRETklTZ3dyU0ZvTUkwaHFEQnRJZWd3UWlCZ2hFREJDSUdDQVFNVUFnWW9CQXhBQ0JpQUVDRVFNRUlnWUlSQXdRaUJnZ0VERkFJR0tBUU1RQWdZZ0JBaEVEQlBJa0JnZGt3bmdUZ3dFaUJnaEVEQkNJR0NBUU1VQWdZb0JBeEFDQmlBRUNFUU1FSWdZSVJBd1FpQmdnRURGQUlHS0FRTVFBZ1lnQkFoRURCaUlHWjUxRERBN0dtRXVJd2NHWURrZUl3Y0g0NjA5ZGpBTXdqZ1FSNDBxT0xjVGdZQndCSXNhTmhHZUl3Y0hZRTBTTW1kbm5FSU9Ec1FlSUdIZTJBa0lNRHNhV0lHSXNyR2lFR0p0aExMcEZEekU0R0d1RGlMSENZMStJd2NGWUMwU01GWi9CUXd3T3huOUJ4TmdnSUJKaWNEQ1dnb2l4WVhRcXhPQmczQXNpeGc2aHdoQ0RnekVYUkl3ZDQ3WWhCZ2ZqRm9nWUJ3VFJRd3dPeGpVUU1RNnNhSVFZSEl6ZklHSUF5a3NoQmdmakIwUU1VSzB2eEdCMUxMOEZHQUFFZHkxYisrdVpwUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IGF1dG87XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IC0xMCU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTIwJTtcbiAgICAgIGhlaWdodDogMThweDtcbiAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgIHRyYW5zZm9ybTogc2tld1goMTVkZWcpOyB9XG4gICAgLnJlbGF0ZWQtY29udGVudCB1bCBsaSB7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgZm9udC1zaXplOiAwLjkwNjI1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xNDI4NmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDE4NzVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXItdG9wOiBzb2xpZCAxcHggI2NhY2JjYjtcbiAgICAgIHBhZGRpbmc6IDVweCAwIDE1cHggMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAucmVsYXRlZC1jb250ZW50IHVsIGxpIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgIC5yZWxhdGVkLWNvbnRlbnQgdWwgbGkge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87IH0gfVxuICAgICAgLnJlbGF0ZWQtY29udGVudCB1bCBsaSBhIHtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgLnJlbGF0ZWQtY29udGVudCB1bCBsaSBhIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNnB4O1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMzMzMzNlbTsgfVxuICAgICAgICAucmVsYXRlZC1jb250ZW50IHVsIGxpIGE6aG92ZXIsIC5yZWxhdGVkLWNvbnRlbnQgdWwgbGkgYTpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5yZWxhdGVkLWNvbnRlbnQgdWwgbGk6bnRoLWNoaWxkKDNuKzQpIHtcbiAgICAgICAgICBjbGVhcjogbGVmdDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgIC5yZWxhdGVkLWNvbnRlbnQgdWwgbGkgYSBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbmZvb3RlciB7XG4gIGJhY2tncm91bmQ6ICMyYzJmMmY7XG4gIHBhZGRpbmc6IDQwcHggMDsgfVxuICBmb290ZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGZvb3RlcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgZm9vdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgICBmb290ZXIge1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDI1NjBweDsgfSB9XG4gIGZvb3RlciAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDk0NXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgZm9vdGVyIC5jb250YWluZXIge1xuICAgICAgICBwYWRkaW5nOiAwIDM0cHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGZvb3RlciAuY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiAxNzBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgZm9vdGVyIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IH0gfVxuICAgIGZvb3RlciAuY29udGFpbmVyIC53eXNpd3lnID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgZm9vdGVyIG5hdiB1bDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgZm9vdGVyIG5hdiB1bDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBmb290ZXIgbmF2IHVsIGxpIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYgdWwgbGkge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgICAgICBmb290ZXIgbmF2IHVsIGxpOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBmb290ZXIgbmF2IHVsIGxpOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgZm9vdGVyIG5hdi5mdHItZ2xvYmFsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMCAzMHB4IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB7XG4gICAgICAgIHBhZGRpbmc6IDgwcHggMCA1MHB4IDA7IH0gfVxuICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCBsaSB7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDYyNWVtO1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBjb2xvcjogI2VhZWFlYTtcbiAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7IH1cbiAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCBsaTphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAtNDJweDsgfVxuICAgICAgZm9vdGVyIG5hdi5mdHItZ2xvYmFsIGxpIGEge1xuICAgICAgICBjb2xvcjogI2VhZWFlYTsgfVxuICAgICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgbGkgYTpob3ZlciwgZm9vdGVyIG5hdi5mdHItZ2xvYmFsIGxpIGE6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAjMTRkYzY2O1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG4gICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgdWwge1xuICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICBmb250LXNpemU6IDAuMXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bCA+IGxpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bCA+IGxpID4gYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOTA2MjVlbTsgfVxuICAgICAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bCA+IGxpICsgbGkge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNWY2MTYxOyB9XG4gICAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bCA+IGxpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIGZvb3RlciBuYXYuZnRyLWdsb2JhbCB1bCA+IGxpOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgcmlnaHQ6IC00MHB4O1xuICAgICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzVmNjE2MTsgfVxuICAgICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgdWwgPiBsaTpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICBmb290ZXIgbmF2LmZ0ci1nbG9iYWwgdWwgPiBsaTphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAtNTJweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICBmb290ZXIgbmF2LmZ0ci11dGlsIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIGZvb3RlciBuYXYuZnRyLXV0aWwge1xuICAgICAgbWFyZ2luLXRvcDogMnB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIGZvb3RlciBuYXYuZnRyLXV0aWwge1xuICAgICAgbWFyZ2luLXRvcDogNHB4OyB9IH1cbiAgZm9vdGVyIG5hdi5mdHItdXRpbCBsaSB7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgZm9udC1zaXplOiAwLjc4MTI1ZW07XG4gICAgY29sb3I6ICM5Njk3OTc7XG4gICAgcGFkZGluZzogMCAwIDAuNjI1ZW0gMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuODc1ZW0gMCAwOyB9IH1cbiAgICBmb290ZXIgbmF2LmZ0ci11dGlsIGxpIGEge1xuICAgICAgY29sb3I6ICM5Njk3OTc7IH1cbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGkgYTpob3ZlciwgZm9vdGVyIG5hdi5mdHItdXRpbCBsaSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGk6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIGZvb3RlciBuYXYuZnRyLXV0aWwgbGk6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgY2xlYXI6IG5vbmU7IH0gfVxuICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjRweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLXR3dHIsIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSBhLmZ0ci12aW0sIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSBhLmZ0ci1saSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwgbGkgYS5mdHItdHd0cjphZnRlciwgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLXZpbTphZnRlciwgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLWxpOmFmdGVyIHtcbiAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgICAgICBmb250LXNpemU6IDE5cHg7XG4gICAgICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAyNHB4O1xuICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB6LWluZGV4OiA5OTk5O1xuICAgICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4zczsgfVxuICAgICAgICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwgbGkgYS5mdHItdHd0cjpob3ZlcjphZnRlciwgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLXR3dHI6Zm9jdXM6YWZ0ZXIsIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSBhLmZ0ci12aW06aG92ZXI6YWZ0ZXIsIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSBhLmZ0ci12aW06Zm9jdXM6YWZ0ZXIsIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSBhLmZ0ci1saTpob3ZlcjphZnRlciwgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLWxpOmZvY3VzOmFmdGVyIHtcbiAgICAgICAgICBjb2xvcjogI2NhY2JjYjsgfVxuICAgICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLXR3dHI6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIu6gjlwiOyB9XG4gICAgICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwgbGkgYS5mdHItdmltOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLuoJNcIjsgfVxuICAgICAgZm9vdGVyIC5mdHItdXRpbC13cmFwcGVyIC5mdHItc29jaWFsIGxpIGEuZnRyLWxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLuoI1cIjtcbiAgICAgICAgdG9wOiAtMnB4OyB9XG4gICAgICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAgIGZvb3RlciAuZnRyLXV0aWwtd3JhcHBlciAuZnRyLXNvY2lhbCBsaTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICBmb290ZXIgLmZ0ci11dGlsLXdyYXBwZXIgLmZ0ci1zb2NpYWwgbGk6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgZm9vdGVyIC5mdHItbmF2LXdyYXBwZXIge1xuICAgICAgbWF4LXdpZHRoOiA5NDVweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9IH1cbiAgZm9vdGVyIC5mdHItc3RvY2sge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjM2MzZTNlO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogODAlO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogODAlO1xuICAgIC1vLWJvcmRlci1yYWRpdXM6IDgwJTtcbiAgICBib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgd2lkdGg6IDE0NXB4O1xuICAgIGhlaWdodDogMTQ1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgZm9vdGVyIC5mdHItc3RvY2sgPiAqIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIGZvb3RlciAuZnRyLXN0b2NrIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIC1vLWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgZm9vdGVyIC5mdHItc3RvY2s6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIGZvb3RlciAuZnRyLXN0b2NrOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICBmb290ZXIgLmZ0ci1zdG9jayAuZnRyLXN0b2NrLXByaWNlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjMzMzMzZW07XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgIGZvb3RlciAuZnRyLXN0b2NrIC5mdHItc3RvY2staW5kZXgge1xuICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjY2FjYmNiO1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBmb290ZXIgLmZ0ci1zdG9jayAuZnRyLXN0b2NrLWluZGV4IHNwYW4ge1xuICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgZm9vdGVyIC5mdHItc3RvY2sge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGxlZnQ6IDYwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogIzNjM2UzZTtcbiAgICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogODAlO1xuICAgICAgICAtby1ib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDgwJTtcbiAgICAgICAgd2lkdGg6IDE0NXB4O1xuICAgICAgICBoZWlnaHQ6IDE0NXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG4gICAgICAgIGZvb3RlciAuZnRyLXN0b2NrID4gKiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLypcclxuLnB1c2gge1xyXG4gICAgZGlzcGxheTogbm9uZTsgICAgXHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBodG1sLCBib2R5IHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAjd3JhcHBlciB7XHJcbiAgICAgICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMjE1cHg7XHJcbiAgICB9XHJcbiAgICAucHVzaCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiAyMTVweDtcclxuICAgIH1cclxufVxyXG4qL1xuI2hvbWUgI21haW4gc2VjdGlvbi5zcGFjZWQge1xuICB0cmFuc2l0aW9uOiBtYXJnaW4gLjRzIGVhc2UtaW4tb3V0O1xuICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuI2hvbWUgI21haW4gc2VjdGlvbi5ncmV5LnBhbmVscyB7XG4gIHRyYW5zaXRpb246IHBhZGRpbmcgLjRzIGVhc2UtaW4tb3V0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgI2hvbWUgI21haW4gc2VjdGlvbi5zcGFjZWQge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICAjaG9tZSAjbWFpbiBzZWN0aW9uLmdyZXkucGFuZWxzIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICNob21lICNtYWluIHtcbiAgICBtYXgtd2lkdGg6IDI1NjBweDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNob21lIC50d2l0dGVyLWZlZWRzIHtcbiAgICB3aWR0aDogODAlOyB9XG4gICAgI2hvbWUgLnR3aXR0ZXItZmVlZHMgPiAucm93IHtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAjaG9tZSAudHdpdHRlci1mZWVkcyB7XG4gICAgd2lkdGg6IDgwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgI2hvbWUgLnR3aXR0ZXItZmVlZHMge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgICAjaG9tZSAudHdpdHRlci1mZWVkcyA+IC5yb3cge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAjaG9tZSAudHdpdHRlci1mZWVkcyB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAgICNob21lIC50d2l0dGVyLWZlZWRzID4gLnJvdyB7XG4gICAgICBtYXJnaW4tdG9wOiA4MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogODBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIGFuZCAobWF4LWhlaWdodDogNjRlbSkge1xuICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIC5ob21lIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSA+IC5jb250YWluZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0cHgpOyB9XG4gICAgICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIC5ob21lID4gLmNvbnRhaW5lciAuZ2xvYmFsLXN1YiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTNweCkgIWltcG9ydGFudDsgfVxuICAgICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSA+IC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gYTphZnRlcixcbiAgICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgPiAuY29udGFpbmVyIC5nbG9iYWwgPiBsaSA+IHNwYW46YWZ0ZXIsXG4gICAgICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIC5ob21lID4gLmNvbnRhaW5lciAudXRpbCA+IGxpID4gYTphZnRlcixcbiAgICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgPiAuY29udGFpbmVyIC51dGlsID4gbGkgPiBzcGFuOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KSAhaW1wb3J0YW50OyB9XG4gICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgI21haW4ge1xuICAgIG1hcmdpbi10b3A6IDEwMXB4ICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWUgI21haW4gc2VjdGlvbi5zcGFjZWQge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAjaG9tZSAjbWFpbiBzZWN0aW9uLmdyZXkucGFuZWxzIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIGFuZCAobWF4LWhlaWdodDogNjRlbSkge1xuICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIC5ob21lIHtcbiAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC5nbG9iYWwtc3ViIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSAhaW1wb3J0YW50OyB9XG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC5nbG9iYWwgPiBsaSA+IGE6YWZ0ZXIsXG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC5nbG9iYWwgPiBsaSA+IHNwYW46YWZ0ZXIsXG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC51dGlsID4gbGkgPiBhOmFmdGVyLFxuICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgLmNvbnRhaW5lciAudXRpbCA+IGxpID4gc3BhbjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMHB4KSAhaW1wb3J0YW50OyB9XG4gICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgI21haW4ge1xuICAgIG1hcmdpbi10b3A6IDEzM3B4ICFpbXBvcnRhbnQ7IH1cbiAgI2hvbWUgI21haW4gc2VjdGlvbi5zcGFjZWQge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDsgfVxuICAjaG9tZSAjbWFpbiBzZWN0aW9uLmdyZXkucGFuZWxzIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSBhbmQgKG1heC1oZWlnaHQ6IDc1ZW0pIHtcbiAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDsgfVxuICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgLmNvbnRhaW5lciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTRweCk7IH1cbiAgICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgLmNvbnRhaW5lciAuZ2xvYmFsLXN1YiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSAhaW1wb3J0YW50OyB9XG4gICAgICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIC5ob21lIC5jb250YWluZXIgLmdsb2JhbCA+IGxpID4gYTphZnRlcixcbiAgICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikgLmhvbWUgLmNvbnRhaW5lciAuZ2xvYmFsID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC51dGlsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSAuaG9tZSAuY29udGFpbmVyIC51dGlsID4gbGkgPiBzcGFuOmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkgIWltcG9ydGFudDsgfVxuICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpICNtYWluIHtcbiAgICBtYXJnaW4tdG9wOiAxMzNweCAhaW1wb3J0YW50OyB9XG4gICNob21lICNtYWluIHNlY3Rpb24uc3BhY2VkIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7IH1cbiAgI2hvbWUgI21haW4gc2VjdGlvbi5ncmV5LnBhbmVscyB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7IH0gfVxuXG4udGFibGUge1xuICBvdmVyZmxvdy14OiB2aXNpYmxlO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIG1pbi1oZWlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50YWJsZSB7XG4gICAgICBvdmVyZmxvdy14OiBpbmhlcml0O1xuICAgICAgb3ZlcmZsb3cteTogYXV0bzsgfSB9XG5cbnRhYmxlIHtcbiAgdGFibGUtbGF5b3V0OiBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICB0YWJsZSB7XG4gICAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkOyB9IH1cbiAgdGFibGUgdGJvZHksIHRhYmxlIHRoZWFkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIHRhYmxlIHRib2R5ID4gdHI6bnRoLWNoaWxkKG9kZCk6aG92ZXIsIHRhYmxlIHRoZWFkID4gdHI6bnRoLWNoaWxkKG9kZCk6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICB0YWJsZSB0aGVhZCB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMyYzJmMmY7XG4gICAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCAjZWFlYWVhOyB9XG4gICAgdGFibGUgdGhlYWQgdGgge1xuICAgICAgcGFkZGluZzogMjVweCAxMHB4IDEwcHggMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LXNpemU6IDAuNzVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzJjMmYyZjsgfVxuICB0YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgdGFibGUgdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDE3cHggMTBweDtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gIHRhYmxlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogMTJweDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uaG9tZS1uZXdzLWxpc3Qge1xuICBwYWRkaW5nOiAwIDIwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLmhvbWUtbmV3cy1saXN0IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5ob21lLW5ld3MtbGlzdCB7XG4gICAgICBwYWRkaW5nOiAwIDMwcHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLmhvbWUtbmV3cy1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG4gIC5ob21lLW5ld3MtbGlzdCB1bDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgLmhvbWUtbmV3cy1saXN0IHVsOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5ob21lLW5ld3MtbGlzdCB1bCBsaSB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzAwZTg2MjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgLmhvbWUtbmV3cy1saXN0IHVsIGxpOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIC5ob21lLW5ld3MtbGlzdCB1bCBsaTphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjbGVhcjogYm90aDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ob21lLW5ld3MtbGlzdCB1bCBsaSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICBib3JkZXItbGVmdDogc29saWQgMnB4ICMwMGU4NjI7XG4gICAgICAgIGJvcmRlci1yaWdodDogc29saWQgMnB4ICMwMGU4NjI7XG4gICAgICAgIHBhZGRpbmc6IDAgMzBweCAwIDE1cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIC5ob21lLW5ld3MtbGlzdCB1bCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtby10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgLmhvbWUtbmV3cy1saXN0IHVsIGxpIGE6aG92ZXIsIC5ob21lLW5ld3MtbGlzdCB1bCBsaSBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5ob21lLW5ld3MtbGlzdCB1bCBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyB9IH1cbiAgICAuaG9tZS1uZXdzLWxpc3QgdWwgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAuaG9tZS1uZXdzLWxpc3QgdWwgbGk6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5ob21lLW5ld3MtbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgZmxleDogMzglO1xuICAgICAgbWF4LXdpZHRoOiAzOCU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgICAgIC5ob21lLW5ld3MtbGlzdCB1bCB7XG4gICAgICAgIG1heC13aWR0aDogMjgwcHg7IH1cbiAgICAgIC5ob21lLW5ld3MtbGlzdCBoMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhvbWUtbmV3cy1saXN0IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsZXg6IDU4LjMzMzMzJTtcbiAgICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgICAgIC5ob21lLW5ld3MtbGlzdCB1bCB7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgICAgICAuaG9tZS1uZXdzLWxpc3QgdWwgPiBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4zNjM2NGVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5ob21lLW5ld3MtbGlzdCB7XG4gICAgICBmbGV4OiA2MCU7XG4gICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogNDBweDsgfVxuICAgICAgLmhvbWUtbmV3cy1saXN0IHVsID4gbGkge1xuICAgICAgICBmb250LXNpemU6IDEuMDYyNWVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAwZW0pIHtcbiAgICAuaG9tZS1uZXdzLWxpc3QgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5ob21lLW5ld3MtbGlzdCB1bCA+IGxpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xODc1ZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAgIC5ob21lLW5ld3MtbGlzdCB7XG4gICAgICBmbGV4OiA2NSU7XG4gICAgICBtYXgtd2lkdGg6IDYwJTsgfVxuICAgICAgLmhvbWUtbmV3cy1saXN0IHVsID4gbGkge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1ZW07IH0gfVxuXG4ubmV3cy1saXN0LXBhZ2UgaDUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5uZXdzLWxpc3QtcGFnZSB1bCB7XG4gIHBhZGRpbmctdG9wOiAxLjg3NWVtOyB9XG5cbi5uZXdzLWxpc3QtcGFnZSBsaSB7XG4gIHBhZGRpbmctdG9wOiAwLjYyNWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS41NjI1ZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWFlYWVhOyB9XG5cbi5zaGFyZS1wcm9tbyB7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvKlxyXG5cdC5sYXRlc3QtbmV3cyB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0fVxyXG5cdFx0aDIge1xyXG5cdFx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDEzKTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IC45O1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogZW0oMik7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcblx0XHR9XHJcblx0fVxyXG5cdCovIH1cbiAgLnNoYXJlLXByb21vOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2hhcmUtcHJvbW86YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5zaGFyZS1wcm9tbyB7XG4gICAgICBtYXgtd2lkdGg6IDM2MHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zaGFyZS1wcm9tbyB7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5zaGFyZS1wcm9tbyB7XG4gICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgIGZsZXg6IDQwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgLnNoYXJlLXByb21vIHtcbiAgICAgIG1heC13aWR0aDogMzUlO1xuICAgICAgZmxleDogMzUlOyB9IH1cbiAgLnNoYXJlLXByb21vIC53eXNpd3lnIC5pbnZlc3Rvci1idG4sXG4gIC5zaGFyZS1wcm9tbyAud3lzaXd5ZyAuc2hhcmUtcHJpY2Uge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5zaGFyZS1wcm9tbyAud3lzaXd5ZyAuaW52ZXN0b3ItYnRuOmhvdmVyLCAuc2hhcmUtcHJvbW8gLnd5c2l3eWcgLmludmVzdG9yLWJ0bjpmb2N1cywgLnNoYXJlLXByb21vIC53eXNpd3lnIC5pbnZlc3Rvci1idG46YWN0aXZlLCAuc2hhcmUtcHJvbW8gLnd5c2l3eWcgLmludmVzdG9yLWJ0bjp2aXNpdGVkLFxuICAgIC5zaGFyZS1wcm9tbyAud3lzaXd5ZyAuc2hhcmUtcHJpY2U6aG92ZXIsXG4gICAgLnNoYXJlLXByb21vIC53eXNpd3lnIC5zaGFyZS1wcmljZTpmb2N1cyxcbiAgICAuc2hhcmUtcHJvbW8gLnd5c2l3eWcgLnNoYXJlLXByaWNlOmFjdGl2ZSxcbiAgICAuc2hhcmUtcHJvbW8gLnd5c2l3eWcgLnNoYXJlLXByaWNlOnZpc2l0ZWQge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5zaGFyZS1wcm9tbyAuaW52ZXN0b3ItYnRuIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDgwJTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDgwJTtcbiAgICAtby1ib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgYm9yZGVyLXJhZGl1czogODAlO1xuICAgIGhlaWdodDogMTMwcHg7XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgIGJhY2tncm91bmQ6ICMwMGU4NjI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbiAgICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbiAgICAtbXMtdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjNzO1xuICAgIC1vLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4zcztcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3M7IH1cbiAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0biBkaXYsIC5zaGFyZS1wcm9tbyAuaW52ZXN0b3ItYnRuIGRpdiBzcGFuIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7IH1cbiAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0bjpob3ZlciwgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG46Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmYyZjsgfVxuICAgICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG46aG92ZXIgZGl2LCAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0bjpmb2N1cyBkaXYge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0bjpob3ZlciBkaXYgc3BhbiwgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG46Zm9jdXMgZGl2IHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjMDBlODYyOyB9XG4gICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG4gZGl2IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgICBjb2xvcjogIzJjMmYyZjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgcGFkZGluZzogMCAxMHB4OyB9XG4gICAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0biBkaXYgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBJdGFsaWNcIjtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgMnB4IDA7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG4gZGl2IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7IH1cbiAgICAgICAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0biBkaXY6aG92ZXIsIC5zaGFyZS1wcm9tbyAuaW52ZXN0b3ItYnRuIGRpdjpmb2N1cyB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0biBkaXYge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMzBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAgICAgICAuc2hhcmUtcHJvbW8gLmludmVzdG9yLWJ0biBkaXYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gICAgICAgICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG4gZGl2IHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG4ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICB3aWR0aDogMTQwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaGFyZS1wcm9tbyAuaW52ZXN0b3ItYnRuIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDE0MHB4O1xuICAgICAgICB3aWR0aDogMTQwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5zaGFyZS1wcm9tbyAuaW52ZXN0b3ItYnRuIHtcbiAgICAgICAgaGVpZ2h0OiAxNTVweDtcbiAgICAgICAgd2lkdGg6IDE1NXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAgICAgLnNoYXJlLXByb21vIC5pbnZlc3Rvci1idG4ge1xuICAgICAgICBoZWlnaHQ6IDE5NXB4O1xuICAgICAgICB3aWR0aDogMTk1cHg7IH0gfVxuICAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7IH1cbiAgICAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay11cGRhdGVkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogNDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDYuMjUlOyB9XG4gICAgICAgIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgaDIge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7IH1cbiAgICAgICAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSBoMiB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMy4zMzMzJTsgfSB9XG4gIC5zaGFyZS1wcm9tbyBhLnNoYXJlLXByaWNlOmhvdmVyIC5zdG9jay1wcmljZSwgLnNoYXJlLXByb21vIGEuc2hhcmUtcHJpY2U6Zm9jdXMgLnN0b2NrLXByaWNlIHtcbiAgICBjb2xvcjogIzAwZTg2MjsgfVxuICAuc2hhcmUtcHJvbW8gYS5zaGFyZS1wcmljZTpob3ZlciAuc3RvY2staW5kZXggKiwgLnNoYXJlLXByb21vIGEuc2hhcmUtcHJpY2U6Zm9jdXMgLnN0b2NrLWluZGV4ICoge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgY29sb3I6ICMyYzJmMmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zaGFyZS1wcm9tbyBhLnNoYXJlLXByaWNlOmhvdmVyIGgyLFxuICAgIC5zaGFyZS1wcm9tbyBhLnNoYXJlLXByaWNlOmhvdmVyIHNwYW4sXG4gICAgLnNoYXJlLXByb21vIGEuc2hhcmUtcHJpY2U6aG92ZXIgcCwgLnNoYXJlLXByb21vIGEuc2hhcmUtcHJpY2U6Zm9jdXMgaDIsXG4gICAgLnNoYXJlLXByb21vIGEuc2hhcmUtcHJpY2U6Zm9jdXMgc3BhbixcbiAgICAuc2hhcmUtcHJvbW8gYS5zaGFyZS1wcmljZTpmb2N1cyBwIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICAgIC5zaGFyZS1wcm9tbyBhcnRpY2xlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLnN0b2NrLXByaWNlIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxLjg3NWVtO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjtcbiAgcGFkZGluZzogMCAxMHB4IDVweCAxMHB4O1xuICBib3JkZXItYm90dG9tOiBzb2xpZCA3cHggIzAwZTg2MjtcbiAgbWFyZ2luLWJvdHRvbTogLTdweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc3RvY2stcHJpY2Ugc3BhbiB7XG4gICAgICBmb250LXNpemU6IDIuODEyNWVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc3RvY2stcHJpY2Ugc3BhbiB7XG4gICAgICBmb250LXNpemU6IDIuMzc1ZW07XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5zdG9jay1wcmljZSBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMi42MjVlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgLnN0b2NrLXByaWNlIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAzLjM3NWVtO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cblxuLnN0b2NrLXdyYXBwZXIge1xuICBib3JkZXItdG9wOiBzb2xpZCA3cHggIzAwZTg2MjtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLnN0b2NrLWluZGV4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMCAxMHB4IDA7XG4gIC8qXHJcblx0JjpiZWZvcmUge1xyXG5cdFx0QGluY2x1ZGUgd2YtaWNvbigkaWNvbi1hcnJvdy11cCwgMTNweCwgJGNvbG9yLWdyZXktYm9keSk7IC8vJGljb24tYXJyb3ctZG93blxyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OjA7XHJcblx0XHR0b3A6NTAlO1xyXG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtICh0cmFuc2xhdGVZKC01MCUpKTtcclxuXHRcdHdpZHRoOjIwcHg7XHJcblx0XHRoZWlnaHQ6MTJweDtcdFx0XHJcblx0fVxyXG5cdCovIH1cbiAgLnN0b2NrLWluZGV4ID4gaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBmb250LXNpemU6IDEycHg7IH1cbiAgLnN0b2NrLWluZGV4ID4gc3BhbiB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAuc3RvY2staW5kZXggPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZzogMCAxMHB4IDAgMDtcbiAgICAgIGJvcmRlci1yaWdodDogc29saWQgMXB4ICMwMGU4NjI7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuc3RvY2staW5kZXggPiBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5zdG9jay1pbmRleCA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEuMTg3NWVtOyB9IH1cblxuLnN0b2NrLXVwZGF0ZWQge1xuICBmb250LXNpemU6IDAuNjI1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICBjb2xvcjogIzYxNjM2MzsgfVxuICAuc3RvY2stdXBkYXRlZCBzdHJvbmcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICBjb2xvcjogIzJjMmYyZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnN0b2NrLXVwZGF0ZWQge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zdG9jay11cGRhdGVkIHtcbiAgICAgIGZvbnQtc2l6ZTogMC42ODc1ZW07IH1cbiAgICAgIC5zdG9jay11cGRhdGVkIHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gICAgLnN0b2NrLXVwZGF0ZWQge1xuICAgICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFuZWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjMDBlODYyO1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXIgMjAwbXMgZWFzZS1vdXQ7XG4gICAgICAtbW96LXRyYW5zaXRpb246IGJvcmRlciAyMDBtcyBlYXNlLW91dDtcbiAgICAgIC1tcy10cmFuc2l0aW9uOiBib3JkZXIgMjAwbXMgZWFzZS1vdXQ7XG4gICAgICAtby10cmFuc2l0aW9uOiBib3JkZXIgMjAwbXMgZWFzZS1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXIgMjAwbXMgZWFzZS1vdXQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMTguNzVlbTsgfSB9XG4gIC5wYW5lbCBhIHtcbiAgICBtYXJnaW46IDAgLTIwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAucGFuZWwgYSB7XG4gICAgICAgIG1hcmdpbjogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnBhbmVsIGEge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9XG4gICAgLnBhbmVsIGEgLmltYWdlLFxuICAgIC5wYW5lbCBhIC5pbWFnZTpiZWZvcmUsXG4gICAgLnBhbmVsIGEgLmltYWdlOmFmdGVyLFxuICAgIC5wYW5lbCBhIC5pbWFnZSA+IGltZyB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzOyB9XG4gICAgLnBhbmVsIGEgLmltYWdlLCAucGFuZWwgYSAudmlkZW8tcGxheSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZm9udC1zaXplOiAwOyB9XG4gICAgICAucGFuZWwgYSAuaW1hZ2U6YmVmb3JlLCAucGFuZWwgYSAudmlkZW8tcGxheTpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAwOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5wYW5lbCBhIC5pbWFnZSwgLnBhbmVsIGEgLnZpZGVvLXBsYXkge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDIwcHggMDsgfVxuICAgICAgICAgIC5wYW5lbCBhIC5pbWFnZSA+IGltZywgLnBhbmVsIGEgLnZpZGVvLXBsYXkgPiBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAwMik7IH0gfVxuICAgIC5wYW5lbCBhIGltZyB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAgIC5wYW5lbCBhIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAucGFuZWwgYSBwIHtcbiAgICAgIHRyYW5zaXRpb246IG5vbmU7IH1cbiAgICAucGFuZWwgYTpob3ZlciwgLnBhbmVsIGE6Zm9jdXMge1xuICAgICAgLypcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgaDIsXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuLWFuYztcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKi8gfVxuICAgICAgLnBhbmVsIGE6aG92ZXIgaDIsIC5wYW5lbCBhOmhvdmVyIHAsIC5wYW5lbCBhOmZvY3VzIGgyLCAucGFuZWwgYTpmb2N1cyBwIHtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cbiAgICAgIC5wYW5lbCBhOmhvdmVyIC5pbWFnZTpiZWZvcmUsIC5wYW5lbCBhOmhvdmVyIC52aWRlby1wbGF5OmJlZm9yZSwgLnBhbmVsIGE6Zm9jdXMgLmltYWdlOmJlZm9yZSwgLnBhbmVsIGE6Zm9jdXMgLnZpZGVvLXBsYXk6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogLjMzOyB9XG4gICAgICAucGFuZWwgYTpob3ZlciAuaW1hZ2UgPiBpbWcsIC5wYW5lbCBhOmhvdmVyIC52aWRlby1wbGF5ID4gaW1nLCAucGFuZWwgYTpmb2N1cyAuaW1hZ2UgPiBpbWcsIC5wYW5lbCBhOmZvY3VzIC52aWRlby1wbGF5ID4gaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzMyk7IH1cbiAgICAucGFuZWwgYS52aWRlby1wbGF5IC52aWRlby1pY29uIHtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICB3aWR0aDogNDZweDtcbiAgICAgIGhlaWdodDogNDZweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDIzMiwgOTgsIDAuODUpO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzOyB9XG4gICAgICAucGFuZWwgYS52aWRlby1wbGF5IC52aWRlby1pY29uOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLuoJdcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUzJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4zczsgfVxuICAgIC5wYW5lbCBhLnZpZGVvLXBsYXk6aG92ZXIgLnZpZGVvLWljb24ge1xuICAgICAgei1pbmRleDogOTk5OTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgLnBhbmVsID4gYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5wYW5lbCA+IGE6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogMDsgfSB9XG4gIC5wYW5lbCAuY29weSB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgICAgLnBhbmVsIC5jb3B5IHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnBhbmVsIC5jb3B5IHtcbiAgICAgICAgcGFkZGluZzogMCAwIDIwcHggMDsgfSB9XG4gICAgLnBhbmVsIC5jb3B5IHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnBhbmVsIGEsIC5wYW5lbCBhIHAsIC5wYW5lbCBhOmhvdmVyIHAsIC5wYW5lbCBhOmZvY3VzIHAge1xuICAgIHRyYW5zaXRpb246IG5vbmU7IH1cblxuLmxlYWRlcnNoaXAtcGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIC5sZWFkZXJzaGlwLXBhbmVsOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubGVhZGVyc2hpcC1wYW5lbDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAubGVhZGVyc2hpcC1wYW5lbCAuaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzJmMmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5sZWFkZXJzaGlwLXBhbmVsID4gYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5sZWFkZXJzaGlwLXBhbmVsID4gYTpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cbiAgLmxlYWRlcnNoaXAtcGFuZWwgLmNvcHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogNjAlO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2JjYjtcbiAgICBtYXJnaW4tbGVmdDogNTBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAgIC5sZWFkZXJzaGlwLXBhbmVsIC5jb3B5IHtcbiAgICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5zcGxpdC1jb3B5LXBhbmVscyAucGFuZWwgLmNvcHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5zcGxpdC1jb3B5LXBhbmVscyAucGFuZWwgLmNvcHk6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLnNwbGl0LWNvcHktcGFuZWxzIC5wYW5lbCAuY29weSBoMiB7XG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2EgQm9sZFwiO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5zcGxpdC1jb3B5LXBhbmVscyAucGFuZWwgLmNvcHkgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc3BsaXQtY29weS1wYW5lbHMgLnBhbmVsIC5jb3B5IGgyIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zcGxpdC1jb3B5LXBhbmVscyAucGFuZWwgLmNvcHkgaDIge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBtYXgtd2lkdGg6IDQ5JTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9IH1cblxuLnNwbGl0LWNvcHktcGFuZWxzIC5wYW5lbCAuY29weSBwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuc3BsaXQtY29weS1wYW5lbHMgLnBhbmVsIC5jb3B5IHAge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWF4LXdpZHRoOiA0OC41JTtcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgICBtaW4taGVpZ2h0OiA3NHB4O1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7IH0gfVxuXG4ucmVsYXRlZC1wYW5lbHMge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucmVsYXRlZC1wYW5lbHMge1xuICAgICAgcGFkZGluZzogMCAzMHB4OyB9XG4gICAgICAucmVsYXRlZC1wYW5lbHMgLmNvbHVtbnMge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnJlbGF0ZWQtcGFuZWxzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwIDEwMHB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5yZWxhdGVkLXBhbmVscyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLnJlbGF0ZWQtcGFuZWxzIC5yZWxhdGVkLXBhbmVsIHtcbiAgICBib3JkZXItdG9wOiBzb2xpZCA3cHggIzAwZTg2MjtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAgIC5yZWxhdGVkLXBhbmVscyAucmVsYXRlZC1wYW5lbCBoMiB7XG4gICAgICBmb250LXNpemU6IDEuMzc1ZW07IH1cbiAgICAucmVsYXRlZC1wYW5lbHMgLnJlbGF0ZWQtcGFuZWwgcCB7XG4gICAgICBmb250LXNpemU6IDEuMDYyNWVtOyB9XG4gICAgLnJlbGF0ZWQtcGFuZWxzIC5yZWxhdGVkLXBhbmVsIGEge1xuICAgICAgZm9udC1zaXplOiAwLjgyMzUzZW07XG4gICAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhIEl0YWxpY1wiOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZlYXR1cmVkID4gLnJvdyB7XG4gICAgZmxleC1mbG93OiByb3c7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogLTAuNzVyZW07IH1cbiAgICAuZmVhdHVyZWQgPiAucm93IC5jb2x1bW4sIC5mZWF0dXJlZCA+IC5yb3cgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC43NXJlbTsgfSB9XG5cbi5ncmV5IC5wYW5lbCBhIC5pbWFnZTpiZWZvcmUsXG4uZ3JleSAucGFuZWwgYSAudmlkZW8tcGxheTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmOyB9XG5cbi5wYW5lbC5leGMtZ3JleSBhIC5pbWFnZTpiZWZvcmUsXG4ucGFuZWwuZXhjLWdyZXkgYSAudmlkZW8tcGxheTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyBoMiwgLmludmVzdG9yLWNlbnRyZSAuZGVidC1pbnZlc3RvcnMgaDIsIC5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIGgyIHtcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgbGluZS1oZWlnaHQ6IC45O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMyYzJmMmY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cblxuLmludmVzdG9yLWNlbnRyZSAud3JhcHBlciB7XG4gIHBhZGRpbmc6IDIwcHg7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAxNXB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtbW96LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLW8tZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5zaGFyZS1wcm9tbyxcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkID4gLmRlYnQtaW52ZXN0b3JzLFxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQgPiAubmV3cy1saXN0IHtcbiAgICAgIC13ZWJraXQtZmxleDogMSAxMDAlO1xuICAgICAgLW1vei1mbGV4OiAxIDEwMCU7XG4gICAgICAtbXMtZmxleDogMSAxMDAlO1xuICAgICAgLW8tZmxleDogMSAxMDAlO1xuICAgICAgZmxleDogMSAxMDAlOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC50aWxlLWxpbmtzIHtcbiAgICAgIC13ZWJraXQtZmxleDogMSA1MCU7XG4gICAgICAtbW96LWZsZXg6IDEgNTAlO1xuICAgICAgLW1zLWZsZXg6IDEgNTAlO1xuICAgICAgLW8tZmxleDogMSA1MCU7XG4gICAgICBmbGV4OiAxIDUwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAud3JhcHBlciB7XG4gICAgcGFkZGluZzogMzBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAud3JhcHBlciB7XG4gICAgcGFkZGluZzogNDBweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkIHtcbiAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93O1xuICAgIC1tb3otZmxleC1mbG93OiByb3c7XG4gICAgLW1zLWZsZXgtZmxvdzogcm93O1xuICAgIC1vLWZsZXgtZmxvdzogcm93O1xuICAgIGZsZXgtZmxvdzogcm93OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5zaGFyZS1wcm9tbyB7XG4gICAgICAtd2Via2l0LWZsZXg6IDEgMjAlO1xuICAgICAgLW1vei1mbGV4OiAxIDIwJTtcbiAgICAgIC1tcy1mbGV4OiAxIDIwJTtcbiAgICAgIC1vLWZsZXg6IDEgMjAlO1xuICAgICAgZmxleDogMSAyMCU7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQgPiAudGlsZS1saW5rcyB7XG4gICAgICAtd2Via2l0LWZsZXg6IDAgMzglO1xuICAgICAgLW1vei1mbGV4OiAwIDM4JTtcbiAgICAgIC1tcy1mbGV4OiAwIDM4JTtcbiAgICAgIC1vLWZsZXg6IDAgMzglO1xuICAgICAgZmxleDogMCAzOCU7XG4gICAgICBvcmRlcjogNDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQgPiAuZGVidC1pbnZlc3RvcnMge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogNTVweDtcbiAgICAgIHdpZHRoOiAxOCU7XG4gICAgICBtYXgtd2lkdGg6IDI0NnB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5uZXdzLWxpc3Qge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAyODZweDtcbiAgICAgIGxlZnQ6IDU1cHg7XG4gICAgICB3aWR0aDogMTglO1xuICAgICAgbWF4LXdpZHRoOiAyNDZweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAud3JhcHBlciB7XG4gICAgcGFkZGluZzogNTVweCA1NXB4IDAgNTVweDsgfSB9XG5cbiNpbnZlc3Rvci1jZW50cmUgI21haW4gLmludmVzdG9yLWNlbnRyZSAucm93LFxuI2ludmVzdG9yLWNlbnRyZSAjbWFpbiAuaW52ZXN0b3JzIC5yb3cge1xuICBtYXgtd2lkdGg6IDEwMGVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgI2ludmVzdG9yLWNlbnRyZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmYyZjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgI2ludmVzdG9yLWNlbnRyZSAjbWFpbiAuaW52ZXN0b3JzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICNpbnZlc3Rvci1jZW50cmUgI21haW4gLmludmVzdG9ycyAucGFnZS1pbnRybyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICMwMGU4NjI7IH0gfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyB7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDQyMHB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vID4gYTpob3ZlciwgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gPiBhOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyA+IGE6aG92ZXIgLnN0b2NrLXByaWNlID4gc3BhbiwgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gPiBhOmZvY3VzIC5zdG9jay1wcmljZSA+IHNwYW4ge1xuICAgICAgY29sb3I6ICMwMGU4NjI7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICBsaW5lLWhlaWdodDogLjk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICMyYzJmMmY7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stcHJpY2UgPiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogNjVweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLWluZGV4ID4gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuNjI1ZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgY29sb3I6ICMyYzJmMmYgIWltcG9ydGFudDsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay1pbmRleCA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXggPiBpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVlbTtcbiAgICAgIGNvbG9yOiAjMmMyZjJmICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0IHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMCA1cHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwZTg2MjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDBlODYyOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXVwZGF0ZWQtbGlzdCA+IGxpIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogLjk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay11cGRhdGVkLWxpc3QgPiBsaSA+IHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtaW4td2lkdGg6IDg1cHg7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIge1xuICAgICAgYm9yZGVyOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyB7XG4gICAgICBtYXgtd2lkdGg6IDQyMHB4OyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXVwZGF0ZWQtbGlzdCA+IGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjc4MTI1ZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8ge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gICAgICBwYWRkaW5nOiAwOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbzpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyBoMiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAtd2Via2l0LWZsZXg6IDAgMTAwJTtcbiAgICAgICAgLW1vei1mbGV4OiAwIDEwMCU7XG4gICAgICAgIC1tcy1mbGV4OiAwIDEwMCU7XG4gICAgICAgIC1vLWZsZXg6IDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAxMDAlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSB7XG4gICAgICAgIG1heC13aWR0aDogNzY4cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IC13ZWJraXQtdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtd2Via2l0LWZsZXgtZmxvdzogcm93O1xuICAgICAgICAtbW96LWZsZXgtZmxvdzogcm93O1xuICAgICAgICAtbXMtZmxleC1mbG93OiByb3c7XG4gICAgICAgIC1vLWZsZXgtZmxvdzogcm93O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICMwMGU4NjI7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2U6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXByaWNlIHtcbiAgICAgICAgICAtd2Via2l0LWZsZXg6IDEgMzMuMzMzMzMlO1xuICAgICAgICAgIC1tb3otZmxleDogMSAzMy4zMzMzMyU7XG4gICAgICAgICAgLW1zLWZsZXg6IDEgMzMuMzMzMzMlO1xuICAgICAgICAgIC1vLWZsZXg6IDEgMzMuMzMzMzMlO1xuICAgICAgICAgIGZsZXg6IDEgMzMuMzMzMzMlOyB9XG4gICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay1wcmljZSA+IHNwYW4ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogLjk7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyIHtcbiAgICAgICAgICAtd2Via2l0LWZsZXg6IDAgNjYuNjY2NjYlO1xuICAgICAgICAgIC1tb3otZmxleDogMCA2Ni42NjY2NiU7XG4gICAgICAgICAgLW1zLWZsZXg6IDAgNjYuNjY2NjYlO1xuICAgICAgICAgIC1vLWZsZXg6IDAgNjYuNjY2NjYlO1xuICAgICAgICAgIGZsZXg6IDAgNjYuNjY2NjYlO1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIC13ZWJraXQtZmxleC1mbG93OiByb3c7XG4gICAgICAgICAgLW1vei1mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAtbXMtZmxleC1mbG93OiByb3c7XG4gICAgICAgICAgLW8tZmxleC1mbG93OiByb3c7XG4gICAgICAgICAgZmxleC1mbG93OiByb3c7XG4gICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4IHtcbiAgICAgICAgICAgIC13ZWJraXQtZmxleDogMCAzNSU7XG4gICAgICAgICAgICAtbW96LWZsZXg6IDAgMzUlO1xuICAgICAgICAgICAgLW1zLWZsZXg6IDAgMzUlO1xuICAgICAgICAgICAgLW8tZmxleDogMCAzNSU7XG4gICAgICAgICAgICBmbGV4OiAwIDM1JTsgfVxuICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay1pbmRleCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzAwZTg2MjsgfVxuICAgICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4ID4gaSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4ID4gc3BhbixcbiAgICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay1pbmRleCA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay11cGRhdGVkLWxpc3Qge1xuICAgICAgICAgICAgLXdlYmtpdC1mbGV4OiA2NSU7XG4gICAgICAgICAgICAtbW96LWZsZXg6IDY1JTtcbiAgICAgICAgICAgIC1tcy1mbGV4OiA2NSU7XG4gICAgICAgICAgICAtby1mbGV4OiA2NSU7XG4gICAgICAgICAgICBmbGV4OiA2NSU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICMwMGU4NjI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAyNXB4OyB9XG4gICAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAgICAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8ge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDI0NnB4OyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stcHJpY2UgPiBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDMuNDM3NWVtOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay1pbmRleCA+IHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2staW5kZXggPiBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgaGVpZ2h0OiAyMHB4OyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC42ODc1ZW07IH1cbiAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXVwZGF0ZWQtbGlzdCA+IGxpID4gc3BhbjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7IH0gfVxuXG4uYW5ub3VuY2VtZW50LWJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGFkZCBvdmVycmlkZSB0byBwcmV2ZW50IG1hcmdpbiBidWZmZXIgKi8gfVxuICAuYW5ub3VuY2VtZW50LWJhciBwLFxuICAuYW5ub3VuY2VtZW50LWJhciBhIHtcbiAgICBjb2xvcjogIzAwMDsgfVxuICAuYW5ub3VuY2VtZW50LWJhciBwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogOHB4IDIwcHggNHB4OyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIC8qXHJcbiAgICAgICAgdHJhbnNpdGlvbjpjb2xvciAuM3M7XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgXHRjb2xvcjojZmZmO1xyXG4gICAgICAgIH1cclxuICAgICAgICAqLyB9XG4gICAgLmFubm91bmNlbWVudC1iYXIgYTpob3ZlciwgLmFubm91bmNlbWVudC1iYXIgYTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDsgfVxuICAuYW5ub3VuY2VtZW50LWJhciAud3lzaXd5ZyA+IC53eXNpd3lnLWlubmVyOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYW5ub3VuY2VtZW50LWJhciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMwMGU4NjI7XG4gICAgICBib3JkZXItbGVmdDogMTBweCBzb2xpZCAjMDBlODYyO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkICMwMGU4NjI7IH1cbiAgICAgIC5hbm5vdW5jZW1lbnQtYmFyIHAge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDhweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgZm9udC1zaXplOiAwLjk2ODc1ZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7IH1cbiAgICAgICAgLmFubm91bmNlbWVudC1iYXIgcDphZnRlciwgLmFubm91bmNlbWVudC1iYXIgcDpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuYW5ub3VuY2VtZW50LWJhciBwOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IC01MHB4O1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMCAwIDcycHggNTRweDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwMGU4NjIgdHJhbnNwYXJlbnQ7IH1cbiAgICAgICAgLmFubm91bmNlbWVudC1iYXIgcDphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHJpZ2h0OiAtNTJweDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItd2lkdGg6IDcycHggNTRweCAwIDA7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDBlODYyIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gICAgICAuYW5ub3VuY2VtZW50LWJhcjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUdRQUFBQmtDQVlBQUFCdzRwVlVBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQXlacFZGaDBXRTFNT21OdmJTNWhaRzlpWlM1NGJYQUFBQUFBQUR3L2VIQmhZMnRsZENCaVpXZHBiajBpNzd1L0lpQnBaRDBpVnpWTk1FMXdRMlZvYVVoNmNtVlRlazVVWTNwcll6bGtJajgrSUR4NE9uaHRjRzFsZEdFZ2VHMXNibk02ZUQwaVlXUnZZbVU2Ym5NNmJXVjBZUzhpSUhnNmVHMXdkR3M5SWtGa2IySmxJRmhOVUNCRGIzSmxJRFV1Tmkxak1EWTNJRGM1TGpFMU56YzBOeXdnTWpBeE5TOHdNeTh6TUMweU16bzBNRG8wTWlBZ0lDQWdJQ0FnSWo0Z1BISmtaanBTUkVZZ2VHMXNibk02Y21SbVBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHhPVGs1THpBeUx6SXlMWEprWmkxemVXNTBZWGd0Ym5NaklqNGdQSEprWmpwRVpYTmpjbWx3ZEdsdmJpQnlaR1k2WVdKdmRYUTlJaUlnZUcxc2JuTTZlRzF3UFNKb2RIUndPaTh2Ym5NdVlXUnZZbVV1WTI5dEwzaGhjQzh4TGpBdklpQjRiV3h1Y3pwNGJYQk5UVDBpYUhSMGNEb3ZMMjV6TG1Ga2IySmxMbU52YlM5NFlYQXZNUzR3TDIxdEx5SWdlRzFzYm5NNmMzUlNaV1k5SW1oMGRIQTZMeTl1Y3k1aFpHOWlaUzVqYjIwdmVHRndMekV1TUM5elZIbHdaUzlTWlhOdmRYSmpaVkpsWmlNaUlIaHRjRHBEY21WaGRHOXlWRzl2YkQwaVFXUnZZbVVnVUdodmRHOXphRzl3SUVORElESXdNVFVnS0ZkcGJtUnZkM01wSWlCNGJYQk5UVHBKYm5OMFlXNWpaVWxFUFNKNGJYQXVhV2xrT2tJNU5VTTROemN6TURKQ1JURXhSVFk1UlRVMVJEZzNRekl3TmtZNVFUa3lJaUI0YlhCTlRUcEViMk4xYldWdWRFbEVQU0o0YlhBdVpHbGtPa0k1TlVNNE56YzBNREpDUlRFeFJUWTVSVFUxUkRnM1F6SXdOa1k1UVRreUlqNGdQSGh0Y0UxTk9rUmxjbWwyWldSR2NtOXRJSE4wVW1WbU9tbHVjM1JoYm1ObFNVUTlJbmh0Y0M1cGFXUTZRamsxUXpnM056RXdNa0pGTVRGRk5qbEZOVFZFT0RkRE1qQTJSamxCT1RJaUlITjBVbVZtT21SdlkzVnRaVzUwU1VROUluaHRjQzVrYVdRNlFqazFRemczTnpJd01rSkZNVEZGTmpsRk5UVkVPRGRETWpBMlJqbEJPVElpTHo0Z1BDOXlaR1k2UkdWelkzSnBjSFJwYjI0K0lEd3ZjbVJtT2xKRVJqNGdQQzk0T25odGNHMWxkR0UrSUR3L2VIQmhZMnRsZENCbGJtUTlJbklpUHo1QnJUNG1BQUFCK0VsRVFWUjQydXpiM1UzREFBeEZZZW9GbUtmZEFBYW1HekFQc0VCSUhuaEJLazFEZm83dFk4a1BlWXYwU1pFaTMzc2FodUdwOFp6SHZZNzdESGlYcjNGZlFnd094cmp2SVFZSFkzb0lNVGdZSFVIUUdOMUE4QmlkUUZKZ2RBRkpnOUVCSkJWR2RaQjBHSlZCU0JpZmN6R3FndEF3WHVkaVZBUkpqVkVOSkQxR0paQVNHRlZBeW1CVUFDbUZrUjJrSEVabWtKSVlXVUhLWW1RRUtZMlJEYVE4UmlhUUZoaFpRTnBnWkFCcGhVRUhhWWRCQm1tSlFRVnBpMEVFYVkxQkEybVBRUUlSQXdRaUJnaEVEQkNJR0NBUU1VQWdZb0JBeEFDQmlBRUNFUU1FSWdZSVJBd1FpQmdnRURGQUlHS0FRTVFBZ1lnQkFybUl3UUdaTU43RVlJQ0lBUUlSQXdRaUJnaEVEQkNJR0NBUU1VQWdZb0JBeEFDQmlBRUNFUU1FSWdZSVJBd1FpQmdnRURGQUlHS0FRTVFBeldrWWhnOHhNSE9lUUFZeEdCampYa01NRHNiMHBRb3hPQmgvL2FtTGNRREdrU0JpM01peGhSZ2NqQ05BeExpVDhBd3hPQmg3Z29neE0vc2NZbkF3OWdBUjQ4RldRSWpCd2RnU1JJeUZGWTBRWXpPTVJTZU5FSU9Ec1RhSUdDc2MrMElNRHNaYUlHS3NlQVlQTVRnWS93VVJZNE9BU0lqQndWZ0tJc2FHMGFrUWc0UHhLSWdZTzRRS1F3d094bHdRTVhhTTI0WVlISXg3SUdJY0VFUVBNVGdZdDBERU9MQ2lFV0p3TUg2RGlBRW9MNFVZSEl3ZkVERkF0YjZwUVhVUmc5T3gvQlpnQU9VWE9SeEd5NGFhQUFBQUFFbEZUa1N1UW1DQ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2cHggYXV0bztcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAzcHg7XG4gICAgICAgIGxlZnQ6IC0xMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTIwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAuNzU7XG4gICAgICAgIHRyYW5zZm9ybTogc2tld1goMTVkZWcpOyB9IH1cblxuLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rczpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7IH1cblxuLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIGgyIHtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGksXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNHM7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyID4gYSB7XG4gIGNvbG9yOiAjMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MubHQgdWwge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLnJ0IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLnJ0IGgyIHtcbiAgICBtYXJnaW4tbGVmdDogMjBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyBoMiB7XG4gICAgbWluLWhlaWdodDogMzRweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCB7XG4gICAgbWFyZ2luOiAwIC01cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtbW96LWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLW1zLWZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLW8tZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpIHtcbiAgICAgIC13ZWJraXQtZmxleDogMCA1MCU7XG4gICAgICAtbW96LWZsZXg6IDAgNTAlO1xuICAgICAgLW1zLWZsZXg6IDAgNTAlO1xuICAgICAgLW8tZmxleDogMCA1MCU7XG4gICAgICBmbGV4OiAwIDUwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCLuoLNcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgIGNvbG9yOiAjMDBlODYyO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICByaWdodDogMTJweDtcbiAgICAgICAgYm90dG9tOiA3cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIC40czsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYSB7XG4gICAgICAgIG1hcmdpbjogNXB4O1xuICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEgPiBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmFmdGVyLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3RpbGUtdHJpYW5nbGUuc3ZnKSBuby1yZXBlYXQ7XG4gICAgICAgICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTIwcHg7XG4gICAgICAgICAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTIwcHg7XG4gICAgICAgICAgLW1zLWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMjBweDtcbiAgICAgICAgICAtby1iYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEyMHB4O1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtcG9zaXRpb24gLjhzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zczsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuMjsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjJweDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xKTsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyOmFmdGVyLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6Zm9jdXM6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyID4gYSwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmZvY3VzID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxM2Q1NjM7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyID4gYTphZnRlciwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmZvY3VzID4gYTphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjJweDsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhOmJlZm9yZSwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmZvY3VzID4gYTpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IC4wNTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBmb250LXNpemU6IDEuNzVlbTsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgICBtYXJnaW46IDVweDtcbiAgICBtaW4taGVpZ2h0OiAxNDBweDtcbiAgICBmb250LXNpemU6IDEuMTg3NWVtOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYTpiZWZvcmUsIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGE6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE0MHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYTpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQwcHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyID4gYTphZnRlciwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmZvY3VzID4gYTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTQwcHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmhvdmVyID4gYTpiZWZvcmUsIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaTpmb2N1cyA+IGE6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgaDIge1xuICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNTVweDtcbiAgICBmb250LXNpemU6IDJlbTsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLmx0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLmx0OmJlZm9yZSwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcy5sdDphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNXB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjYWNiY2I7XG4gICAgICB0b3A6IDA7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLmx0OmJlZm9yZSB7XG4gICAgICBsZWZ0OiAtMzBweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MubHQ6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IC0xMHB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwge1xuICAgIG1hcmdpbi1yaWdodDogMzJweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLnJ0IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMzJweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLnJ0IGgyIHtcbiAgICBtYXJnaW4tbGVmdDogMzhweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyBhcnRpY2xlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5kZWJ0LWludmVzdG9ycyB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDBlODYyO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwZTg2MjtcbiAgcGFkZGluZzogMTVweCAwO1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLmRlYnQtaW52ZXN0b3JzIC53eXNpd3lnID4gZGl2IHtcbiAgICBtYXJnaW46IDA7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuZGVidC1pbnZlc3RvcnM6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLmRlYnQtaW52ZXN0b3JzOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLmRlYnQtaW52ZXN0b3JzIGgyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4zczsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmRlYnQtaW52ZXN0b3JzIGgyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qCzXCI7XG4gICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBjb2xvcjogIzAwZTg2MjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmRlYnQtaW52ZXN0b3JzIGgyOmhvdmVyLCAuaW52ZXN0b3ItY2VudHJlIC5kZWJ0LWludmVzdG9ycyBoMjpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwY2Y1NzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZGVidC1pbnZlc3RvcnMgaDI6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5kZWJ0LWludmVzdG9ycyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3QgaDIge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICBmb250LXNpemU6IDAuODEyNWVtO1xuICBsaW5lLWhlaWdodDogLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMyYzJmMmY7IH1cblxuLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0IC5kYXRlLXRpbWUge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgbGluZS1oZWlnaHQ6IC45O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjNjQ2NDY0O1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCBoMiB7XG4gIG1hcmdpbi10b3A6IDUwcHg7IH1cblxuLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0ID4gLndyYXBwZXIge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCA+IC53cmFwcGVyIC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0ID4gLndyYXBwZXIgLml0ZW0gLmRhdGUtdGltZSB7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCA+IC53cmFwcGVyIC5pdGVtIHA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdztcbiAgICAgIC1tb3otZmxleC1mbG93OiByb3c7XG4gICAgICAtbXMtZmxleC1mbG93OiByb3c7XG4gICAgICAtby1mbGV4LWZsb3c6IHJvdztcbiAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgICAgbWFyZ2luOiAwIC0xLjI1cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1heC13aWR0aDogMTAwZW07IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciA+IC5pdGVtIHtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICAtbW96LWZsZXg6IDEgMzMuMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICAtby1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICBmbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0IC53cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3QgLndyYXBwZXIgPiAuaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MnB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciA+IC5pdGVtIHA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07IH0gfVxuXG4uZmVhdHVyZWQge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7IH1cbiAgLmZlYXR1cmVkID4gaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IC45O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjNjQ2NDY0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5mZWF0dXJlZCB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5mZWF0dXJlZCA+IGgyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gIC5mZWF0dXJlZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZmVhdHVyZWQgLnJvdyAuY29sdW1uLCAuZmVhdHVyZWQgLnJvdyAuY29sdW1ucyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5zaGFyZS1wcm9tbyB7XG4gICAgICB3aWR0aDogMjAlOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC50aWxlLWxpbmtzIHtcbiAgICAgIHdpZHRoOiAzOCU7IH1cbiAgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbiwgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbnMge1xuICAgIHdpZHRoOiAzMyU7IH0gfVxuXG5ib2R5LmNhcmVlcnMgI21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiBcIkF2ZW5pclwiOyB9XG4gIGJvZHkuY2FyZWVycyAjbWFpbiAudG8tdG9wLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHJpZ2h0OiAzMHB4O1xuICAgIGJvdHRvbTogMzBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMjA7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAudG8tdG9wLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAgIGJvZHkuY2FyZWVycyAjbWFpbiAudG8tdG9wLWJ1dHRvbi5tb2JpbGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgYm90dG9tOiAxMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzICNtYWluIC50by10b3AtYnV0dG9uLm1vYmlsZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBib2R5LmNhcmVlcnMgI21haW4gc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgICBwYWRkaW5nLXRvcDogNTBweDsgfVxuICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0xIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTBweDsgfVxuICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTEgLmNvbnRlbnQtc2VjdC0xIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTEgLmNvbnRlbnQtc2VjdC0xIHtcbiAgICAgICAgICBvcmRlcjogMTsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMSBpbWcge1xuICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJvdHRvbTogLTMwcHg7XG4gICAgICAgIHJpZ2h0OiAtNThweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH0gfVxuICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTIge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0yIC5zZWN0LTItbWFpbi1pbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNzUwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0MzlweCkge1xuICAgICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0yIC5zZWN0LTItbWFpbi1pbWcge1xuICAgICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMiAuZGVza3RvcC12aWV3IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMiAuZGVza3RvcC12aWV3IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0yIC5zZWN0LTItY29udGVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTIgLnNlY3QtMi1jb250ZW50IC5nbGFzcy1iZyB7XG4gICAgICAgIHBhZGRpbmc6IDQwcHggNzBweDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpOyB9XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTIgLnNlY3QtMi1jb250ZW50IC5nbGFzcy1iZyAucXVvdGUtdGV4dCB7XG4gICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMiAuc2VjdC0yLWNvbnRlbnQgLmdsYXNzLWJnIC5xdW90ZS10ZXh0OmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9xdW90ZS1pY29uLnBuZyk7XG4gICAgICAgICAgICBsZWZ0OiAtNDVweDtcbiAgICAgICAgICAgIHRvcDogLTE1cHg7IH1cbiAgICAgICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0yIC5zZWN0LTItY29udGVudCAuZ2xhc3MtYmcgLnF1b3RlLXRleHQ6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvZW5kLXF1b3RlLWljb24ucG5nKTtcbiAgICAgICAgICAgIGJvdHRvbTogLTI1cHg7XG4gICAgICAgICAgICByaWdodDogLTM3cHg7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTIgLnNlY3QtMi1jb250ZW50IC5nbGFzcy1iZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMjBweDsgfSB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTIgLnNlY3QtMi1jb250ZW50IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwRTBFMEU7IH0gfVxuICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0zIHtcbiAgICBwYWRkaW5nOiAxMDBweCAwO1xuICAgIGJhY2tncm91bmQ6ICNGOEY4Rjg7IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0zIC5jYXJkIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICBoZWlnaHQ6IDM1MHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtMyAuY2FyZCB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDUwcHggMDsgfVxuICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTQgLnZpZGVvLXdyYXBwZXIgLmJnLWltYWdlIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC00IC52aWRlby13cmFwcGVyIC52aWRlby1kZXNjIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCAzMHB4IDMwcHg7IH1cbiAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEwMHB4IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC01IHtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC01IC5jb250ZW50LXNlY3QtNSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTUgLmNvbnRlbnQtc2VjdC01IHtcbiAgICAgICAgICBvcmRlcjogMTsgfSB9XG4gICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNSA+IGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAzMHB4IDAgMCAzMHB4O1xuICAgICAgaGVpZ2h0OiA1NTBweDtcbiAgICAgIHdpZHRoOiA0NiU7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogNTBweDtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNSA+IGltZyB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9IH1cbiAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNiB7XG4gICAgYmFja2dyb3VuZDogIzJEMkYyRjtcbiAgICBwYWRkaW5nOiA1MHB4IDAgNTBweDsgfVxuICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLnRhbGVudC1zd2lwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDUwcHg7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLnRhbGVudC1zd2lwZXIgLnN3aXBlci1idXR0b24tbmV4dCwgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNiAudGFsZW50LXN3aXBlciAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM0NzRBNEE7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxQjFDMUM7XG4gICAgICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC02IC50YWItY29udGVudCBwIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNiAuY2FyZCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLmNhcmQuc3dpcGVyLXNsaWRlLWFjdGl2ZSBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLmNhcmQuc3dpcGVyLXNsaWRlLWFjdGl2ZSAudGFsZW50LW5hbWUge1xuICAgICAgICBjb2xvcjogI2ZmZjsgfVxuICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNiAuY2FyZC5zd2lwZXItc2xpZGUgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMC41OyB9XG4gICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC02IC5jYXJkIC50YWxlbnQtaW1nIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLmNhcmQgLnRhbGVudC1uYW1lIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6ICNBMUEyQTI7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTYgLmNhcmQgLnRhbGVudC1wb3NpdGlvbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGNvbG9yOiAjNjc2ODY4OyB9XG4gIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTcge1xuICAgIHBhZGRpbmc6IDEwMHB4IDA7IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC03IC5jb250ZW50LXNlY3QtNyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTcgLmNvbnRlbnQtc2VjdC03IHtcbiAgICAgICAgICBvcmRlcjogMTsgfSB9XG4gICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNyAuY2FyZCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjRURFREVEO1xuICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIHRyYW5zaXRpb246IDAuM3M7XG4gICAgICBoZWlnaHQ6IDI3NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC03IC5jYXJkIHtcbiAgICAgICAgICBoZWlnaHQ6IDM1MHB4OyB9IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTcgLmNhcmQgbGkge1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTsgfVxuICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtNyAuY2FyZDpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgIzA3OUIzQTsgfVxuICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC04IHtcbiAgICBwYWRkaW5nOiAxMDBweCAwO1xuICAgIGJhY2tncm91bmQ6ICNGOEY4Rjg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC04IHtcbiAgICAgICAgcGFkZGluZzogNTBweCAwO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC04ID4gaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMzBweCAzMHB4IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtNTBweDtcbiAgICAgIGhlaWdodDogNDQ4cHg7XG4gICAgICB3aWR0aDogNDYlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC04ID4gaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgICB3aWR0aDogOTAlO1xuICAgICAgICAgIGhlaWdodDogMjUwcHg7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH0gfVxuICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC05IHtcbiAgICBwYWRkaW5nOiA1MHB4IDA7IH1cbiAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC05IC5jYXJkIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFREVERUQ7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgIGhlaWdodDogMjc1cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTkgLmNhcmQge1xuICAgICAgICAgIGhlaWdodDogMzUwcHg7IH0gfVxuICAgICAgYm9keS5jYXJlZXJzICNtYWluIC5jYXJlZXJzLXNlY3QtOSAuY2FyZCBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlOyB9XG4gICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC05IC5jYXJkOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCA1cHggMTBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjMDc5QjNBOyB9XG4gIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTEwIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xuICAgIHBhZGRpbmc6IDUwcHggMDsgfVxuICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTEwIC5ibG9nLXN3aXBlciB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMCAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkuY2FyZWVycyAjbWFpbiAuY2FyZWVycy1zZWN0LTEwIC5ibG9nLXN3aXBlciAuYmxvZy1zd2lwZXItYnV0dG9uLXByZXYsXG4gICAgICBib2R5LmNhcmVlcnMgI21haW4gLmNhcmVlcnMtc2VjdC0xMCAuYmxvZy1zd2lwZXIgLmJsb2ctc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgICAgICAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIHRvcDogMjVweCAhaW1wb3J0YW50O1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlciAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgaGVhZGVyIC5oZXJvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDE1MHB4O1xuICByaWdodDogMDtcbiAgd2lkdGg6IDQzJTsgfVxuICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IGhlYWRlciAuaGVybyAucHJpbWFyeS1idXR0b24ge1xuICAgIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IGhlYWRlciAuaGVybzpob3ZlciAucHJpbWFyeS1idXR0b24ge1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dCAhaW1wb3J0YW50OyB9XG4gIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgaGVhZGVyIC5oZXJvLm92ZXJsYXkge1xuICAgIG9wYWNpdHk6IDAuMzU7IH1cbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IGhlYWRlciAuaGVyby5vdmVybGF5IC5wcmltYXJ5LWJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kOiAjQjRCNUI1O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjQjRCNUI1ICFpbXBvcnRhbnQ7IH1cbiAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXN0aWNreSBoZWFkZXIgLmhlcm8gLm1haW4taW1nIHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMjc5cHgpIHtcbiAgICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgaGVhZGVyIC5oZXJvIC5tYWluLWltZyB7XG4gICAgICAgIGhlaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDM5cHgpIHtcbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IGhlYWRlciAuaGVybyB7XG4gICAgICB0b3A6IDEzNHB4OyB9IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyNzlweCkge1xuICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgaGVhZGVyIC5oZXJvIHtcbiAgICAgIHRvcDogOTBweDsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgaGVhZGVyIC5oZXJvIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5ib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IHNlY3Rpb24ge1xuICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7IH1cblxuYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXN0aWNreSAuZml4ZWQtYnV0dG9uIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjRjhGOEY4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBkaXNwbGF5OiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyXCI7XG4gIHotaW5kZXg6IDEwOyB9XG4gIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgLmZpeGVkLWJ1dHRvbiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IC5maXhlZC1idXR0b24gYTphZnRlciB7XG4gICAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9hcnJvdy5wbmcpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IC5maXhlZC1idXR0b24ge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgLm1haW4taW1nLW1vYmlsZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtc3RpY2t5IC5tYWluLWltZy1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfSB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1zdGlja3kgLmF1dGhvci13cmFwcGVyIC5hdXRob3ItbmFtZS13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1mdWxsd2lkdGgtaW1nIC5oZXJvIC5tYWluLWltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDc1MHB4O1xuICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLWZ1bGx3aWR0aC1pbWcgLmhlcm8gLm1haW4taW1nIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfSB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1mdWxsd2lkdGgtaW1nIC5jYXJlZXJzLWRldGFpbC1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDMwcHggMDsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtZnVsbHdpZHRoLWltZyAuY2FyZWVycy1kZXRhaWwtY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH0gfVxuXG5ib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtZnVsbHdpZHRoLWltZyAuY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFREVERUQ7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIHRyYW5zaXRpb246IDAuM3M7XG4gIGhlaWdodDogMjUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLWZ1bGx3aWR0aC1pbWcgLmNhcmQgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlOyB9XG4gIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC1mdWxsd2lkdGgtaW1nIC5jYXJkOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjMDc5QjNBOyB9XG5cbmJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC10YWIgLmhlcm8gLm1haW4taW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNzUwcHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtdGFiIC5oZXJvIC5tYWluLWltZyB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG5ib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtdGFiIC5jb250ZW50LXRhYnMtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwMHB4IDA7XG4gIGJhY2tncm91bmQ6ICNGOEY4Rjg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtdGFiIC5jb250ZW50LXRhYnMtd3JhcHBlciAudGFiLW9wdGlvbnMgbGkge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAjN0U3RTdFO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgd2lkdGg6IDkwJTsgfVxuICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC10YWIgLmNvbnRlbnQtdGFicy13cmFwcGVyIC50YWItb3B0aW9ucyBsaTo6bWFya2VyIHtcbiAgICAgIGNvbG9yOiAjMDc5QjNBOyB9XG4gICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1vcHRpb25zIGxpLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogIzBGMEUwRTsgfVxuICAgICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1vcHRpb25zIGxpLmFjdGl2ZTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL2Fycm93LWhvdmVyLWJpZy5wbmcpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAtMTVweDtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpOyB9XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1vcHRpb25zIGxpLmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuICAgICAgICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC10YWIgLmNvbnRlbnQtdGFicy13cmFwcGVyIC50YWItb3B0aW9ucyBsaS5hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjsgfSB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC10YWIgLmNvbnRlbnQtdGFicy13cmFwcGVyIC50YWItb3B0aW9ucyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1zd2lwZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1zd2lwZXIge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1zd2lwZXIgLnRhYiB7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtdGFiIC5jb250ZW50LXRhYnMtd3JhcHBlciAudGFiLXN3aXBlciAudGFiIGg0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1zd2lwZXIgLnRhYi5zd2lwZXItc2xpZGUtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7IH1cbiAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1jb250ZW50cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTUwcHg7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDQ5JTtcbiAgICBwYWRkaW5nOiA3NXB4IDUwcHg7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4IDAgMCAzMHB4O1xuICAgIGhlaWdodDogNDUwcHg7IH1cbiAgICBib2R5LmNhcmVlcnMuY2FyZWVycy1kZXRhaWwtdGFiIC5jb250ZW50LXRhYnMtd3JhcHBlciAudGFiLWNvbnRlbnRzIC50YWItY29udGVudC1pY29uIHtcbiAgICAgIGhlaWdodDogNDBweDsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMTk5cHgpIHtcbiAgICAgIGJvZHkuY2FyZWVycy5jYXJlZXJzLWRldGFpbC10YWIgLmNvbnRlbnQtdGFicy13cmFwcGVyIC50YWItY29udGVudHMge1xuICAgICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJlZXJzLmNhcmVlcnMtZGV0YWlsLXRhYiAuY29udGVudC10YWJzLXdyYXBwZXIgLnRhYi1jb250ZW50cyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7IH0gfVxuXG5ib2R5LmNhcmVlcnMgLnByaW1hcnktYnV0dG9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0VCRUJFQjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgY29sb3I6ICMwNzlCM0E7XG4gIHBhZGRpbmc6IDEycHggNDBweCAxMHB4IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJBdmVuaXJcIjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICBib2R5LmNhcmVlcnMgLnByaW1hcnktYnV0dG9uOmFmdGVyIHtcbiAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9hcnJvdy5wbmcpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTVweDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuICBib2R5LmNhcmVlcnMgLnByaW1hcnktYnV0dG9uOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDc5QjNBO1xuICAgIGJvcmRlci1jb2xvcjogIzA3OUIzQTsgfVxuICAgIGJvZHkuY2FyZWVycyAucHJpbWFyeS1idXR0b246aG92ZXI6YWZ0ZXIge1xuICAgICAgY29udGVudDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvYXJyb3ctaG92ZXIucG5nKTsgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICBib2R5LmNhcmVlcnMgLnByaW1hcnktYnV0dG9uIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUge1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICB0cmFuc2l0aW9uOiAwLjNzO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIGJvZHkuY2FyZWVycyAuYmxvZy10aWxlOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDEzcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMTYpOyB9XG4gIGJvZHkuY2FyZWVycyAuYmxvZy10aWxlIC5ibG9nLWltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAwIDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgbWF4LWhlaWdodDogMjgwcHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgICBib2R5LmNhcmVlcnMgLmJsb2ctdGlsZSAuYmxvZy1pbWcge1xuICAgICAgICBoZWlnaHQ6IDE1MHB4OyB9IH1cbiAgYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUgLmJsb2ctdGlsZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAyMHB4OyB9XG4gICAgYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUgLmJsb2ctdGlsZS13cmFwcGVyIHVsIGxpIHtcbiAgICAgIGNvbG9yOiAjMDc5QjNBO1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7IH1cbiAgICBib2R5LmNhcmVlcnMgLmJsb2ctdGlsZSAuYmxvZy10aWxlLXdyYXBwZXIgcCB7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsOyB9XG4gICAgYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUgLmJsb2ctdGlsZS13cmFwcGVyIC5ibG9nLXRpbGUtYm90dG9tLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUgLmJsb2ctdGlsZS13cmFwcGVyIC5ibG9nLXRpbGUtYm90dG9tLXdyYXBwZXIge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9IH1cbiAgICAgIGJvZHkuY2FyZWVycyAuYmxvZy10aWxlIC5ibG9nLXRpbGUtd3JhcHBlciAuYmxvZy10aWxlLWJvdHRvbS13cmFwcGVyIC5hdXRob3Itd3JhcHBlciAuYXV0aG9yLW5hbWUtd3JhcHBlciAuYXV0aG9yLXBvc2l0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxMXB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogMjMwcHggIWltcG9ydGFudDsgfVxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTQzOXB4KSB7XG4gICAgICAgICAgYm9keS5jYXJlZXJzIC5ibG9nLXRpbGUgLmJsb2ctdGlsZS13cmFwcGVyIC5ibG9nLXRpbGUtYm90dG9tLXdyYXBwZXIgLmF1dGhvci13cmFwcGVyIC5hdXRob3ItbmFtZS13cmFwcGVyIC5hdXRob3ItcG9zaXRpb24ge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxODVweCAhaW1wb3J0YW50OyB9IH1cbiAgICAgIGJvZHkuY2FyZWVycyAuYmxvZy10aWxlIC5ibG9nLXRpbGUtd3JhcHBlciAuYmxvZy10aWxlLWJvdHRvbS13cmFwcGVyIC5ibG9nLXVybCB7XG4gICAgICAgIGNvbG9yOiAjMDc5QjNBO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICAgIGJvZHkuY2FyZWVycyAuYmxvZy10aWxlIC5ibG9nLXRpbGUtd3JhcHBlciAuYmxvZy10aWxlLWJvdHRvbS13cmFwcGVyIC5ibG9nLXVybCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7IH0gfVxuICAgICAgICBib2R5LmNhcmVlcnMgLmJsb2ctdGlsZSAuYmxvZy10aWxlLXdyYXBwZXIgLmJsb2ctdGlsZS1ib3R0b20td3JhcHBlciAuYmxvZy11cmw6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL2Fycm93LnBuZyk7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHJpZ2h0OiAwOyB9XG5cbmJvZHkuY2FyZWVycyBoMSwgYm9keS5jYXJlZXJzIGgyLCBib2R5LmNhcmVlcnMgaDMsIGJvZHkuY2FyZWVycyBoNCwgYm9keS5jYXJlZXJzIGg1LCBib2R5LmNhcmVlcnMgaDYge1xuICBmb250LWZhbWlseTogXCJBdmVuaXJcIjsgfVxuXG5ib2R5LmNhcmVlcnMgaDMge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4zZW07IH1cblxuYm9keS5jYXJlZXJzIHAsIGJvZHkuY2FyZWVycyBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIExpZ2h0XCI7IH1cblxuYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIGJvZHkuY2FyZWVycyAudmlkZW8td3JhcHBlci5zbWFsbCB7XG4gICAgd2lkdGg6IDcwcHg7XG4gICAgaGVpZ2h0OiA3MHB4OyB9XG4gICAgYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyLnNtYWxsIC5wbGF5LWJ1dHRvbi13cmFwcGVyIHtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgaGVpZ2h0OiA3MHB4OyB9XG4gIGJvZHkuY2FyZWVycyAudmlkZW8td3JhcHBlciAucGxheS1idXR0b24td3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8qIHBhZGRpbmc6IDIwcHg7ICovXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI4KTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IDAuMnM7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyIC5wbGF5LWJ1dHRvbi13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDsgfSB9XG4gICAgYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyIC5wbGF5LWJ1dHRvbi13cmFwcGVyLnRhYmxldC12aWV3IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgICAgYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyIC5wbGF5LWJ1dHRvbi13cmFwcGVyLnRhYmxldC12aWV3IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgICBib2R5LmNhcmVlcnMgLnZpZGVvLXdyYXBwZXIgLnBsYXktYnV0dG9uLXdyYXBwZXI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzA3OUIzQSAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDc5QjNBICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LmNhcmVlcnMgLnZpZGVvLXdyYXBwZXIgLnBsYXktYnV0dG9uLXdyYXBwZXIgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGxlZnQ6IDNweDsgfVxuICBib2R5LmNhcmVlcnMgLnZpZGVvLXdyYXBwZXIgLnZpZGVvLWRlc2Mge1xuICAgIGhlaWdodDogMTAlO1xuICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pclwiO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwLCByZ2JhKDAsIDAsIDAsIDAuOCksIHRyYW5zcGFyZW50KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDMwcHggMCA1MHB4O1xuICAgIGNvbG9yOiAjZDhkOGQ4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgICBib2R5LmNhcmVlcnMgLnZpZGVvLXdyYXBwZXIgLnZpZGVvLWRlc2M6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL3ZpZGVvLWluZm8ucG5nKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDE1cHg7IH1cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgIGJvZHkuY2FyZWVycyAudmlkZW8td3JhcHBlciAudmlkZW8tZGVzYyB7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4OyB9IH1cbiAgYm9keS5jYXJlZXJzIC52aWRlby13cmFwcGVyIC5iZy1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cblxuYm9keS5jYXJlZXJzIC5hdXRob3Itd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cbiAgYm9keS5jYXJlZXJzIC5hdXRob3Itd3JhcHBlciAuYXV0aG9yLWltZyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB3aGl0ZTtcbiAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE2KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgYm9keS5jYXJlZXJzIC5hdXRob3Itd3JhcHBlciAuYXV0aG9yLW5hbWUtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgYm9keS5jYXJlZXJzIC5hdXRob3Itd3JhcHBlciAuYXV0aG9yLW5hbWUtd3JhcHBlciAuYXV0aG9yLW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbiAgICBib2R5LmNhcmVlcnMgLmF1dGhvci13cmFwcGVyIC5hdXRob3ItbmFtZS13cmFwcGVyIC5hdXRob3ItcG9zaXRpb24ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuYm9keS5jYXJlZXJzIC5wb2ludGVyIHtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbmJvZHkuY2FyZWVycyAuYXQtc2hhcmUtYnRuLWVsZW1lbnRzIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycyAuYXQtc2hhcmUtYnRuIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQkVCRUI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbmJvZHkuY2FyZWVycyAucmV2ZWFsLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwICFpbXBvcnRhbnQ7XG4gIHotaW5kZXg6IDk5OTk5ICFpbXBvcnRhbnQ7IH1cbiAgYm9keS5jYXJlZXJzIC5yZXZlYWwtb3ZlcmxheTphZnRlciB7XG4gICAgY29udGVudDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvY2xvc2UtaWNvbi5wbmcpO1xuICAgIHdpZHRoOiAzMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIHJpZ2h0OiA1MHB4O1xuICAgIHRvcDogNTBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cblxuYm9keS5jYXJlZXJzIC5yZXZlYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBib3JkZXI6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3OXB4KSB7XG4gICAgYm9keS5jYXJlZXJzIC5yZXZlYWwge1xuICAgICAgdG9wOiAxMzBweCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtaW4taGVpZ2h0OiBhdXRvOyB9IH1cblxuYm9keS5jYXJlZXJzIC5jbG9zZS1idXR0b24ge1xuICBmb250LXNpemU6IDNlbSAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycyAuY2xvc2UtYnV0dG9uOmhvdmVyLCBib2R5LmNhcmVlcnMgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjOGE4YThhICFpbXBvcnRhbnQ7IH1cblxuYm9keS5jYXJlZXJzIC5zdWJ0aXRsZSB7XG4gIHdpZHRoOiA3NSU7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5jYXJlZXJzIC5zdWJ0aXRsZSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbmJvZHkuY2FyZWVycyAudy0xMDAge1xuICB3aWR0aDogMTAwJTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keS5jYXJlZXJzIC5zaGFyZS1idXR0b24td3JhcHBlciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuYm9keS5jYXJlZXJzIC5zaGFyZS1idXR0b24td3JhcHBlci1tb2JpbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgYm9keS5jYXJlZXJzIC5zaGFyZS1idXR0b24td3JhcHBlci1tb2JpbGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7IH0gfVxuXG5ib2R5LmNhcmVlcnMgLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbmJvZHkuY2FyZWVycyAudGV4dC1ib2xkIHtcbiAgZm9udC1mYW1pbHk6IFwiQXZlbmlyIEJvbGRcIiAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycyAudGV4dC1saWdodCB7XG4gIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMaWdodFwiICFpbXBvcnRhbnQ7IH1cblxuYm9keS5jYXJlZXJzIC5kLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4OyB9XG5cbmJvZHkuY2FyZWVycyAuZmxleC1jb2x1bW4ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG5cbmJvZHkuY2FyZWVycyAuYWxpZ24taXRlbXMtYmFzZSB7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTsgfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgYm9keS5jYXJlZXJzIC5mbGV4LWNvbHVtbi1tb2JpbGUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH0gfVxuXG5ib2R5LmNhcmVlcnMgLm9yZGVyLTEge1xuICBvcmRlcjogMTsgfVxuXG5ib2R5LmNhcmVlcnMgLm9yZGVyLTIge1xuICBvcmRlcjogMjsgfVxuXG5ib2R5LmNhcmVlcnMgLmp1c3RpZnktY2VudGVyIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH1cblxuYm9keS5jYXJlZXJzIC5hbGlnbi1pdGVtcy1jZW50ZXIge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbmJvZHkuY2FyZWVycyAuanVzdGlmeS1iZXR3ZWVuIHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbmJvZHkuY2FyZWVycyAuZC1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJvZHkuY2FyZWVycyAubXItbm9uZS1tb2JpbGUge1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuYm9keS5jYXJlZXJzIC5tci0xMCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDsgfVxuXG5ib2R5LmNhcmVlcnMgLm1yLTIwIHtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubWItMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICBib2R5LmNhcmVlcnMgLm1iLTEwLW1vYmlsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfSB9XG5cbmJvZHkuY2FyZWVycyAubWItMjAge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubWItMzAge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubWItNDAge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubWItNTAge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubXQtMTAge1xuICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubXQtMjAge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAubXQtMzAge1xuICBtYXJnaW4tdG9wOiAzMHB4OyB9XG5cbmJvZHkuY2FyZWVycyAucHQtMzAge1xuICBwYWRkaW5nLXRvcDogMzBweDsgfVxuXG5ib2R5LmNhcmVlcnMgLnRleHQtd2hpdGUge1xuICBjb2xvcjogI2ZmZjsgfVxuXG5ib2R5LmNhcmVlcnMgLnRleHQtZ3JlZW4ge1xuICBjb2xvcjogIzA3OUIzQTsgfVxuXG5ib2R5LmNhcmVlcnMgLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG5ib2R5LmNhcmVlcnMgLmNhcmQgdWwgbGkge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICBib2R5LmNhcmVlcnMgLmNhcmQgdWwgbGk6Om1hcmtlciB7XG4gICAgY29sb3I6ICMwNzlCM0E7IH1cblxuYm9keS5jYXJlZXJzIC51c2VmdWwtcGFnZSB7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuYm9keS5jYXJlZXJzIC5zd2lwZXItY29udGFpbmVyLWhvcml6b250YWwgPiAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgYm9keS5jYXJlZXJzIC5zd2lwZXItcGFnaW5hdGlvbi1jdXN0b20sIGJvZHkuY2FyZWVycyAuc3dpcGVyLXBhZ2luYXRpb24tZnJhY3Rpb24ge1xuICBib3R0b206IDIzcHg7IH1cblxuYm9keS5jYXJlZXJzIC5zd2lwZXItY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cblxuYm9keS5jYXJlZXJzIC5zd2lwZXItYnV0dG9uLW5leHQsIGJvZHkuY2FyZWVycyAuc3dpcGVyLWJ1dHRvbi1wcmV2IHtcbiAgY29sb3I6ICMwNzlCM0EgIWltcG9ydGFudDtcbiAgYm90dG9tOiAxMnB4O1xuICB0b3A6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQkVCRUI7XG4gIHdpZHRoOiBhdXRvO1xuICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5ib2R5LmNhcmVlcnMgLnN3aXBlci1idXR0b24tcHJldiwgYm9keS5jYXJlZXJzIC5zd2lwZXItY29udGFpbmVyLXJ0bCAuc3dpcGVyLWJ1dHRvbi1uZXh0IHtcbiAgcmlnaHQ6IDQwcHg7XG4gIGxlZnQ6IGF1dG87IH1cblxuYm9keS5jYXJlZXJzIC5zd2lwZXItYnV0dG9uLW5leHQsIGJvZHkuY2FyZWVycyAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvOyB9XG5cbmJvZHkuY2FyZWVycyAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLCBib2R5LmNhcmVlcnMgLnN3aXBlci1idXR0b24tcHJldjphZnRlciB7XG4gIGZvbnQtc2l6ZTogMTJweCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50OyB9XG5cbmJvZHkuY2FyZWVycyAuc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0LWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICMwNzlCM0EgIWltcG9ydGFudDsgfVxuXG4jY2FyZWVycy1jb3Jwb3JhdGUgLmdyZXktcGFuZWwge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjM2MzZTNlOyB9XG4gICNjYXJlZXJzLWNvcnBvcmF0ZSAuZ3JleS1wYW5lbCA+IC5sYXJnZS1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5xdW90ZS1pbnRybyB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuXG4uY2FyZWVyLXBhbmVscyAuYXJyb3ctbGluay1yaWdodCB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xuICBjb2xvcjogI2ZmZjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjNzO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE4NzVlbTsgfVxuICAuY2FyZWVyLXBhbmVscyAuYXJyb3ctbGluay1yaWdodDphZnRlciB7XG4gICAgY29udGVudDogXCLuoLNcIjtcbiAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGNvbG9yOiAjMDBlODYyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuXG4uY2FyZWVyLXBhbmVscyBhOmhvdmVyIC5hcnJvdy1saW5rLXJpZ2h0LCAuY2FyZWVyLXBhbmVscyBhOmZvY3VzIC5hcnJvdy1saW5rLXJpZ2h0IHtcbiAgY29sb3I6ICMwMGU4NjI7IH1cblxuLmNhcmVlci1wYW5lbHMge1xuICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIC5jYXJlZXItcGFuZWxzIC5jYXJlZXItcGFuZWwge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUgPiBoMiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXJlZXItcGFuZWxzIC5jYXJlZXItcGFuZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgLmNhcmVlci1wYW5lbHMgLmNhcmVlci1wYW5lbCBhID4gLnRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgd2lkdGg6IDQwJTsgfVxuICAgICAgLmNhcmVlci1wYW5lbHMgLmNhcmVlci1wYW5lbCBhID4gLnRpdGxlID4gaDIge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUgPiAuYXJyb3ctbGluay1yaWdodCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgICAgcGFkZGluZzogMTBweCAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUgPiBoMiB7XG4gICAgICBwYWRkaW5nOiAzNnB4IDIwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBlODYyO1xuICAgICAgZm9udC1zaXplOiAxLjg3NWVtO1xuICAgICAgY29sb3I6ICMyYzJmMmY7IH1cbiAgICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUgPiAuYXJyb3ctbGluay1yaWdodCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yMHB4O1xuICAgICAgcGFkZGluZzogMTBweCAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUge1xuICAgIHdpZHRoOiA0MiU7IH1cbiAgICAuY2FyZWVyLXBhbmVscyAuY2FyZWVyLXBhbmVsIGEgPiAudGl0bGUgPiBoMiB7XG4gICAgICBmb250LXNpemU6IDIuMjVlbTsgfVxuICAgIC5jYXJlZXItcGFuZWxzIC5jYXJlZXItcGFuZWwgYSA+IC50aXRsZSA+IC5hcnJvdy1saW5rLXJpZ2h0IHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgLmNhcmVlci1wYW5lbHMge1xuICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDsgfSB9XG5cbi5tYWluIC5jYXJlZXJzIC5jb2x1bW5zIHtcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmNhcmVlcnMgKyAuZ3JleS1wYW5lbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmNhcmVlcnMtcGFuZWwge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2JjYjtcbiAgcGFkZGluZy10b3A6IDM1cHg7IH1cblxuLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmYyZjtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjEyNWVtOyB9IH1cbiAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIGgyOmZpcnN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgY29sb3I6ICMwMGU4NjI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIGgzLFxuICAuaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWwgaDQsXG4gIC5oaWdobGlnaHQtcGFuZWwuZ3JleS1wYW5lbCBoNSxcbiAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIGg2IHtcbiAgICBjb2xvcjogI2VhZWFlYTsgfVxuICAuaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWwgLmNvbHVtbnMge1xuICAgIHotaW5kZXg6IDIwMDsgfVxuICAuaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWw6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvc3Ryb2tlLXN2Zy5zdmcpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4ZW0pIHtcbiAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIC5yb3c6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgYXJ0aWNsZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAuaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWwgaDI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogNTBweDsgfSB9XG5cbi5saXN0LWltYWdlLWNvcHkge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubGlzdC1pbWFnZS1jb3B5IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA2LjI1ZW07IH0gfVxuICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgIG1heC13aWR0aDogNDUwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgICAgICBtYXgtd2lkdGg6IDExMDBweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwge1xuICAgICAgICBtYXJnaW46IDQwcHggMy4xMjVlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuaW1hZ2UgPiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuaW1hZ2Uge1xuICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07XG4gICAgICAgIG1heC13aWR0aDogNDUwcHg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5pbWFnZSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNWVtOyB9IH1cbiAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuY29weSB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyMHB4IDAgMS4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC45Njg3NWVtO1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5jb3B5IGEubW9yZS1saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBjb2xvcjogIzYxNjM2MztcbiAgICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuY29weSBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5jb3B5IGgzIHtcbiAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSGV1cmlzdGljYSc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVlbTsgfVxuICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwgLmNvcHkgcCB7XG4gICAgICAgIGNvbG9yOiAjNjE2MzYzOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gICAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5jb3B5IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuY29weSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4OiAxIDEgNTAlO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206ICNjYWNiY2IgMXB4IHNvbGlkOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwgLmNvcHkge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgICAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5jb3B5IGgzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xODc1ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG4gICAgICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwgLmNvcHkgPiAud3JhcHBlciB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luOiBpbml0aWFsO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgICAgLmxpc3QtaW1hZ2UtY29weSAucGFuZWwgLmNvcHkgPiAud3JhcHBlciB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNWVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4yNWVtOyB9XG4gICAgICAgIC5saXN0LWltYWdlLWNvcHkgLnBhbmVsIC5jb3B5IGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDsgfVxuICAgICAgICAubGlzdC1pbWFnZS1jb3B5IC5wYW5lbCAuY29weSBwIHtcbiAgICAgICAgICBjb2xvcjogIzYxNjM2MzsgfSB9XG5cbi5wcm9maWxlLmRldGFpbCAuaW1hZ2Uge1xuICBtYXJnaW46IDAgYXV0byAyNXB4O1xuICB3aWR0aDogMjM1cHg7IH1cblxuLm91ci1idXNpbmVzc2VzIC5wYWdlLWludHJvID4gLnd5c2l3eWcge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4ub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIge1xuICBwYWRkaW5nOiAwIDIwcHggMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogNTVweDsgfVxuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCB7XG4gICAgbWFyZ2luOiA0MHB4IC0xMHB4IDA7XG4gICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xuICAgIG1hcmdpbi1yaWdodDogLTEwcHg7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCA+IC53eXNpd3lnIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgTWVkaXVtJztcbiAgICAgIGZvbnQtc2l6ZTogMS4wNjI1ZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIG1hcmdpbjogMCAwIDIwcHg7IH1cbiAgICAgIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMgYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCLuoIpcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTtcbiAgICAgICAgICBjb2xvcjogIzAwZTg2MjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7IH1cbiAgICAgICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMgYTpob3ZlciwgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMgYTpmb2N1cywgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMgYTphY3RpdmUge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgICAgICAgIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIGE6aG92ZXI6YWZ0ZXIsIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIGE6Zm9jdXM6YWZ0ZXIsIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIGE6YWN0aXZlOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMEI4NjUxOyB9XG4gICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgLmNvbHVtbnMge1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIG1heC13aWR0aDogNTAlOyB9XG4gICAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAuY29sdW1ucyA+IC5wYW5lbCB7XG4gICAgICAgIG1hcmdpbjogMTBweDtcbiAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAucm93LWhlYWRlciB7XG4gICAgICBmbGV4OiAxIDEgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgLnJvdy1oZWFkZXIgLnBhbmVsIC5pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cblxuLm91ci1idXNpbmVzc2VzIC53cmFwcGVyOmZpcnN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgLm91ci1idXNpbmVzc2VzIC5wYWdlLWludHJvID4gLnd5c2l3eWcge1xuICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIC5jb2x1bW5zIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAucm93LWhlYWRlciB7XG4gICAgZmxleDogMSAxIDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAucm93LWhlYWRlciAucGFuZWwgLmltYWdlIHtcbiAgICAgIG1heC13aWR0aDogMjIwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vdXItYnVzaW5lc3NlcyAucGFnZS1pbnRybyA+IC53eXNpd3lnIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBwYWRkaW5nOiAwIDMwcHg7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAuY29sdW1ucyB7XG4gICAgICBmbGV4OiAwIDAgMjUlO1xuICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gICAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAuY29sdW1ucyAud3lzaXd5ZyB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgLnJvdy1oZWFkZXIge1xuICAgICAgZmxleDogMSAxIDEwMCUgIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAucm93LWhlYWRlciAucGFuZWwgLmltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMjBweDtcbiAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCBoMyxcbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cDpmaXJzdC1jaGlsZCBoMyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgICAgbWFyZ2luOiAyMHB4IDEwcHggMjBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2JjYjsgfVxuICAgIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwOmZpcnN0LWNoaWxkIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm91ci1idXNpbmVzc2VzIC5yb3ctZ3JvdXAgLnd5c2l3eWcge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCAuY29sdW1ucyB7XG4gICAgZmxleDogMCAwIDIwJTtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIC5jb2x1bW5zIC53eXNpd3lnIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIHtcbiAgICBmb250LXNpemU6IDEuMTg3NWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIge1xuICAgIHBhZGRpbmc6IDU1cHggNTVweCAwIDU1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXIgLnJvdy1ncm91cCB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgICAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgLmNvbHVtbnMge1xuICAgICAgICBmbGV4OiAwIDAgMTYuNjY2NiU7XG4gICAgICAgIG1heC13aWR0aDogMTYuNjY2NiU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAub3VyLWJ1c2luZXNzZXMgLndyYXBwZXI6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMge1xuICAgIGZvbnQtc2l6ZTogMS4zNzVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm91ci1idXNpbmVzc2VzIC53cmFwcGVyIC5yb3ctZ3JvdXAgaDMge1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgZm9udC1zaXplOiAxLjVlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gIC5vdXItYnVzaW5lc3NlcyAud3JhcHBlciAucm93LWdyb3VwIGgzIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4OyB9IH1cblxuLm91ci1idXNpbmVzc2VzIGgzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDM1cHggMCA1NXB4IDA7IH1cblxuLm91ci1idXNpbmVzc2VzIC5wYW5lbCB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm91ci1idXNpbmVzc2VzIC5mZWF0dXJlZCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NhY2JjYjsgfVxuICAub3VyLWJ1c2luZXNzZXMgLmZlYXR1cmVkIGgyIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMwZW0pIHtcbiAgICAub3VyLWJ1c2luZXNzZXMgLmZlYXR1cmVkIHtcbiAgICAgIGJvcmRlcjogbm9uZTsgfVxuICAgICAgLm91ci1idXNpbmVzc2VzIC5mZWF0dXJlZCBoMiB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYmNiOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkgYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAub3VyLWJ1c2luZXNzZXMge1xuICAgIG1hcmdpbjogMCAxMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAuZmVhdHVyZWQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbiwgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbnMge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAub3VyLWJ1c2luZXNzZXMgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5vdXItYnVzaW5lc3NlcyAuZ3JpZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLmdyaWQgLnNoYXJlLXByb21vIHtcbiAgICAgIHdpZHRoOiAyMCU7IH1cbiAgICAub3VyLWJ1c2luZXNzZXMgLmdyaWQgLnRpbGUtbGlua3Mge1xuICAgICAgd2lkdGg6IDM4JTsgfVxuICAuZmVhdHVyZWQgLnJvdyAuY29sdW1uLCAuZmVhdHVyZWQgLnJvdyAuY29sdW1ucyB7XG4gICAgd2lkdGg6IDMzJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm91ci1kaXZpc2lvbnMgYXJ0aWNsZS53eXNpd3lnIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLm91ci1kaXZpc2lvbnMgYXJ0aWNsZS53eXNpd3lnIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4ub3VyLWRpdmlzaW9ucyAucGFnZS1pbnRybyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm91ci1kaXZpc2lvbnMgLmludHJvLXBhcmEge1xuICBwYWRkaW5nOiAyMHB4IDAgMCAwO1xuICAvKiBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdC8vcGFkZGluZzogNTBweCAxMDBweCAwIDEwMHB4O1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDAgMCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IFxyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDAgMCAwO1x0XHRcdFxyXG5cdFx0fSAqLyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub3VyLWRpdmlzaW9ucyAuaW50cm8tcGFyYSB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDAgMCAwOyB9IH1cblxuLm91ci1kaXZpc2lvbnMgLmJpei1ncm91cCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGJvcmRlci10b3A6IDEycHggc29saWQgI2VhZWFlYTsgfVxuICAub3VyLWRpdmlzaW9ucyAuYml6LWdyb3VwOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5vdXItZGl2aXNpb25zIC5iaXotZ3JvdXAgLnBhbmVsIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLm91ci1kaXZpc2lvbnMgLmJpei1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5vdXItZGl2aXNpb25zIC5iaXotZ3JvdXA6bGFzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAub3VyLWRpdmlzaW9ucyAuYml6LWdyb3VwOmxhc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOTBweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLm91ci1kaXZpc2lvbnMgLmJpei1ncm91cDpsYXN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEzMHB4OyB9IH1cblxuLm91ci1kaXZpc2lvbnMgLmJpei1pdGVtIHtcbiAgcGFkZGluZzogMTBweCAwIDQ1cHggMDsgfVxuICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gaDMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7IH1cbiAgLm91ci1kaXZpc2lvbnMgLmJpei1pdGVtIHAge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gcCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gcCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7IH0gfVxuICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gLmJpei1sb2dvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm91ci1kaXZpc2lvbnMgLmJpei1pdGVtIC5iaXotbG9nbyB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSAuYml6LWxvZ28gaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm91ci1kaXZpc2lvbnMgLmJpei1pdGVtIGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSBhOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qCzXCI7XG4gICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgIGNvbG9yOiAjMDBlODYyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSBhOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIu6gs1wiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgY29sb3I6ICMwMGU4NjI7IH0gfVxuICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSBhOmhvdmVyLCAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gYTphY3RpdmUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY29sb3I6ICMyYzJmMmY7IH1cbiAgICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSBhOmhvdmVyOmFmdGVyLCAub3VyLWRpdmlzaW9ucyAuYml6LWl0ZW0gYTphY3RpdmU6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogIzBCODY1MTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5vdXItZGl2aXNpb25zIC5iaXotaXRlbSBhIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSBhbmQgKG1pbi13aWR0aDogNDhlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjkzNzVlbSkge1xuICAub3VyLWRpdmlzaW9ucyAuaW50cm8tcGFyYSB7XG4gICAgcGFkZGluZzogNTBweCAwIDAgMDsgfSB9XG5cbi5hc3gtYW5ub3VuY2UgLnBhZ2UtaW50cm8ge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5hc3gtYW5ub3VuY2UgLmNvbHVtbnMge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYXN4LWFubm91bmNlIC5jb2x1bW5zIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG4uYXN4LWFubm91bmNlIC5hc3gtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjVweDsgfVxuICAuYXN4LWFubm91bmNlIC5hc3gtaGVhZGVyIGgyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcGFkZGluZzogMTVweCAwO1xuICAgIG1hcmdpbjogMDsgfVxuXG4uYXN4LWFubm91bmNlIC5hc3gtcmVzdWx0cyB7XG4gIHBhZGRpbmctYm90dG9tOiA1NXB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmFzeC1hbm5vdW5jZSAuZGF0ZS1ncm91cCBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtcm93OyB9XG4gIC5hc3gtYW5ub3VuY2UgLmRhdGUtZ3JvdXAgbGkgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIuMTg3NWVtOyB9XG4gIC5hc3gtYW5ub3VuY2UgLmRhdGUtZ3JvdXAgbGkgPiBhIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9IH1cblxuLmFzeC1hbm5vdW5jZSBidXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMmMyZjJmO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTVweCA3cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB3aWR0aDogMTUwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hc3gtYW5ub3VuY2UgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDI1cHggN3B4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzJjMmYyZjsgfSB9XG4gIC5hc3gtYW5ub3VuY2UgYnV0dG9uOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxlODA0JztcbiAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlIDA7XG4gICAgLW1vei10cmFuc2l0aW9uOiAwLjVzIGFsbDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IDAuNXMgYWxsO1xuICAgIHRyYW5zaXRpb246IDAuNXMgYWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAwOyB9XG4gIC5hc3gtYW5ub3VuY2UgYnV0dG9uLmFjdGl2ZTphZnRlciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7IH1cbiAgLmFzeC1hbm5vdW5jZSBidXR0b246aG92ZXIsIC5hc3gtYW5ub3VuY2UgYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogIzJjMmYyZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uYXN4LWFubm91bmNlIC5kcm9wZG93bi1wYW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxNTBweDtcbiAgYm9yZGVyOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYXN4LWFubm91bmNlIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgIHdpZHRoOiAxNTBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYXN4LWFubm91bmNlIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgIHdpZHRoOiAxNTBweDsgfSB9XG4gIC5hc3gtYW5ub3VuY2UgLmRyb3Bkb3duLXBhbmUgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMzNjNhNDU7IH1cbiAgICAuYXN4LWFubm91bmNlIC5kcm9wZG93bi1wYW5lIHVsIGxpIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzYzYTQ1O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDsgfVxuICAgICAgLmFzeC1hbm5vdW5jZSAuZHJvcGRvd24tcGFuZSB1bCBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICAgLmFzeC1hbm5vdW5jZSAuZHJvcGRvd24tcGFuZSB1bCBsaSBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDdweDtcbiAgICAgICAgY29sb3I6ICMzNjNhNDU7IH1cbiAgICAgICAgLmFzeC1hbm5vdW5jZSAuZHJvcGRvd24tcGFuZSB1bCBsaSBhOmhvdmVyLCAuYXN4LWFubm91bmNlIC5kcm9wZG93bi1wYW5lIHVsIGxpIGE6YWN0aXZlIHtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMGVtKSB7XG4gIC5hc3gtYW5ub3VuY2UgLmRyb3Bkb3duLXBhbmUge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuYXJ0aWNsZSAubGlzdC1saW5rcyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMCAwIDMwcHggMDsgfVxuICBhcnRpY2xlIC5saXN0LWxpbmtzID4gbGkge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICBhcnRpY2xlIC5saXN0LWxpbmtzID4gbGkgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogOHB4IDA7IH1cbiAgICAgIGFydGljbGUgLmxpc3QtbGlua3MgPiBsaSA+IGEgPiBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7IH1cbiAgICAgIGFydGljbGUgLmxpc3QtbGlua3MgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY29sb3I6ICMwMDA7IH1cblxuYXJ0aWNsZSA+IC5saXN0LWxpbmtzOmZpcnN0LW9mLXR5cGUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzJjMmYyZjsgfVxuXG5hcnRpY2xlID4gLmFjY29yZGlvbiAubGlzdC1saXN0Omxpc3QtbGlua3Mge1xuICBib3JkZXItdG9wOiBub25lOyB9XG5cbi5jb250YWN0ID4gLnJvdyB7XG4gIHBhZGRpbmctdG9wOiAzNXB4OyB9XG5cbi5jb250YWN0IC5ocS1kZXRhaWxzIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS42ZW07XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250YWN0IC5ocS1kZXRhaWxzIHAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmNvbnRhY3QgLmhxLWRldGFpbHMgcCB7XG4gICAgICBsaW5lLWhlaWdodDogMS42ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0IC5ocS1kZXRhaWxzIC5yb3cgLmNvbHVtbiAud3lzaXd5ZywgLmNvbnRhY3QgLmhxLWRldGFpbHMgLnJvdyAuY29sdW1ucyAud3lzaXd5ZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gIC5jb250YWN0IC5ocS1kZXRhaWxzIC5yb3cgLmNvbHVtbiAud3lzaXd5ZywgLmNvbnRhY3QgLmhxLWRldGFpbHMgLnJvdyAuY29sdW1ucyAud3lzaXd5ZyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9IH1cblxuLmNvbnRhY3QgLmhxLWRldGFpbHMgLnd5c2l3eWcge1xuICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRhY3QgLmhxLWRldGFpbHMgLnd5c2l3eWcge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uY29udGFjdCAuaGVybyB7XG4gIG1hcmdpbjogNDVweCAwIDAgMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAyMHB4IDAgMCAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY29udGFjdCAuaGVybyB7XG4gICAgICBtYXJnaW46IDQ1cHggMCAwIDA7IH0gfVxuICAuY29udGFjdCAuaGVybyAuanVtcC1saW5rIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgLmNvbnRhY3QgLmhlcm8gLmp1bXAtbGluayA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuY29udGFjdCAuaGVybyAuanVtcC1saW5rID4gYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgICAuY29udGFjdCAuaGVybyAuanVtcC1saW5rID4gYTphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDE0cHgpO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb250ZW50OiBcIu6gtVwiO1xuICAgICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMTQ7XG4gICAgICAgIGNvbG9yOiAjMDBlODYyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgICAgIC5jb250YWN0IC5oZXJvIC5qdW1wLWxpbmsgPiBhID4gc3BhbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgICAgIC5jb250YWN0IC5oZXJvIC5qdW1wLWxpbmsgPiBhID4gc3Bhbjpob3ZlciwgLmNvbnRhY3QgLmhlcm8gLmp1bXAtbGluayA+IGEgPiBzcGFuOmZvY3VzLCAuY29udGFjdCAuaGVybyAuanVtcC1saW5rID4gYSA+IHNwYW46YWN0aXZlIHtcbiAgICAgICAgICBjb2xvcjogIzJjMmYyZjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIGZpZWxkc2V0ID4gZGl2LFxuLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAuc2ZfY29sc0luID4gZGl2IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi5jb250YWN0IC5zZW5kLW1lc3NhZ2UgbGFiZWwge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgZm9udC1zaXplOiAwLjY4NzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2MTYzNjM7XG4gIHBhZGRpbmctdG9wOiAxNXB4OyB9XG5cbi5jb250YWN0IC5zZW5kLW1lc3NhZ2UgaW5wdXQsXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIHNlbGVjdCB7XG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgb3V0bGluZTogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJjMmYyZjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0OmZvY3VzLFxuICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIHNlbGVjdDpmb2N1cyB7XG4gICAgY29sb3I6ICM2MTYzNjM7XG4gICAgYm9yZGVyLWNvbG9yOiAjNjE2MzYzOyB9XG4gICAgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBpbnB1dDpmb2N1czphZnRlcixcbiAgICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIHNlbGVjdDpmb2N1czphZnRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcGluazsgfVxuICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0Om5vdCg6Zm9jdXMpOmludmFsaWQsXG4gIC5jb250YWN0IC5zZW5kLW1lc3NhZ2Ugc2VsZWN0Om5vdCg6Zm9jdXMpOmludmFsaWQge1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIGJvcmRlci1jb2xvcjogIzYxNjM2MzsgfVxuXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIHNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBzZWxlY3Q6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwi7qCxXCI7XG4gICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgIGZvbnQtc2l6ZTogMTQ7XG4gICAgY29sb3I6ICM2MTYzNjM7IH1cblxuLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAuZXJyb3Ige1xuICBjb2xvcjogI2VjNjcxYzsgfVxuICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIC5lcnJvciBsYWJlbCB7XG4gICAgY29sb3I6ICNlYzY3MWM7IH1cbiAgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAuZXJyb3IgaW5wdXQge1xuICAgIGNvbG9yOiAjZWM2NzFjO1xuICAgIGJvcmRlci1jb2xvcjogI2VjNjcxYzsgfVxuICAgIC5jb250YWN0IC5zZW5kLW1lc3NhZ2UgLmVycm9yIGlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgICAgIGNvbG9yOiAjZWM2NzFjO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjZWM2NzFjOyB9XG5cbi5jb250YWN0IC5zZW5kLW1lc3NhZ2UgaW5wdXRbdHlwZT0ndGV4dCddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J3Bhc3N3b3JkJ10sIC5jb250YWN0IC5zZW5kLW1lc3NhZ2UgaW5wdXRbdHlwZT0nZGF0ZSddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sIC5jb250YWN0IC5zZW5kLW1lc3NhZ2UgaW5wdXRbdHlwZT0nZGF0ZXRpbWUtbG9jYWwnXSwgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBpbnB1dFt0eXBlPSdtb250aCddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J3dlZWsnXSwgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBpbnB1dFt0eXBlPSdlbWFpbCddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J251bWJlciddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J3NlYXJjaCddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J3RlbCddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIGlucHV0W3R5cGU9J3RpbWUnXSwgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBpbnB1dFt0eXBlPSd1cmwnXSwgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSBpbnB1dFt0eXBlPSdjb2xvciddLCAuY29udGFjdCAuc2VuZC1tZXNzYWdlIHRleHRhcmVhIHtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIHRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogMzk1cHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgbGluZS1oZWlnaHQ6IDEuM2VtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIHRleHRhcmVhIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIC5idG4tc3VibWl0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmbG9hdDogbGVmdDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAuYnRuLXN1Ym1pdCB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuXG4uY29udGFjdCAuc2VuZC1tZXNzYWdlIC50bmMge1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07XG4gIHBhZGRpbmc6IDM1cHggMDsgfVxuICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIC50bmMgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIC50bmMgYTpob3ZlciwgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAudG5jIGE6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmNvbnRhY3QgLnNlbmQtbWVzc2FnZSAudG5jIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIC50bmMgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB+IHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7IH1cbiAgICAuY29udGFjdCAuc2VuZC1tZXNzYWdlIC50bmMgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB+IHNwYW46YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IC45ZW07XG4gICAgICBjb250ZW50OiBcIu6gt1wiO1xuICAgICAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xuICAgICAgZm9udC1zaXplOiAxLjU2MjVlbTtcbiAgICAgIGNvbG9yOiAjNjE2MzYzOyB9XG4gIC5jb250YWN0IC5zZW5kLW1lc3NhZ2UgLnRuYyBpbnB1dFt0eXBlPSdjaGVja2JveCddOmNoZWNrZWQgfiBzcGFuOmJlZm9yZSB7XG4gICAgcGFkZGluZy1yaWdodDogLjllbTtcbiAgICBjb250ZW50OiBcIu6gtlwiOyB9XG5cbi5jb250YWN0IC5idXNpbmVzcy1jb250YWN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7XG4gIG1hcmdpbi10b3A6IDM1cHg7IH1cblxuLmNvbnRhY3QgLmNvbnRhY3QtaXRlbSB7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2FjYmNiO1xuICBmb250LXNpemU6IDAuODc1ZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250YWN0IC5jb250YWN0LWl0ZW0ge1xuICAgICAgZm9udC1zaXplOiAwLjc1ZW07IH0gfVxuICAuY29udGFjdCAuY29udGFjdC1pdGVtOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDsgfVxuICAuY29udGFjdCAuY29udGFjdC1pdGVtIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNGVtO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmNvbnRhY3QgLmNvbnRhY3QtaXRlbSBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNGVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5jb250YWN0IC5jb250YWN0LWl0ZW0gLmNvbHVtbnMge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIC5jb250YWN0IC5jb250YWN0LWl0ZW0gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cblxuLmNvbnRhY3QgLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7IH1cblxuLmNvbnRhY3QgLmFjY29yZGlvbi1jb250ZW50ID4gLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7IH1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW06YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjY2FjYmNiO1xuICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgICAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICdcXGU4MDQnO1xuICAgICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMzclIDA7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwO1xuICAgICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogNTAlIDM3JSAwO1xuICAgICAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMzclIDA7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSAzNyUgMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICAgIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgPiBoMiwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSA+IGgzIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LWZhbWlseTogJ0hldXJpc3RpY2EnO1xuICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW06aG92ZXIgLmFjY29yZGlvbi10aXRsZSwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW06Zm9jdXMgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAjMmMyZjJmO1xuICAgICAgY29sb3I6ICMyYzJmMmY7IH1cbiAgICAgIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtOmhvdmVyIC5hY2NvcmRpb24tdGl0bGUgPiBoMiwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW06aG92ZXIgLmFjY29yZGlvbi10aXRsZSA+IGgzLCAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbTpmb2N1cyAuYWNjb3JkaW9uLXRpdGxlID4gaDIsIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtOmZvY3VzIC5hY2NvcmRpb24tdGl0bGUgPiBoMyB7XG4gICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzJjMmYyZjsgfVxuICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUgPiBoMiwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGUgPiBoMyB7XG4gICAgICAgIGNvbG9yOiAjMmMyZjJmOyB9XG4gICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5saXN0LWNvbHVtbnMge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5saXN0LWNvbHVtbnMgPiBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgICAgICAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmxpc3QtY29sdW1ucyA+IGxpOmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5saXN0LWNvbHVtbnMgPiBsaSB7XG4gICAgICAgICAgICB3aWR0aDogNDkuNTU1NSU7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5saXN0LWNvbHVtbnMgPiBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMzIuMjIyMiU7IH0gfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAgICAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5saXN0LWNvbHVtbnMgPiBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMzIuMjIyMiU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgZm9udC1zaXplOiAxLjBlbTsgfVxuICAgIC5hY2NvcmRpb24tY29udGVudCBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4wZW07IH1cbiAgICAuYWNjb3JkaW9uLWNvbnRlbnQgbGkge1xuICAgICAgZm9udC1zaXplOiAxLjBlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSA+IGgyLCAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlID4gaDMge1xuICAgIGZvbnQtc2l6ZTogMS41NjI1ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgPiBoMiwgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSA+IGgzIHtcbiAgICBmb250LXNpemU6IDEuNjI1ZW07IH0gfVxuXG4ubmV3cy1tZWRpYSAucGFuZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRleHQtb25seSA+IGE6aG92ZXIgLmltYWdlOmJlZm9yZSxcbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRleHQtb25seSBhOmZvY3VzIC5pbWFnZTpiZWZvcmUsIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyID4gYTpob3ZlciAuaW1hZ2U6YmVmb3JlLFxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciBhOmZvY3VzIC5pbWFnZTpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRleHQtb25seSA+IGE6aG92ZXIgLmltYWdlIGltZyxcbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRleHQtb25seSBhOmZvY3VzIC5pbWFnZSBpbWcsIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyID4gYTpob3ZlciAuaW1hZ2UgaW1nLFxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciBhOmZvY3VzIC5pbWFnZSBpbWcge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwgLnRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgyLFxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbCAudGl0bGUgPiBoMyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XG4gICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAwMzEzZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwgLmltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC5pbWFnZSA+IGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwgLmNvcHkge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwgLmNvcHkgcCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7IH1cblxuLm5ld3MtbWVkaWEgLnBhbmVsLnRvcC1sZXZlbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYzJmMmY7IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRvcC1sZXZlbCAudGl0bGUgPiBoMixcbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRvcC1sZXZlbCAudGl0bGUgPiBoMyB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmYyZjsgfVxuXG4ubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAuaW1hZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC50d2l0dGVyLXBhbmVsIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCAuZGF0ZS10aW1lIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgTWVkaXVtJzsgfVxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC50d2l0dGVyLXBhbmVsIHAge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDAuOTM3NWVtOyB9XG4gICAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCBwID4gYSB7XG4gICAgICAgIG1hcmdpbjogMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzLW1lZGlhIC5sYXJnZS1leHBhbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgNTAlO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBtaW4taGVpZ2h0OiBhdXRvOyB9XG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsID4gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbCAudGl0bGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTsgfVxuICAgICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgyLFxuICAgICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbCAuaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2VhZWFlYTsgfVxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbC50b3AtbGV2ZWwgLnRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyYzJmMmY7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhOyB9XG4gICAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7IH1cbiAgICAgICAgLm5ld3MtbWVkaWEgLnBhbmVsLnR3aXR0ZXIgLnR3aXR0ZXItcGFuZWwgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtOyB9XG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC5jb3B5IHtcbiAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCAjMDBlODYyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubmV3cy1tZWRpYSAubGFyZ2UtZXhwYW5kIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIDMzLjMzMzMlOyB9XG4gIC5uZXdzLW1lZGlhIC5wYW5lbCAudGl0bGUge1xuICAgIG1pbi1oZWlnaHQ6IDEzMHB4OyB9XG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgyLFxuICAgIC5uZXdzLW1lZGlhIC5wYW5lbCAudGl0bGUgPiBoMyB7XG4gICAgICBmb250LXNpemU6IDEuMzEyNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAubmV3cy1tZWRpYSAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDc1cHg7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudGV4dC1vbmx5IC50aXRsZSwgLm5ld3MtbWVkaWEgLnBhbmVsLnR3aXR0ZXIgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAuaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC5pbWFnZSA+IGltZyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSB7XG4gICAgbWluLWhlaWdodDogMTYwcHg7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwgLnRpdGxlID4gaDIsXG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1ZW07IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnRleHQtb25seSAudGl0bGUsIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCBwIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSB7XG4gICAgbWluLWhlaWdodDogMTkwcHg7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwgLnRpdGxlID4gaDIsXG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsIC50aXRsZSA+IGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAyOXB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMjlweDsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCBwIHtcbiAgICBmb250LXNpemU6IDEuMDYyNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzBlbSkge1xuICAubGFyZ2UtZXhwYW5kIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDsgfVxuICAgIC5sYXJnZS1leHBhbmQgLnBhbmVsID4gYSB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTM3NWVtKSB7XG4gIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC50aXRsZSA+IHAge1xuICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gIC5uZXdzLW1lZGlhIC5wYW5lbC50d2l0dGVyIC50aXRsZSA+IGgyIHtcbiAgICBib3R0b206IGF1dG87IH1cbiAgLm5ld3MtbWVkaWEgLnBhbmVsLnR3aXR0ZXIgLnR3aXR0ZXItcGFuZWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDgwcHg7IH1cbiAgICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAudHdpdHRlci1wYW5lbCA+IHAge1xuICAgICAgZm9udC1zaXplOiAwLjkzNzVlbTsgfVxuICAubmV3cy1tZWRpYSAucGFuZWwudHdpdHRlciAuaW1hZ2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuLnF1b3RlLWludHJvLFxuLnF1b3RlLWludHJvID4gcCB7XG4gIGZvbnQtZmFtaWx5OiAnSGV1cmlzdGljYSc7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBjb2xvcjogIzJjMmYyZjtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBsaW5lLWhlaWdodDogMS4yOyB9XG5cbi5xdW90ZS1pbnRybyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1heC13aWR0aDogbm9uZTsgfVxuICAucXVvdGUtaW50cm8gPiBwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA5ODBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLnF1b3RlLWludHJvID4gcCA+IHNwYW4ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjsgfVxuICAgIC5xdW90ZS1pbnRybyA+IHAgPiBzcGFuOmZpcnN0LW9mLXR5cGUsXG4gICAgLnF1b3RlLWludHJvID4gcCA+IHNwYW46bGFzdC1vZi10eXBlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjsgfVxuICAgIC5xdW90ZS1pbnRybyA+IHAgPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29sb3I6ICMwMGU4NjI7XG4gICAgICBmb250LXNpemU6IDUwcHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyOCUsIDE0JSk7IH1cbiAgICAucXVvdGUtaW50cm8gPiBwID4gc3BhbjpsYXN0LW9mLXR5cGUge1xuICAgICAgY29sb3I6ICM2MTYzNjM7IH1cbiAgLnF1b3RlLWludHJvID4gYiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogOTgwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAucXVvdGUtaW50cm8gPiBiOmJlZm9yZSB7XG4gICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAjMDBlODYyO1xuICAgIGZvbnQtc2l6ZTogMy40Mzc1ZW07XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMTUlLCAyMCUpO1xuICAgIGNvbnRlbnQ6IFwiXFwyMDFDXCI7IH1cbiAgLnF1b3RlLWludHJvID4gYjphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xuICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7IH1cbiAgLnF1b3RlLWludHJvID4gY2l0ZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICBsaW5lLWhlaWdodDogLjk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICM2NDY0NjQ7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTsgfVxuICAgIC5xdW90ZS1pbnRybyA+IGNpdGU6YmVmb3JlLCAucXVvdGUtaW50cm8gPiBjaXRlOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAucXVvdGUtaW50cm8ge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucXVvdGUtaW50cm8ge1xuICAgIGZvbnQtc2l6ZTogMS4zMTI1ZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5xdW90ZS1pbnRybyB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBmb250LXNpemU6IDEuNDA2MjVlbTsgfVxuICAgIC5xdW90ZS1pbnRybyA+IGNpdGUge1xuICAgICAgZm9udC1zaXplOiAxNHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAucXVvdGUtaW50cm8ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgZm9udC1zaXplOiAxLjg3NWVtOyB9XG4gICAgLnF1b3RlLWludHJvID4gcCA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBmb250LXNpemU6IDc1cHg7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMCUsIDE0JSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAucXVvdGUtaW50cm8ge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgZm9udC1zaXplOiAxLjg3NWVtOyB9XG4gICAgLnF1b3RlLWludHJvID4gcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzNXB4OyB9XG4gICAgICAucXVvdGUtaW50cm8gPiBwID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMTBweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzIlLCAxOCUpOyB9XG4gICAgLnF1b3RlLWludHJvID4gY2l0ZSB7XG4gICAgICBmb250LXNpemU6IDE1cHg7IH0gfVxuXG4uZGF0ZS1ncm91cCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmMyZjJmO1xuICBwYWRkaW5nOiA3cHggMCAzMHB4IDA7IH1cbiAgLmRhdGUtZ3JvdXAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmRhdGUtZ3JvdXAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gICAgLmRhdGUtZ3JvdXAgdWwgPiBsaSB7XG4gICAgICBwYWRkaW5nOiA1cHggMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjhlbTsgfVxuICAgICAgLmRhdGUtZ3JvdXAgdWwgPiBsaSA+IHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgICAuZGF0ZS1ncm91cCB1bCA+IGxpID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxNSU7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgIC5kYXRlLWdyb3VwIHVsID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7IH1cbiAgICAgICAgLmRhdGUtZ3JvdXAgdWwgPiBsaSA+IGE6aG92ZXIsIC5kYXRlLWdyb3VwIHVsID4gbGkgPiBhOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgICAgLmRhdGUtZ3JvdXAgdWwgPiBsaSA+IGEgPiBzbWFsbCxcbiAgICAgICAgLmRhdGUtZ3JvdXAgdWwgPiBsaSA+IGEgPiBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgICAgICAgIGNvbG9yOiAjNjE2MzYzOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmRhdGUtZ3JvdXAgdWwgPiBsaSAuZXZlbnQtdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA2MCU7IH1cbiAgLmRhdGUtZ3JvdXAgdWwgPiBsaSA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuZGF0ZS1ncm91cCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZGF0ZS1ncm91cCB1bCA+IGxpID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAuZGF0ZS1ncm91cCBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfVxuICAuZGF0ZS1ncm91cCB1bCA+IGxpIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAgIC5kYXRlLWdyb3VwIHVsID4gbGkgPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLnJvdy1pbnRybyB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLnJvdy1pbnRybyBwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMWVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAucm93LWludHJvIHAge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm93LWludHJvIHAge1xuICAgICAgZm9udC1zaXplOiAxLjEyNWVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5yb3ctaW50cm8gcCB7XG4gICAgICBmb250LXNpemU6IDEuMjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAucm93LWludHJvIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gICAgICAucm93LWludHJvIHAge1xuICAgICAgICBmb250LXNpemU6IDEuMzc1ZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTguNzVlbSkge1xuICAgIC5yb3ctaW50cm8ge1xuICAgICAgcGFkZGluZzogMCA0MHB4OyB9XG4gICAgICAucm93LWludHJvIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtOyB9IH1cblxuLmZlYXR1cmUtcG9kcyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiA2MHB4IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2FjYmNiOyB9XG4gIC5mZWF0dXJlLXBvZHMgPiBoMiwgLmZlYXR1cmUtcG9kcyA+IGgzIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAyMHB4IDA7IH1cbiAgLmZlYXR1cmUtcG9kcyA+IGgyIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIExpZ2h0XCI7XG4gICAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gIC5mZWF0dXJlLXBvZHMgPiAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgLmZlYXR1cmUtcG9kcyAucGFuZWwgPiBhOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZlYXR1cmUtcG9kcyB7XG4gICAgbWFyZ2luOiA2MHB4IDAgMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmUtcG9kcyB7XG4gICAgbWFyZ2luOiA2MHB4IDYuMjVlbSAwOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuZmVhdHVyZS1wb2RzIHtcbiAgICBtYXJnaW46IDkwcHggYXV0byAwOyB9IH1cblxuLmtleS1kYXRlcyAuZGF0ZS1ncm91cCB1bCBsaSB7XG4gIHBhZGRpbmc6IDdweCAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2JjYjsgfVxuXG4ua2V5LWRhdGVzIGEuc2V0LWljcyB7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzk2OTc5NztcbiAgZmxvYXQ6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAua2V5LWRhdGVzIGEuc2V0LWljczpob3ZlciB7XG4gICAgY29sb3I6ICMwQjg2NTE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAua2V5LWRhdGVzIGEuc2V0LWljcyB7XG4gICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmtleS1kYXRlcyBhLnNldC1pY3Mge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAua2V5LWRhdGVzIC5kYXRlLWdyb3VwIGEuc2V0LWljcyB7XG4gICAgZm9udC1zaXplOiAwLjYyNWVtO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5rZXktZGF0ZXMgLmRhdGUtZ3JvdXAgYS5zZXQtaWNzIHtcbiAgICBmb250LXNpemU6IDAuNjI1ZW07XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDExOC43NWVtKSB7XG4gIC5rZXktZGF0ZXMgLmRhdGUtZ3JvdXAgYS5zZXQtaWNzIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9IH1cblxuLnN1YnNjcmliZSB7XG4gIC8qIHN1cGVyIHNwZWNpZmljIG1lZGlhIHF1ZXJ5IHRvIGFkZCBwYWRkaW5nIHRvIGNvbnRlbnQgY29sdW1uIGluIGxhbmRzY2FwZSBtb2RlICovIH1cbiAgLnN1YnNjcmliZSAuaW50cm8ge1xuICAgIHBhZGRpbmctdG9wOiAzNXB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnN1YnNjcmliZSAuaW50cm8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDsgfSB9XG4gIC5zdWJzY3JpYmUgaW5wdXQge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjYWNiY2I7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7IH1cbiAgICAuc3Vic2NyaWJlIGlucHV0OmhvdmVyLCAuc3Vic2NyaWJlIGlucHV0OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5zdWJzY3JpYmUgaW5wdXRbdHlwZT0ndGV4dCddLCAuc3Vic2NyaWJlIGlucHV0W3R5cGU9J2VtYWlsJ10ge1xuICAgIHBhZGRpbmc6IDMwcHggMjBweDsgfVxuICAuc3Vic2NyaWJlIGlucHV0OmludmFsaWQge1xuICAgIGNvbG9yOiAjZWM2NzFjO1xuICAgIGJvcmRlci1jb2xvcjogI2VjNjcxYzsgfVxuICAuc3Vic2NyaWJlIGlucHV0OmZvY3VzOmludmFsaWQge1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIGJvcmRlci1jb2xvcjogIzYxNjM2MzsgfVxuICAuc3Vic2NyaWJlIGlucHV0Om5vdCg6Zm9jdXMpOmludmFsaWQge1xuICAgIGNvbG9yOiAjNjE2MzYzO1xuICAgIGJvcmRlci1jb2xvcjogIzYxNjM2MzsgfVxuICAuc3Vic2NyaWJlIC5idG4tc3VibWl0IHtcbiAgICBmbG9hdDogbGVmdDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5zdWJzY3JpYmUgLmJ0bi1zdWJtaXQge1xuICAgICAgICBmbG9hdDogcmlnaHQ7IH0gfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gICAgLnN1YnNjcmliZSAubGFyZ2UtY29sbGFwc2UgLmNvbHVtbnMge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9IH1cblxuLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAzNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcbiAgLyogc3VwZXIgc3BlY2lmaWMgbWVkaWEgcXVlcnkgdG8gYWRkIHBhZGRpbmcgdG8gY29udGVudCBjb2x1bW4gaW4gbGFuZHNjYXBlIG1vZGUgKi8gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIHN1cCwgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIHN1YiB7XG4gICAgZm9udC1zaXplOiAwLjc1ZW07IH1cbiAgICAuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24gc3VwOmJlZm9yZSwgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIHN1YjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgXCI7IH1cbiAgICAuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24gc3VwOmFmdGVyLCAuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24gc3ViOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiOyB9XG4gIC5jb250ZW50LXBhZ2UuaW52ZXN0b3Itc2VjdGlvbiAucmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5jb250ZW50LXBhZ2UuaW52ZXN0b3Itc2VjdGlvbiAubm90ZXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9XG4gICAgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIC5ub3RlcyA+IHAge1xuICAgICAgZm9udC1zaXplOiAwLjg3NWVtICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDdweDsgfVxuICAgIC5jb250ZW50LXBhZ2UuaW52ZXN0b3Itc2VjdGlvbiAubm90ZXMgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzJjMmYyZjsgfVxuICAgICAgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIC5ub3RlcyBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzBCODY1MTsgfVxuICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gICAgLmNvbnRlbnQtcGFnZS5pbnZlc3Rvci1zZWN0aW9uIC5sYXJnZS1jb2xsYXBzZSAuY29sdW1ucyB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07IH1cbiAgICAuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24gLnJlbGF0ZWQtY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgICAuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24gLnd5c2l3eWcge1xuICAgICAgZm9udC1zaXplOiAxZW07IH0gfVxuXG4udGltZWxpbmUtcGFuZWwge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmctdG9wLWxlZnQucG5nXCIpIGxlZnQgdG9wIG5vLXJlcGVhdCwgdXJsKFwiLi4vaW1nL2JnLWJ0bS1yaWdodC0wMS5zdmdcIikgYm90dG9tIHJpZ2h0IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJjMmYyZjtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4jd2VzVGltZWxpbmUge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDsgfVxuICAjd2VzVGltZWxpbmUgLnllYXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMTQwcHg7IH1cbiAgICAjd2VzVGltZWxpbmUgLnllYXI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgI3dlc1RpbWVsaW5lIC55ZWFyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIHtcbiAgICAgICAgbWFyZ2luOiAwIC0zMHB4OyB9IH1cbiAgICAjd2VzVGltZWxpbmUgLnllYXIgLm1pZGxpbmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDZweDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJhY2tncm91bmQ6ICM0YjRjNGM7XG4gICAgICBtYXJnaW4tbGVmdDogLTNweDtcbiAgICAgIHotaW5kZXg6IDA7IH1cbiAgICAjd2VzVGltZWxpbmUgLnllYXIgLnlsYWJlbCB7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgZm9udC1zaXplOiAxLjQzNzVlbTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgbGluZS1oZWlnaHQ6IDEyMHB4O1xuICAgICAgYmFja2dyb3VuZDogIzE0ZGM2NjtcbiAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogODAlO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgICBib3JkZXItcmFkaXVzOiA4MCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDYwcHgpO1xuICAgICAgei1pbmRleDogNTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLnlsYWJlbCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07IH0gfVxuICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC55bGFiZWwuZml4ZWQge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgei1pbmRleDogNTsgfVxuICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkge1xuICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IHtcbiAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH0gfVxuICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IC53cmFwcGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAzMHB4OyB9IH1cbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXI6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IC53cmFwcGVyOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IC53cmFwcGVyOmJlZm9yZSB7XG4gICAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICAgICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgICAgICAgICAtbW96LW9wYWNpdHk6IDA7XG4gICAgICAgICAgLWtodG1sLW9wYWNpdHk6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIgLmltYWdlOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuaW1hZ2U6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIgLmltYWdlIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIgLmltYWdlLnZpZGVvIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuaW1hZ2UudmlkZW86YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIgLmltYWdlLnZpZGVvOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIgLmltYWdlLnZpZGVvOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1nL2ljb25zL2ljb24tcGxheS5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgICAgICAgICAgIHdpZHRoOiA0M3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgICAgei1pbmRleDogMjsgfVxuICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuY29weSB7XG4gICAgICAgICAgcGFkZGluZzogMTVweCAxNXB4IDMwcHggMTVweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuY29weSAudGFnLCAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuY29weSAuZGF0ZSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42ODc1ZW07XG4gICAgICAgICAgICBjb2xvcjogIzk2OTc5NzsgfVxuICAgICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IC53cmFwcGVyIC5jb3B5IC5kYXRlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGxlZnQ6IDE1cHg7IH1cbiAgICAgICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheSAud3JhcHBlciAuY29weSBoMiB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTBweCAwO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6ICMyYzJmMmY7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7IH1cbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIubm8taW1hZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi4vaW1nL2ljb25zL2ljb24taGlzdG9yeS1iZy5wbmdcIikgbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbTsgfVxuICAgICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5IC53cmFwcGVyLm5vLWltYWdlIC5jb3B5IHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkgLndyYXBwZXIubm8taW1hZ2UgLmNvcHkgaDIge1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgcGFkZGluZzogNjBweCAwOyB9XG4gICAgICAjd2VzVGltZWxpbmUgLnllYXIgLmRheTpob3ZlciAud3JhcHBlcjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMmMyZjJmO1xuICAgICAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTMzKVwiO1xuICAgICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MzMpO1xuICAgICAgICAtbW96LW9wYWNpdHk6IC4zMztcbiAgICAgICAgLWtodG1sLW9wYWNpdHk6IC4zMztcbiAgICAgICAgb3BhY2l0eTogLjMzO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5OmhvdmVyIC53cmFwcGVyOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoXCIuLi9pbWcvaWNvbnMvaWNvbi1oaXN0b3J5LWFycm93LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgICB3aWR0aDogMTZweDtcbiAgICAgICAgaGVpZ2h0OiAzMXB4O1xuICAgICAgICB6LWluZGV4OiA0OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgICN3ZXNUaW1lbGluZSAueWVhciAuZGF5LmNlbnRlci1sZWZ0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjUlOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyIC5kYXkuY2VudGVyLXJpZ2h0IHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNTAlOyB9IH1cbiAgICAjd2VzVGltZWxpbmUgLnllYXI6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7IH1cbiAgICAgICN3ZXNUaW1lbGluZSAueWVhcjpsYXN0LW9mLXR5cGUgLm1pZGxpbmUge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyLnNob3ctYWxsIC5kYXkuY2VudGVyLWxlZnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgI3dlc1RpbWVsaW5lIC55ZWFyLnNob3ctYWxsIC5kYXkuY2VudGVyLXJpZ2h0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG4udGltZWxpbmUtZmlsdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIG1hcmdpbjogMCBhdXRvOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XG4gICAgLnRpbWVsaW5lLWZpbHRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTgwcHgpIHtcbiAgICAudGltZWxpbmUtZmlsdGVyIHtcbiAgICAgIHBhZGRpbmc6IDUwcHggMDsgfSB9XG4gIC50aW1lbGluZS1maWx0ZXIgc3BhbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnRpbWVsaW5lLWZpbHRlciBzcGFuIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOHB4OyB9IH1cbiAgLnRpbWVsaW5lLWZpbHRlciBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgY29sb3I6ICNlNmU2ZTY7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMCAwIDZweDtcbiAgICBiYWNrZ3JvdW5kOiAjNTY1NzU3OyB9XG4gICAgLnRpbWVsaW5lLWZpbHRlciBhLmFjdGl2ZSwgLnRpbWVsaW5lLWZpbHRlciBhOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMwMGU5NjM7XG4gICAgICBjb2xvcjogIzMzMzIzMTsgfVxuXG4ubWJsLXRpbWVsaW5lLWZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTVweCAwO1xuICBtYXJnaW46IDAgYXV0bzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkge1xuICAgIC5tYmwtdGltZWxpbmUtZmlsdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTgwcHgpIHtcbiAgICAubWJsLXRpbWVsaW5lLWZpbHRlciB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDA7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1ibC10aW1lbGluZS1maWx0ZXIgc3BhbiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDsgfVxuICAubWJsLXRpbWVsaW5lLWZpbHRlciBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDhweCAzMHB4IDEwcHggMTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIGNvbG9yOiAjMWQxZDFkO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKlJlbW92ZXMgZGVmYXVsdCBjaHJvbWUgYW5kIHNhZmFyaSBzdHlsZSovXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIFJlbW92ZXMgRGVmYXVsdCBGaXJlZm94IHN0eWxlKi9cbiAgICBiYWNrZ3JvdW5kOiAjMDBlOTYzIHVybCguLi9pbWcvaWNvbnMvaWNvbi1kZC1hcnJvdy5wbmcpIG5vLXJlcGVhdDtcbiAgICAvKkFkZHMgYmFja2dyb3VuZC1pbWFnZSovXG4gICAgYmFja2dyb3VuZC1zaXplOiAxM3B4IDhweDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxNnB4IHRvcCAxNnB4O1xuICAgIC8qUG9zaXRpb24gb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UqL1xuICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gICAgLyogUmVtb3ZlcyBkZWZhdWx0IGFycm93IGZyb20gZmlyZWZveCovXG4gICAgdGV4dC1vdmVyZmxvdzogXCJcIjtcbiAgICAvKlJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1xuICAgIGhlaWdodDogNDBweDtcbiAgICBtaW4td2lkdGg6IDA7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDFlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5tYmwtdGltZWxpbmUtZmlsdGVyIHNlbGVjdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVlbTsgfSB9XG4gICAgLm1ibC10aW1lbGluZS1maWx0ZXIgc2VsZWN0OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDA7IH1cbiAgLm1ibC10aW1lbGluZS1maWx0ZXIgc2VsZWN0OjotbXMtZXhwYW5kIHtcbiAgICAvKmllMTEgZ2V0IHJpZCBvZiBkZWZhdWx0IGRkIGFycm93Ki9cbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi50aW1lbGluZS1pbnRybyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50aW1lbGluZS1pbnRybyB7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG4gIC50aW1lbGluZS1pbnRybyBwIHtcbiAgICBmb250LXNpemU6IDEuMDYyNWVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnRpbWVsaW5lLWludHJvIHAge1xuICAgICAgICBmb250LXNpemU6IDEuNWVtOyB9IH1cblxuLm1lZGlhLWdhbGxlcnkge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIHdpZHRoOiA5MCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tZWRpYS1nYWxsZXJ5IHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdhbGxlcnktd3JhcHBlciB7XG4gIGJvcmRlci10b3A6IHNvbGlkIDFweCAjOTY5Nzk3O1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgd2lkdGg6IGF1dG87IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5nYWxsZXJ5LXdyYXBwZXIge1xuICAgICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ2FsbGVyeS13cmFwcGVyIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMDI0cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmdhbGxlcnktd3JhcHBlciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogMTQ1MHB4OyB9IH1cbiAgLmdhbGxlcnktd3JhcHBlciBoMiwgLmdhbGxlcnktd3JhcHBlciBoMyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmdhbGxlcnktd3JhcHBlciBoMiwgLmdhbGxlcnktd3JhcHBlciBoMyB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDsgfSB9XG4gIC5nYWxsZXJ5LXdyYXBwZXIgaDIgKyBoMyB7XG4gICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgaDIgKyBoMyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4OyB9IH1cbiAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCB7XG4gICAgbWFyZ2luOiAwIC01cHggMjBweCAtNXB4OyB9XG4gICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDYwcHggMDsgfSB9XG4gICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpOm50aC1jaGlsZCgybisxKSB7XG4gICAgICAgIGNsZWFyOiBsZWZ0OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGkge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgICBmbG9hdDogbGVmdDsgfVxuICAgICAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGk6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICAgICAgICAgIGNsZWFyOiBub25lOyB9XG4gICAgICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaTpudGgtY2hpbGQoNW4rMSkge1xuICAgICAgICAgICAgY2xlYXI6IGxlZnQ7IH0gfVxuICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaSA+IGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAxNXB4IDVweCAwIDVweDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGkgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpID4gYTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaSA+IGEge1xuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IDE1cHggMCAxNXB4OyB9IH1cbiAgICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaSA+IGEgLmltYWdlIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgICAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGkgPiBhIC5pbWFnZTpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpID4gYSAuaW1hZ2U6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpID4gYSAuaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMmMyZjJmO1xuICAgICAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xuICAgICAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgICAgICAgICAgLW1vei1vcGFjaXR5OiAwO1xuICAgICAgICAgICAgLWtodG1sLW9wYWNpdHk6IDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpID4gYSAuaW1hZ2UgPiBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGkgPiBhIC5pbWFnZS52aWRlbzphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgICAgICAgd2lkdGg6IDU2cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgICB0b3A6IGNhbGMoNTAlIC0gMjhweCk7XG4gICAgICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtIDI4cHgpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vaW1nL2ljb25zL2ljb24tdmlkLXBsYXkucG5nXCIpIG5vLXJlcGVhdCAwIDA7IH1cbiAgICAgICAgLmdhbGxlcnktd3JhcHBlciAubWctZ3JpZCBsaSA+IGEgLnRhZyB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMCAwIDA7IH1cbiAgICAgIC5nYWxsZXJ5LXdyYXBwZXIgLm1nLWdyaWQgbGkub2ctZXhwYW5kZWQgPiBhOmFmdGVyIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzJjMmYyZjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAxMnB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIG1hcmdpbjogLTEycHggMCAwIC0xMnB4OyB9XG4gICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpOmhvdmVyID4gYSAuaW1hZ2U6YmVmb3JlIHtcbiAgICAgICAgLW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0zMylcIjtcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTMzKTtcbiAgICAgICAgLW1vei1vcGFjaXR5OiAuMzM7XG4gICAgICAgIC1raHRtbC1vcGFjaXR5OiAuMzM7XG4gICAgICAgIG9wYWNpdHk6IC4zMztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAuZ2FsbGVyeS13cmFwcGVyIC5tZy1ncmlkIGxpOmhvdmVyID4gYSAuaW1hZ2UgPiBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7IH1cblxuLm9nLWV4cGFuZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAjMmMyZjJmO1xuICB0b3A6IGF1dG87XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9nLWV4cGFuZGVyLWlubmVyIHtcbiAgcGFkZGluZzogNTBweCAyMHB4IDIwcHggMjBweDtcbiAgaGVpZ2h0OiAxMDAlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub2ctZXhwYW5kZXItaW5uZXIge1xuICAgICAgcGFkZGluZzogNTBweCAzMHB4OyB9IH1cblxuLm9nLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjVweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICB0b3A6IDE1cHg7XG4gIHJpZ2h0OiAxNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLm9nLWNsb3NlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAub2ctY2xvc2U6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5vZy1jbG9zZSB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIHRvcDogMjBweDtcbiAgICAgIHJpZ2h0OiAyMHB4OyB9IH1cbiAgLm9nLWNsb3NlOmJlZm9yZSwgLm9nLWNsb3NlOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogIzg4ODtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgLW1zLXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0OyB9XG4gIC5vZy1jbG9zZTphZnRlciB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpOyB9XG4gIC5vZy1jbG9zZTpob3ZlcjpiZWZvcmUsIC5vZy1jbG9zZTpob3ZlcjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vZy1mdWxsaW1nLFxuICAub2ctZGV0YWlscyB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG4ub2ctZGV0YWlscyB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5vZy1kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDAgNDBweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub2ctZGV0YWlscyB7XG4gICAgICBwYWRkaW5nOiAwIDgwcHg7IH0gfVxuXG4ub2ctZnVsbGltZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5vZy1mdWxsaW1nIGltZyB7XG4gICAgICBtYXgtd2lkdGg6IDc1JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAub2ctZnVsbGltZyBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlOyB9IH1cblxuLm9nLWRldGFpbHM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5vZy1kZXRhaWxzOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5vZy1kZXRhaWxzIGgzIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjY2NjY3ZW07XG4gIGZvbnQtZmFtaWx5OiBIZXVyaXN0aWNhO1xuICBwYWRkaW5nOiAyMHB4IDAgMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgY29sb3I6ICNmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5vZy1kZXRhaWxzIGgzIHtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCAxMHB4OyB9IH1cblxuLm9nLWRldGFpbHMgcCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LWZhbWlseTogSGV1cmlzdGljYTtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLm9nLWRldGFpbHMgcC5kZXNjcmlwdGlvbiB7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM5Njk3OTc7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAub2ctZGV0YWlscyBwLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHg7IH0gfVxuICAub2ctZGV0YWlscyBwLmZpbGVuYW1lIHtcbiAgICBjb2xvcjogIzk2OTc5NztcbiAgICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC43Nzc3OGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjc3Nzc4ZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLm9nLWRldGFpbHMgcC5maWxlbmFtZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWF4LXdpZHRoOiA0OSU7IH0gfVxuXG4ub2ctZGV0YWlscyBhLmZpbGVzaXplIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb29rJywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC43Nzc3OGVtO1xuICBsaW5lLWhlaWdodDogMC43Nzc3OGVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAxNTBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub2ctZGV0YWlscyBhLmZpbGVzaXplIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIG1heC13aWR0aDogNDklOyB9IH1cbiAgLm9nLWRldGFpbHMgYS5maWxlc2l6ZTpob3ZlciwgLm9nLWRldGFpbHMgYS5maWxlc2l6ZTpmb2N1cyB7XG4gICAgY29sb3I6ICMwQjg2NTE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5vZy1sb2FkaW5nIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiAjZGRkO1xuICBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2NjYywgLTE1cHggMzBweCAxcHggI2NjYztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkZXIgMC41cyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuICAtbW96LWFuaW1hdGlvbjogbG9hZGVyIDAuNXMgaW5maW5pdGUgZWFzZS1pbi1vdXQgYm90aDtcbiAgYW5pbWF0aW9uOiBsb2FkZXIgMC41cyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAub2ctbG9hZGluZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbjogLTI1cHggMCAwIC0yNXB4OyB9IH1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRlciB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGRkOyB9XG4gIDMzJSB7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2NjYywgLTE1cHggMzBweCAxcHggI2RkZDsgfVxuICA2NiUge1xuICAgIGJhY2tncm91bmQ6ICNjY2M7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCAjY2NjLCAxNXB4IDMwcHggMXB4ICNkZGQsIC0xNXB4IDMwcHggMXB4ICNjY2M7IH0gfVxuXG5ALW1vei1rZXlmcmFtZXMgbG9hZGVyIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7IH1cbiAgMzMlIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggI2NjYywgMTVweCAzMHB4IDFweCAjY2NjLCAtMTVweCAzMHB4IDFweCAjZGRkOyB9XG4gIDY2JSB7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2RkZCwgLTE1cHggMzBweCAxcHggI2NjYzsgfSB9XG5cbkBrZXlmcmFtZXMgbG9hZGVyIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQ6ICNkZGQ7IH1cbiAgMzMlIHtcbiAgICBiYWNrZ3JvdW5kOiAjY2NjO1xuICAgIGJveC1zaGFkb3c6IDAgMCAxcHggI2NjYywgMTVweCAzMHB4IDFweCAjY2NjLCAtMTVweCAzMHB4IDFweCAjZGRkOyB9XG4gIDY2JSB7XG4gICAgYmFja2dyb3VuZDogI2NjYztcbiAgICBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2RkZCwgLTE1cHggMzBweCAxcHggI2NjYzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XG4gIC5vZy1kZXRhaWxzIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5nYWxsZXJ5LWZpbHRlciB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46IDIwcHggYXV0byAzMHB4IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmdhbGxlcnktZmlsdGVyIHtcbiAgICAgIHdpZHRoOiAzNTBweDsgfSB9XG4gIC5nYWxsZXJ5LWZpbHRlciAudHJpZ2dlciB7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjMmMyZjJmO1xuICAgIGJhY2tncm91bmQ6ICMxNGRjNjY7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZ2FsbGVyeS1maWx0ZXIgLnRyaWdnZXI6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmdhbGxlcnktZmlsdGVyIC50cmlnZ2VyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgLmdhbGxlcnktZmlsdGVyIC50cmlnZ2VyOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMjJweDtcbiAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDdweDtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybChcIi4uL2ltZy9pY29ucy9pY29uLWRkLWFycm93LXdoaXRlLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiAwLjVzIGFsbDtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMC41cyBhbGw7XG4gICAgICB0cmFuc2l0aW9uOiAwLjVzIGFsbDsgfVxuICAgIC5nYWxsZXJ5LWZpbHRlciAudHJpZ2dlci5hY3RpdmU6YWZ0ZXIge1xuICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgfVxuICAuZ2FsbGVyeS1maWx0ZXIgLm9wdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA2O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7XG4gICAgLW1vei10cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IC41cztcbiAgICAtbXMtdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7XG4gICAgLW8tdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZ2FsbGVyeS1maWx0ZXIgLm9wdGlvbnMgbGkge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlcjogc29saWQgMXB4ICM5Njk3OTc7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBjb2xvcjogIzk2OTc5NzsgfVxuICAgICAgLmdhbGxlcnktZmlsdGVyIC5vcHRpb25zIGxpIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgLTIwcHg7IH1cbiAgICAgICAgLmdhbGxlcnktZmlsdGVyIC5vcHRpb25zIGxpIGE6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNlYWVhZWE7IH1cbiAgICAgIC5nYWxsZXJ5LWZpbHRlciAub3B0aW9ucyBsaSB1bCBsaSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbjogMCAtMjBweDsgfVxuICAgICAgICAuZ2FsbGVyeS1maWx0ZXIgLm9wdGlvbnMgbGkgdWwgbGkgYSB7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgNDBweDsgfVxuICAgIC5nYWxsZXJ5LWZpbHRlciAub3B0aW9ucy5hY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICM5Njk3OTc7XG4gICAgICBtYXgtaGVpZ2h0OiA2MDBweDsgfVxuXG5hcnRpY2xlIC5zcGxpdC1saXN0IHtcbiAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIGFydGljbGUgLnNwbGl0LWxpc3Qge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7IH1cbiAgICAgIGFydGljbGUgLnNwbGl0LWxpc3Q6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICBhcnRpY2xlIC5zcGxpdC1saXN0OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgYXJ0aWNsZSAuc3BsaXQtbGlzdDpmaXJzdC1vZi10eXBlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzJjMmYyZjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgYXJ0aWNsZSAuc3BsaXQtbGlzdCAubGlzdC1jb3B5IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAwIDA7IH0gfVxuICBhcnRpY2xlIC5zcGxpdC1saXN0IC5saXN0LWNvcHkgc3BhbiB7XG4gICAgY29sb3I6ICMyYzJmMmY7XG4gICAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBCb2xkXCI7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4zMTI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgYXJ0aWNsZSAuc3BsaXQtbGlzdCAubGlzdC1jb3B5IHNwYW4ge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjI1cmVtOyB9IH1cbiAgYXJ0aWNsZSAuc3BsaXQtbGlzdCAubGlzdC1jb3B5IGg0IHtcbiAgICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41NjI1cmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICBhcnRpY2xlIC5zcGxpdC1saXN0IC5saXN0LWNvcHkgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS42MjVyZW07IH0gfVxuICBhcnRpY2xlIC5zcGxpdC1saXN0ID4gdWwge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICBhcnRpY2xlIC5zcGxpdC1saXN0ID4gdWwge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG5cbi5hY2NvcmRpb24gLnNwbGl0LWxpc3Q6Zmlyc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7IH1cblxuLnNmSGlnaGxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjtcbiAgY29sb3I6ICMyYzJmMmY7XG4gIHBhZGRpbmc6IDJweDsgfVxuXG4uc2YtbWVkaWEge1xuICBwYWRkaW5nLWJvdHRvbTogMjVweDsgfVxuXG4uc2YtbWVkaWEtYm9keSB7XG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2YtbWVkaWEtYm9keSBwIHtcbiAgICAgIHBhZGRpbmctbGVmdDogNTBweDsgfSB9XG5cbi5zZWFyY2gtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAzNXB4OyB9XG4gIC5zZWFyY2gtaGVhZGVyIGVtIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7IH1cbiAgICAuc2VhcmNoLWhlYWRlciBlbTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMUNcIjsgfVxuICAgIC5zZWFyY2gtaGVhZGVyIGVtOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7IH1cblxuLnNlYXJjaC1mb290ZXIge1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5zZWFyY2gtZm9vdGVyOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuc2VhcmNoLWZvb3RlcjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjtcbiAgICBjb2xvcjogI2VhZWFlYTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgICAucGFnaW5hdGlvbiAuY3VycmVudDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMEI4NjUxO1xuICAgICAgY29sb3I6ICNlYWVhZWE7IH1cbiAgLnBhZ2luYXRpb24gYSxcbiAgLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzogMTBweCAyNXB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLnBhZ2luYXRpb24gYTpob3ZlcixcbiAgICAucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICAgICAgY29sb3I6ICNlYWVhZWE7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgfVxuXG51bC5wYWdpbmF0aW9uIGxpIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhOyB9XG4gIHVsLnBhZ2luYXRpb24gbGk6aG92ZXIge1xuICAgIGNvbG9yOiAjZWFlYWVhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNjNhNDU7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2Ytc29jaWFsLXNoYXJlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMS41NjI1ZW07IH0gfVxuXG4uc2Ytc29jaWFsLXNoYXJlIGxpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbGluZS1oZWlnaHQ6IDhweDtcbiAgcGFkZGluZzogNXB4OyB9XG4gIC5zZi1zb2NpYWwtc2hhcmUgbGk6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuICAuc2Ytc29jaWFsLXNoYXJlIGxpOmxhc3QtY2hpbGQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH1cblxuLnNmLXNvY2lhbC1zaGFyZSAjX19fcGx1c29uZV8wIHtcbiAgbWF4LXdpZHRoOiA1NXB4O1xuICB3aWR0aDogNTVweDsgfVxuXG4jYnR0IHtcbiAgY29sb3I6ICNjYWNiY2I7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzNjNhNDU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAzMHB4O1xuICByaWdodDogMHB4O1xuICB6LWluZGV4OiA5OTk5O1xuICB3aWR0aDogNDVweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XG4gIGZvbnQtc2l6ZTogMC42ZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiA3cHg7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgI2J0dCBzcGFuIHtcbiAgICBwYWRkaW5nOiA1cHggMCAzcHggMDtcbiAgICBtYXJnaW46IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAjYnR0IHNwYW46YWZ0ZXIge1xuICAgICAgY29udGVudDogXCLuoIdcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcbiAgICAgIGZvbnQtc2l6ZTogMjA7XG4gICAgICBjb2xvcjogI2NhY2JjYjsgfVxuXG4uc3VzdGFpbmFiaWxpdHktbGlua3MgaDIge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBsaW5lLWhlaWdodDogLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzJjMmYyZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuXG4uY29sdW1ucy5zdXN0YWluYWJpbGl0eS1wZXJmb3JtYW5jZSB7XG4gIGJvcmRlci1sZWZ0OiBzb2xpZCAycHggIzAwZTg2MjtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC53cmFwcGVyIHtcbiAgcGFkZGluZzogMjBweDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLndyYXBwZXIge1xuICAgIHBhZGRpbmc6IDE1cHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC1tb3otZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtby1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkID4gLnNoYXJlLXByb21vLFxuICAgIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQgPiAuZGVidC1pbnZlc3RvcnMsXG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5uZXdzLWxpc3Qge1xuICAgICAgLXdlYmtpdC1mbGV4OiAxIDEwMCU7XG4gICAgICAtbW96LWZsZXg6IDEgMTAwJTtcbiAgICAgIC1tcy1mbGV4OiAxIDEwMCU7XG4gICAgICAtby1mbGV4OiAxIDEwMCU7XG4gICAgICBmbGV4OiAxIDEwMCU7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkID4gLnRpbGUtbGlua3Mge1xuICAgICAgLXdlYmtpdC1mbGV4OiAxIDUwJTtcbiAgICAgIC1tb3otZmxleDogMSA1MCU7XG4gICAgICAtbXMtZmxleDogMSA1MCU7XG4gICAgICAtby1mbGV4OiAxIDUwJTtcbiAgICAgIGZsZXg6IDEgNTAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAzMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA0MHB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIC13ZWJraXQtZmxleC1mbG93OiByb3c7XG4gICAgLW1vei1mbGV4LWZsb3c6IHJvdztcbiAgICAtbXMtZmxleC1mbG93OiByb3c7XG4gICAgLW8tZmxleC1mbG93OiByb3c7XG4gICAgZmxleC1mbG93OiByb3c7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkID4gLnNoYXJlLXByb21vIHtcbiAgICAgIC13ZWJraXQtZmxleDogMSAyMCU7XG4gICAgICAtbW96LWZsZXg6IDEgMjAlO1xuICAgICAgLW1zLWZsZXg6IDEgMjAlO1xuICAgICAgLW8tZmxleDogMSAyMCU7XG4gICAgICBmbGV4OiAxIDIwJTtcbiAgICAgIG9yZGVyOiAxOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC50aWxlLWxpbmtzIHtcbiAgICAgIC13ZWJraXQtZmxleDogMCAzOCU7XG4gICAgICAtbW96LWZsZXg6IDAgMzglO1xuICAgICAgLW1zLWZsZXg6IDAgMzglO1xuICAgICAgLW8tZmxleDogMCAzOCU7XG4gICAgICBmbGV4OiAwIDM4JTtcbiAgICAgIG9yZGVyOiA0OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5kZWJ0LWludmVzdG9ycyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiA1NXB4O1xuICAgICAgd2lkdGg6IDE4JTtcbiAgICAgIG1heC13aWR0aDogMjQ2cHg7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC5ncmlkID4gLm5ld3MtbGlzdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDI4NnB4O1xuICAgICAgbGVmdDogNTVweDtcbiAgICAgIHdpZHRoOiAxOCU7XG4gICAgICBtYXgtd2lkdGg6IDI0NnB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiA1NXB4IDU1cHggMCA1NXB4OyB9IH1cblxuI2ludmVzdG9yLWNlbnRyZSAjbWFpbiAuaW52ZXN0b3ItY2VudHJlIC5yb3csXG4jaW52ZXN0b3ItY2VudHJlICNtYWluIC5pbnZlc3RvcnMgLnJvdyB7XG4gIG1heC13aWR0aDogMTAwZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAjaW52ZXN0b3ItY2VudHJlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAjaW52ZXN0b3ItY2VudHJlICNtYWluIC5pbnZlc3RvcnMge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyOiBub25lOyB9XG4gICAgI2ludmVzdG9yLWNlbnRyZSAjbWFpbiAuaW52ZXN0b3JzIC5wYWdlLWludHJvIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgIzAwZTg2MjsgfSB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIHtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogNDIwcHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gPiBhOmhvdmVyLCAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyA+IGE6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vID4gYTpob3ZlciAuc3RvY2stcHJpY2UgPiBzcGFuLCAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyA+IGE6Zm9jdXMgLnN0b2NrLXByaWNlID4gc3BhbiB7XG4gICAgICBjb2xvcjogIzAwZTg2MjsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyBoMiB7XG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcbiAgICBmb250LXNpemU6IDAuODEyNWVtO1xuICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzJjMmYyZjtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay1wcmljZSA+IHNwYW4ge1xuICAgICAgZm9udC1zaXplOiA2NXB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXggPiBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMS42MjVlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICBjb2xvcjogIzJjMmYyZiAhaW1wb3J0YW50OyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLWluZGV4ID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay1pbmRleCA+IGkge1xuICAgICAgZm9udC1zaXplOiAxLjM3NWVtO1xuICAgICAgY29sb3I6ICMyYzJmMmYgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay11cGRhdGVkLWxpc3Qge1xuICAgICAgcGFkZGluZzogMTBweCAwIDVweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDBlODYyO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMGU4NjI7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xuICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAuOTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDM3NWVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogIzY0NjQ2NDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXVwZGF0ZWQtbGlzdCA+IGxpID4gc3BhbiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1pbi13aWR0aDogODVweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIHtcbiAgICAgIG1heC13aWR0aDogNDIwcHg7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xuICAgICAgICBmb250LXNpemU6IDAuNzgxMjVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBtYXJnaW46IDIwcHggYXV0bztcbiAgICAgIHBhZGRpbmc6IDA7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjbGVhcjogYm90aDsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW86YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIGgyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIC13ZWJraXQtZmxleDogMCAxMDAlO1xuICAgICAgICAtbW96LWZsZXg6IDAgMTAwJTtcbiAgICAgICAgLW1zLWZsZXg6IDAgMTAwJTtcbiAgICAgICAgLW8tZmxleDogMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDEwMCU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bzsgfVxuICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3NjhweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogLXdlYmtpdC10cmFuc2xhdGUoLTUwJSk7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUpO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC13ZWJraXQtZmxleC1mbG93OiByb3c7XG4gICAgICAgIC1tb3otZmxleC1mbG93OiByb3c7XG4gICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgLW8tZmxleC1mbG93OiByb3c7XG4gICAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgIzAwZTg2MjtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZTpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stcHJpY2Uge1xuICAgICAgICAgIC13ZWJraXQtZmxleDogMSAzMy4zMzMzMyU7XG4gICAgICAgICAgLW1vei1mbGV4OiAxIDMzLjMzMzMzJTtcbiAgICAgICAgICAtbXMtZmxleDogMSAzMy4zMzMzMyU7XG4gICAgICAgICAgLW8tZmxleDogMSAzMy4zMzMzMyU7XG4gICAgICAgICAgZmxleDogMSAzMy4zMzMzMyU7IH1cbiAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXByaWNlID4gc3BhbiB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAuOTsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIge1xuICAgICAgICAgIC13ZWJraXQtZmxleDogMCA2Ni42NjY2NiU7XG4gICAgICAgICAgLW1vei1mbGV4OiAwIDY2LjY2NjY2JTtcbiAgICAgICAgICAtbXMtZmxleDogMCA2Ni42NjY2NiU7XG4gICAgICAgICAgLW8tZmxleDogMCA2Ni42NjY2NiU7XG4gICAgICAgICAgZmxleDogMCA2Ni42NjY2NiU7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAtbW96LWZsZXgtZmxvdzogcm93O1xuICAgICAgICAgIC1tcy1mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICAtby1mbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICBmbGV4LWZsb3c6IHJvdztcbiAgICAgICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2staW5kZXgge1xuICAgICAgICAgICAgLXdlYmtpdC1mbGV4OiAwIDM1JTtcbiAgICAgICAgICAgIC1tb3otZmxleDogMCAzNSU7XG4gICAgICAgICAgICAtbXMtZmxleDogMCAzNSU7XG4gICAgICAgICAgICAtby1mbGV4OiAwIDM1JTtcbiAgICAgICAgICAgIGZsZXg6IDAgMzUlOyB9XG4gICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDBlODYyOyB9XG4gICAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2staW5kZXggPiBpIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gICAgICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLXdyYXBwZXIgPiAuc3RvY2staW5kZXggPiBzcGFuLFxuICAgICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4ID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lOyB9XG4gICAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLXVwZGF0ZWQtbGlzdCB7XG4gICAgICAgICAgICAtd2Via2l0LWZsZXg6IDY1JTtcbiAgICAgICAgICAgIC1tb3otZmxleDogNjUlO1xuICAgICAgICAgICAgLW1zLWZsZXg6IDY1JTtcbiAgICAgICAgICAgIC1vLWZsZXg6IDY1JTtcbiAgICAgICAgICAgIGZsZXg6IDY1JTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzAwZTg2MjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7IH1cbiAgICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay11cGRhdGVkLWxpc3QgPiBsaSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4OyB9XG4gICAgICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay11cGRhdGVkLWxpc3QgPiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zaGFyZS1wcm9tbyB7XG4gICAgICBtYXJnaW46IDA7IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSB7XG4gICAgICAgIG1heC13aWR0aDogMjQ2cHg7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay1wcmljZSA+IHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy40Mzc1ZW07IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4ID4gc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjEyNWVtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2std3JhcHBlciA+IC5zdG9jay1pbmRleCA+IGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBoZWlnaHQ6IDIwcHg7IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAuc2hhcmUtcHJvbW8gLnNoYXJlLXByaWNlIC5zdG9jay11cGRhdGVkLWxpc3QgPiBsaSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjY4NzVlbTsgfVxuICAgICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1pbi13aWR0aDogNzVweDsgfSB9XG5cbi5hbm5vdW5jZW1lbnQtYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLyogYWRkIG92ZXJyaWRlIHRvIHByZXZlbnQgbWFyZ2luIGJ1ZmZlciAqLyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIHAsXG4gIC5hbm5vdW5jZW1lbnQtYmFyIGEge1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIHAge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMjBweCA0cHg7IH1cbiAgLmFubm91bmNlbWVudC1iYXIgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgLypcclxuICAgICAgICB0cmFuc2l0aW9uOmNvbG9yIC4zcztcclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBcdGNvbG9yOiNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICovIH1cbiAgICAuYW5ub3VuY2VtZW50LWJhciBhOmhvdmVyLCAuYW5ub3VuY2VtZW50LWJhciBhOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjMDAwOyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIC53eXNpd3lnID4gLnd5c2l3eWctaW5uZXI6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hbm5vdW5jZW1lbnQtYmFyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgIzAwZTg2MjtcbiAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICMwMGU4NjI7XG4gICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgIzAwZTg2MjsgfVxuICAgICAgLmFubm91bmNlbWVudC1iYXIgcCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogOHB4IDIwcHggOHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBmb250LXNpemU6IDAuOTY4NzVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwZTg2MjsgfVxuICAgICAgICAuYW5ub3VuY2VtZW50LWJhciBwOmFmdGVyLCAuYW5ub3VuY2VtZW50LWJhciBwOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIC5hbm5vdW5jZW1lbnQtYmFyIHA6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogLTUwcHg7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDAgNzJweCA1NHB4O1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzAwZTg2MiB0cmFuc3BhcmVudDsgfVxuICAgICAgICAuYW5ub3VuY2VtZW50LWJhciBwOmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgcmlnaHQ6IC01MnB4O1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci13aWR0aDogNzJweCA1NHB4IDAgMDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICMwMGU4NjIgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7IH1cbiAgICAgIC5hbm5vdW5jZW1lbnQtYmFyOmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFCa0NBWUFBQUJ3NHBWVUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeVpwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOaTFqTURZM0lEYzVMakUxTnpjME55d2dNakF4TlM4d015OHpNQzB5TXpvME1EbzBNaUFnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESURJd01UVWdLRmRwYm1SdmQzTXBJaUI0YlhCTlRUcEpibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPa0k1TlVNNE56Y3pNREpDUlRFeFJUWTVSVFUxUkRnM1F6SXdOa1k1UVRreUlpQjRiWEJOVFRwRWIyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09rSTVOVU00TnpjME1ESkNSVEV4UlRZNVJUVTFSRGczUXpJd05rWTVRVGt5SWo0Z1BIaHRjRTFOT2tSbGNtbDJaV1JHY205dElITjBVbVZtT21sdWMzUmhibU5sU1VROUluaHRjQzVwYVdRNlFqazFRemczTnpFd01rSkZNVEZGTmpsRk5UVkVPRGRETWpBMlJqbEJPVElpSUhOMFVtVm1PbVJ2WTNWdFpXNTBTVVE5SW5odGNDNWthV1E2UWprMVF6ZzNOekl3TWtKRk1URkZOamxGTlRWRU9EZERNakEyUmpsQk9USWlMejRnUEM5eVpHWTZSR1Z6WTNKcGNIUnBiMjQrSUR3dmNtUm1PbEpFUmo0Z1BDOTRPbmh0Y0cxbGRHRStJRHcvZUhCaFkydGxkQ0JsYm1ROUluSWlQejVCclQ0bUFBQUIrRWxFUVZSNDJ1emIzVTNEQUF4Rlllb0ZtS2ZkQUFhbUd6QVBzRUJJSG5oQktrMURmbzd0WThrUGVZdjBTWkVpMzNzYWh1R3A4WnpIdlk3N0RIaVhyM0ZmUWd3T3hyanZJUVlIWTNvSU1UZ1lIVUhRR04xQThCaWRRRkpnZEFGSmc5RUJKQlZHZFpCMEdKVkJTQmlmY3pHcWd0QXdYdWRpVkFSSmpWRU5KRDFHSlpBU0dGVkF5bUJVQUNtRmtSMmtIRVpta0pJWVdVSEtZbVFFS1kyUkRhUThSaWFRRmhoWlFOcGdaQUJwaFVFSGFZZEJCbW1KUVFWcGkwRUVhWTFCQTJtUFFRSVJBd1FpQmdoRURCQ0lHQ0FRTVVBZ1lvQkF4QUNCaUFFQ0VRTUVJZ1lJUkF3UWlCZ2dFREZBSUdLQVFNUUFnWWdCQXJtSXdRR1pNTjdFWUlDSUFRSVJBd1FpQmdoRURCQ0lHQ0FRTVVBZ1lvQkF4QUNCaUFFQ0VRTUVJZ1lJUkF3UWlCZ2dFREZBSUdLQVFNUUF6V2tZaGc4eE1IT2VRQVl4R0JqalhrTU1Ec2IwcFFveE9CaC8vYW1MY1FER2tTQmkzTWl4aFJnY2pDTkF4TGlUOEF3eE9CaDdnb2d4TS9zY1luQXc5Z0FSNDhGV1FJakJ3ZGdTUkl5RkZZMFFZek9NUlNlTkVJT0RzVGFJR0NzYyswSU1Ec1phSUdLc2VBWVBNVGdZL3dVUlk0T0FTSWpCd1ZnS0lzYUcwYWtRZzRQeEtJZ1lPNFFLUXd3T3hsd1FNWGFNMjRZWUhJeDdJR0ljRUVRUE1UZ1l0MERFT0xDaUVXSndNSDZEaUFFb0w0VVlISXdmRURGQXRiNnBRWFVSZzlPeC9CWmdBT1VYT1J4R3k0YWFBQUFBQUVsRlRrU3VRbUNDXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDZweCBhdXRvO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgbGVmdDogLTEwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMjAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6IC43NTtcbiAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7IH0gfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgaDIge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBsaW5lLWhlaWdodDogMS4xOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSxcbi5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgZm9udC1zaXplOiAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAxNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC40cztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhIHtcbiAgY29sb3I6ICMwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGU4NjI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xMjVlbTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEgPiBzcGFuIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcy5sdCB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MucnQgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MucnQgaDIge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIGgyIHtcbiAgICBtaW4taGVpZ2h0OiAzNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsIHtcbiAgICBtYXJnaW46IDAgLTVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIC1tb3otZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtbXMtZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAtby1mbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkge1xuICAgICAgLXdlYmtpdC1mbGV4OiAwIDUwJTtcbiAgICAgIC1tb3otZmxleDogMCA1MCU7XG4gICAgICAtbXMtZmxleDogMCA1MCU7XG4gICAgICAtby1mbGV4OiAwIDUwJTtcbiAgICAgIGZsZXg6IDAgNTAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIu6gs1wiO1xuICAgICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgY29sb3I6ICMwMGU4NjI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgIHJpZ2h0OiAxMnB4O1xuICAgICAgICBib3R0b206IDdweDtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjRzOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhIHtcbiAgICAgICAgbWFyZ2luOiA1cHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICBmb250LXNpemU6IDEuMTI1ZW07IH1cbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYSA+IHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGE6YWZ0ZXIsIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGE6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvdGlsZS10cmlhbmdsZS5zdmcpIG5vLXJlcGVhdDtcbiAgICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMjBweDtcbiAgICAgICAgICAtbW96LWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMjBweDtcbiAgICAgICAgICAtbXMtYmFja2dyb3VuZC1zaXplOiAxMDAlIDEyMHB4O1xuICAgICAgICAgIC1vLWJhY2tncm91bmQtc2l6ZTogMTAwJSAxMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTIwcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAuOHMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGE6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC4yOyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGE6YmVmb3JlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMnB4O1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEpOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXI6YWZ0ZXIsIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaTpmb2N1czphZnRlciB7XG4gICAgICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6Zm9jdXMgPiBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzEzZDU2MzsgfVxuICAgICAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhOmFmdGVyLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6Zm9jdXMgPiBhOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMnB4OyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaTpob3ZlciA+IGE6YmVmb3JlLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6Zm9jdXMgPiBhOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogLjA1O1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyBoMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGZvbnQtc2l6ZTogMS43NWVtOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICAgIG1hcmdpbjogNXB4O1xuICAgIG1pbi1oZWlnaHQ6IDE0MHB4O1xuICAgIGZvbnQtc2l6ZTogMS4xODc1ZW07IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmJlZm9yZSwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYTphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTQwcHg7IH1cbiAgICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGkgPiBhOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDBweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhOmFmdGVyLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6Zm9jdXMgPiBhOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDBweDsgfVxuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIHVsID4gbGk6aG92ZXIgPiBhOmJlZm9yZSwgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpOmZvY3VzID4gYTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyBoMiB7XG4gICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xuICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MgdWwgPiBsaSA+IGEge1xuICAgIGZvbnQtc2l6ZTogMS4yNWVtOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MubHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MubHQ6YmVmb3JlLCAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzLmx0OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMXB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA1cHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2JjYjtcbiAgICAgIHRvcDogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MubHQ6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IC0zMHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcy5sdDphZnRlciB7XG4gICAgICByaWdodDogLTEwcHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMnB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MucnQgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAzMnB4OyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnRpbGUtbGlua3MucnQgaDIge1xuICAgIG1hcmdpbi1sZWZ0OiAzOHB4OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTE4Ljc1ZW0pIHtcbiAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bCA+IGxpID4gYSB7XG4gICAgZm9udC1zaXplOiAxLjM3NWVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc5LjkzNzVlbSkge1xuICAuaW52ZXN0b3ItY2VudHJlIC50aWxlLWxpbmtzIGFydGljbGUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMwMGU4NjI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDBlODYyO1xuICBwYWRkaW5nOiAxNXB4IDA7XG4gIG1hcmdpbi10b3A6IDMwcHg7IH1cbiAgLmludmVzdG9yLWNlbnRyZSAuc3VzdGFpbmFiaWxpdHktbGlua3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIGgyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIC4zczsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIGgyOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwi7qCzXCI7XG4gICAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBjb2xvcjogIzAwZTg2MjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIGgyOmhvdmVyLCAuaW52ZXN0b3ItY2VudHJlIC5zdXN0YWluYWJpbGl0eS1saW5rcyBoMjpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwY2Y1NzsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gICAgLmludmVzdG9yLWNlbnRyZSAuc3VzdGFpbmFiaWxpdHktbGlua3MgaDI6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0b3A6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuaW52ZXN0b3ItY2VudHJlIC5zdXN0YWluYWJpbGl0eS1saW5rcyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IH0gfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3Q6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDsgfVxuXG4uaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3QgaDIge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICBmb250LXNpemU6IDAuODEyNWVtO1xuICBsaW5lLWhlaWdodDogLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMyYzJmMmY7IH1cblxuLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0IC5kYXRlLXRpbWUge1xuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcbiAgZm9udC1zaXplOiAwLjgxMjVlbTtcbiAgbGluZS1oZWlnaHQ6IC45O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMzc1ZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjNjQ2NDY0O1xuICBmb250LXdlaWdodDogbm9ybWFsOyB9XG5cbi5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCBoMiB7XG4gIG1hcmdpbi10b3A6IDUwcHg7IH1cblxuLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0ID4gLndyYXBwZXIge1xuICBwYWRkaW5nOiAwOyB9XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCA+IC53cmFwcGVyIC5pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0ID4gLndyYXBwZXIgLml0ZW0gLmRhdGUtdGltZSB7XG4gICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCA+IC53cmFwcGVyIC5pdGVtIHA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVlbTsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSBhbmQgKG1heC13aWR0aDogNzkuOTM3NWVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1mbGV4LWZsb3c6IHJvdztcbiAgICAgIC1tb3otZmxleC1mbG93OiByb3c7XG4gICAgICAtbXMtZmxleC1mbG93OiByb3c7XG4gICAgICAtby1mbGV4LWZsb3c6IHJvdztcbiAgICAgIGZsZXgtZmxvdzogcm93O1xuICAgICAgbWFyZ2luOiAwIC0xLjI1cmVtO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1heC13aWR0aDogMTAwZW07IH1cbiAgICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciA+IC5pdGVtIHtcbiAgICAgICAgLXdlYmtpdC1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICAtbW96LWZsZXg6IDEgMzMuMzMzMyU7XG4gICAgICAgIC1tcy1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICAtby1mbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICBmbGV4OiAxIDMzLjMzMzMlO1xuICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCBoMiB7XG4gICAgICBtYXJnaW4tdG9wOiAwOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAubmV3cy1saXN0IC53cmFwcGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaW52ZXN0b3ItY2VudHJlIC5uZXdzLWxpc3QgLndyYXBwZXIgPiAuaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MnB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLm5ld3MtbGlzdCAud3JhcHBlciA+IC5pdGVtIHA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45Mzc1ZW07IH0gfVxuXG4uZmVhdHVyZWQge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7IH1cbiAgLmZlYXR1cmVkID4gaDIge1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xuICAgIGZvbnQtc2l6ZTogMC44MTI1ZW07XG4gICAgbGluZS1oZWlnaHQ6IC45O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAzNzVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjNjQ2NDY0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzBlbSkge1xuICAgIC5mZWF0dXJlZCB7XG4gICAgICBib3JkZXI6IG5vbmU7IH1cbiAgICAgIC5mZWF0dXJlZCA+IGgyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjYWNiY2I7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAwXFwwKSB7XG4gIC5mZWF0dXJlZCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuZmVhdHVyZWQgLnJvdyAuY29sdW1uLCAuZmVhdHVyZWQgLnJvdyAuY29sdW1ucyB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiAzMGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5hbm5vdW5jZW1lbnQtYmFyIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkgYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA3OS45Mzc1ZW0pIHtcbiAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXgge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHggIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5pbnZlc3Rvci1jZW50cmUgLmdyaWQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC5zaGFyZS1wcm9tbyB7XG4gICAgICB3aWR0aDogMjAlOyB9XG4gICAgLmludmVzdG9yLWNlbnRyZSAuZ3JpZCA+IC50aWxlLWxpbmtzIHtcbiAgICAgIHdpZHRoOiAzOCU7IH1cbiAgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbiwgLmZlYXR1cmVkIC5yb3cgLmNvbHVtbnMge1xuICAgIHdpZHRoOiAzMyU7IH0gfVxuXG4uc2ZQYWdlRWRpdG9yIC5yZFRhYmxlIHRib2R5LCAuc2ZQYWdlRWRpdG9yIC5yZFRhYmxlIHRoZWFkLCAuc2ZQYWdlRWRpdG9yIC5yZFRhYmxlIHRmb290IHtcbiAgYmFja2dyb3VuZDogbm9uZTsgfVxuXG4uc2ZQYWdlRWRpdG9yIC5SYWREb2NrIC5yZENlbnRlciAucmRDb21tYW5kcyBsaSBhOmJlZm9yZSwgLnNmUGFnZUVkaXRvciAuUmFkRG9jayAucmRDZW50ZXIgLnJkQ29tbWFuZHMgbGkgYTphZnRlciwgLnNmUGFnZUVkaXRvciAuUmFkRG9jayAucmRDZW50ZXIgLnJkQ29tbWFuZHMgbGk6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZlBhZ2VFZGl0b3IgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bC5yZENvbW1hbmRzID4gbGkgPiBhIHtcbiAgbWluLWhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwOyB9XG5cbi5zZlBhZ2VFZGl0b3IgLnJlbGF0ZWQtY29udGVudCB7XG4gIG1heC13aWR0aDogMjcwcHggIWltcG9ydGFudDsgfVxuICAuc2ZQYWdlRWRpdG9yIC5yZWxhdGVkLWNvbnRlbnQgdWw6YWZ0ZXIsXG4gIC5zZlBhZ2VFZGl0b3IgLnJlbGF0ZWQtY29udGVudCB1bDpiZWZvcmUge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuLnNmUGFnZUVkaXRvciAuc2ZQYWdlV3JhcHBlciBoZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLnNmUGFnZUVkaXRvciAuc2ZQYWdlV3JhcHBlciAuaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWw6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZlBhZ2VFZGl0b3IgLnNmUGFnZVdyYXBwZXIgLnNmX2NvbHNJbi5hbm5vdW5jZW1lbnQtYmFyIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgLnNmUGFnZUVkaXRvciAuc2ZQYWdlV3JhcHBlciAuc2ZfY29sc0luLmFubm91bmNlbWVudC1iYXI6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbi5zZlBhZ2VFZGl0b3IgLnNmUGFnZVdyYXBwZXIgLnNmX2NvbHNJbi5jb2x1bW4sIC5zZlBhZ2VFZGl0b3IgLnNmUGFnZVdyYXBwZXIgLnNmX2NvbHNJbi5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7IH1cblxuLnNmUGFnZUVkaXRvciBmb290ZXIge1xuICBwb3NpdGlvbjogc3RhdGljOyB9XG5cbi5SYWRXaW5kb3cge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogYXV0bzsgfVxuICAuUmFkV2luZG93ID4gdGFibGUucndUYWJsZSB7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7IH1cbiIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjIuNFxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gU2FzcyB1dGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIEdsb2JhbCB2YXJpYWJsZXMgYW5kIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcblxuLy8gQ29tcG9uZW50c1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleC12aWRlbyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoJGZsZXg6IGZhbHNlKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gIH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC12aWRlbztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcblxuICBAaWYgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xuICB9XG59XG4iLCJAaW1wb3J0IHVybChcIi8vZmFzdC5mb250cy5uZXQvdC8xLmNzcz9hcGlUeXBlPWNzcyZwcm9qZWN0aWQ9MTAxMmJlZGItMzFmOC00NWZiLWI0NTYtOTIwZGE4YTFkZTI5XCIpO1xyXG5AZm9udC1mYWNle1xyXG5mb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG5zcmM6dXJsKFwiLi4vZm9udHMvZDRlYjNmM2QtNGQ0MC00MmNjLTgwZWItMDA1YWFhY2QyZDAxLmVvdD8jaWVmaXhcIik7XHJcbnNyYzp1cmwoXCIuLi9mb250cy9kNGViM2YzZC00ZDQwLTQyY2MtODBlYi0wMDVhYWFjZDJkMDEuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksdXJsKFwiLi4vZm9udHMvZGYzMjYwYTgtNDI0OS00ODc2LWIyZWEtOWQzMGNhOGE1ZDg0LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcIi4uL2ZvbnRzL2Y5OTk3MzcxLWYyYjAtNGVmZC05YWZhLWFlZGM1MjNiZGE4My53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiLi4vZm9udHMvNDg0YzAzZGItNmRhNC00MTNmLTg1ZTctYmZjZWQ2Mjc3NDc2LnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCIuLi9mb250cy9lMWY5YjhkNS0yOTkwLTQ5MWItOTQ2MS02NDEwYTE5N2VlYjYuc3ZnI2UxZjliOGQ1LTI5OTAtNDkxYi05NDYxLTY0MTBhMTk3ZWViNlwiKSBmb3JtYXQoXCJzdmdcIik7XHJcbn1cclxuQGZvbnQtZmFjZXtcclxuZm9udC1mYW1pbHk6XCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG5zcmM6dXJsKFwiLi4vZm9udHMvZTI1ZTZmNDYtOTljOS00NmI3LTk3ODAtMzFmNWUzN2VkMjBmLmVvdD8jaWVmaXhcIik7XHJcbnNyYzp1cmwoXCIuLi9mb250cy9lMjVlNmY0Ni05OWM5LTQ2YjctOTc4MC0zMWY1ZTM3ZWQyMGYuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlb3RcIiksdXJsKFwiLi4vZm9udHMvOTRkM2ZjYzAtMmE5Ni00NzcxLTkxYjctYTM5ZjRkZGQ0OTE3LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLHVybChcIi4uL2ZvbnRzL2IyM2RmYzg3LWJiZTQtNDdmYS1hMGI5LTQ1NDc5NmY4Zjc1YS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksdXJsKFwiLi4vZm9udHMvMjUzM2NiNDMtYzI2Ny00NmM1LWEyM2ItM2YzYmU1ZWIwYjUwLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSx1cmwoXCIuLi9mb250cy9mMmJmNDg5Zi1kNThiLTQ2MjUtOTgwZi04NzU3YjYzZWQ4M2Euc3ZnI2YyYmY0ODlmLWQ1OGItNDYyNS05ODBmLTg3NTdiNjNlZDgzYVwiKSBmb3JtYXQoXCJzdmdcIik7XHJcbn1cclxuQGZvbnQtZmFjZXtcclxuZm9udC1mYW1pbHk6XCJTdG9semwgVzAwIEJvbGRcIjtcclxuc3JjOnVybChcIi4uL2ZvbnRzLzliMGRiY2MzLTNmZGYtNDMyMS1hZGUzLTdiZTNhNTg4ZWIwZi5lb3Q/I2llZml4XCIpO1xyXG5zcmM6dXJsKFwiLi4vZm9udHMvOWIwZGJjYzMtM2ZkZi00MzIxLWFkZTMtN2JlM2E1ODhlYjBmLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLHVybChcIi4uL2ZvbnRzL2RmYTUxNzBhLTc3MjgtNDlkYS05NTBhLWI0ZWFiNTAyOWFjNy53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy85NzZkZTcxYy1iNWQwLTQ0ZDctODlmMS00NzQ5YmQxYWM0MzIud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcIi4uL2ZvbnRzL2JlOWUyOWE2LTJkM2UtNDE2OC04ZTFmLWQ4NDBkMmY1N2M5My50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksdXJsKFwiLi4vZm9udHMvM2UxNDU5NzUtMmJmOC00YTk5LWEzNDEtZmE4OTc0MmFmNjMxLnN2ZyMzZTE0NTk3NS0yYmY4LTRhOTktYTM0MS1mYTg5NzQyYWY2MzFcIikgZm9ybWF0KFwic3ZnXCIpO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZFwiO1xyXG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9Gb3VuZGVyc0dyb3Rlc2tDb25kLUJvbGQuZW90PyNpZWZpeFwiKTtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvRm91bmRlcnNHcm90ZXNrQ29uZC1Cb2xkLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLHVybChcIi4uL2ZvbnRzL0ZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZC53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSx1cmwoXCIuLi9mb250cy9Gb3VuZGVyc0dyb3Rlc2tDb25kLUJvbGQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLHVybChcIi4uL2ZvbnRzL0ZvdW5kZXJzR3JvdGVza0NvbmQtQm9sZC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksdXJsKFwiLi4vZm9udHMvRm91bmRlcnNHcm90ZXNrQ29uZC1Cb2xkLnN2Z1wiKSBmb3JtYXQoXCJzdmdcIik7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvc2xpY2suZW90XCIpO1xyXG4gICAgc3JjOiB1cmwoXCIuLi9mb250cy9zbGljay5lb3RcIikgZm9ybWF0KFwiZW90XCIpLHVybChcIi4uL2ZvbnRzL3NsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSx1cmwoXCIuLi9mb250cy9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksdXJsKFwiLi4vZm9udHMvc2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJBdmVuaXJcIjtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvYXZlbmlyL0F2ZW5pckxUUHJvUm9tYW4ud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBCb2xkXCI7XHJcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL2F2ZW5pci9BdmVuaXJMVFByb0hlYXZ5LndvZmZcIikgZm9ybWF0KFwid29mZlwiKTtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgICBmb250LWZhbWlseTogXCJBdmVuaXIgTGlnaHRcIjtcclxuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvYXZlbmlyL0F2ZW5pckxUUHJvTGlnaHQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xyXG59XHJcblxyXG4kZm9udC1wYXRoOiAnLi4vZm9udHMvaGV1cmlzdGljYS8nO1xyXG5AaW5jbHVkZSBmb250LWZhY2UoJ0hldXJpc3RpY2EnLCAgICAgICAgICAgICAgXCIjeyRmb250LXBhdGh9XCIsICAgICdoZXVyaXN0aWNhLXJlZ3VsYXItd2ViZm9udCcsICAgICAnbm9ybWFsJyk7XHJcbkBpbmNsdWRlIGZvbnQtZmFjZSgnSGV1cmlzdGljYSBCb2xkJywgICAgICAgICBcIiN7JGZvbnQtcGF0aH1cIiwgICAgJ2hldXJpc3RpY2EtYm9sZC13ZWJmb250JywgICAgICAgICdub3JtYWwnKTtcclxuQGluY2x1ZGUgZm9udC1mYWNlKCdIZXVyaXN0aWNhIEl0YWxpYycsICAgICAgIFwiI3skZm9udC1wYXRofVwiLCAgICAnaGV1cmlzdGljYS1pdGFsaWMtd2ViZm9udCcsICAgICAgJ25vcm1hbCcpO1xyXG4vL0BpbmNsdWRlIGZvbnQtZmFjZSgnSGV1cmlzdGljYSBCb2xkIEl0YWxpYycsICBcIiN7JGZvbnQtcGF0aH1cIiwgICAgJ2hldXJpc3RpY2EtYm9sZGl0YWxpYy13ZWJmb250JywgICdub3JtYWwnKTtcclxuLy8gQWxsIG1haW4gaWNvbnMgZm9yIFdlc2Zhcm1lcnMgaW5jbHVkaW5nIFdlc2Zhcm1lcnMgTG9nb1xyXG4kZm9udC1wYXRoOiAnLi4vZm9udHMvd2VzZmFybWVycy1pY29ucy8nOyBcclxuQGluY2x1ZGUgZm9udC1mYWNlKCdXZXNmYXJtZXJzSWNvbnMnLCAgXCIjeyRmb250LXBhdGh9XCIsICAgICd3ZXNmYXJtZXJzLWljb25zJywgICdub3JtYWwnKTtcclxuXHJcbi8vIE1pc3NpbmcgbGlnaHQgZm9udCAodGhpcyB3aWxsIG5lZWQgdG8gYmUgcGFydCBvZiBzdWJzY3JpcHRpb24pXHJcbiRmb250LXBhdGg6ICcuLi9mb250cy9zdG9semwvJztcclxuQGluY2x1ZGUgZm9udC1mYWNlKCdTdG9semwgVzAwIExpZ2h0JywgIFwiI3skZm9udC1wYXRofVwiLCAgICAnc3RvbHpsLWxpZ2h0LXdlYmZvbnQnLCAgJ25vcm1hbCcpO1xyXG5cclxuLypcclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBMaWdodFwiO1xyXG4gIHNyYzogdXJsKFwiLi4vZm9udHMvU3RvbHpsLUxpZ2h0Lm90ZlwiKSBmb3JtYXQoXCJvdGZcIik7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSGV1cmlzdGljYS1SZWd1bGFyLm90ZlwiKSBmb3JtYXQoXCJvdGZcIik7XHJcbn1cclxuQGZvbnQtZmFjZSB7IFxyXG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2EgQm9sZFwiO1xyXG4gIHNyYzogdXJsKFwiLi4vZm9udHMvSGV1cmlzdGljYS1Cb2xkLm90ZlwiKSBmb3JtYXQoXCJvdGZcIik7XHJcbn1cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBJdGFsaWNcIjtcclxuICBzcmM6IHVybCgnLi4vZm9udHMvSGV1cmlzdGljYS1JdGFsaWMub3RmJykgZm9ybWF0KFwib3RmXCIpO1xyXG59XHJcbiovXHJcblxyXG5odG1sIHtcclxuXHRmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xyXG5cdC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxufVxyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcclxuXHQvL2ZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0Y29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5oMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2EgQm9sZFwiO1xyXG59XHJcbmgxe1xyXG4gIGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICBmb250LXNpemU6IGVtKDIwKTtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDM4KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG5cclxufVxyXG5oMntcclxuICBmb250LXNpemU6IGVtKDIyKTtcclxuICBsaW5lLWhlaWdodDogZW0oMjYsIDIyKTtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDMwKTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcbmgze1xyXG4gIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogZW0oMjQpO1xyXG4gIH1cclxufVxyXG5oNHtcclxuICBmb250LXNpemU6IGVtKDE4KTtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDIwKTtcclxuICB9XHJcbn1cclxuaDV7XHJcbiAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyZWVuLWFuYztcclxuICB9XHJcbn1cclxucCB7XHJcbiAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgbGluZS1oZWlnaHQ6IGVtKDI1LCAxNyk7XHJcbiAgcGFkZGluZzogMDtcclxuICBtYXJnaW46IDAgMCAxMHB4IDA7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogZW0oMTgpO1xyXG4gICAgbGluZS1oZWlnaHQ6IGVtKDI2LCAxOCk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwIDAgMTVweCAwO1xyXG4gIH1cclxuICAvL3Jlc2V0IGJ0biBzaXplIHdpdGhpbiBwIHRhZ1xyXG4gIC5idG4ge1xyXG4gICAgZm9udC1zaXplOiBlbSgxNiwgMTYpO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgZm9udC1zaXplOiBlbSgxOSwgMTkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5hIHtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMTUwbXMgZWFzZS1pbi1vdXQpO1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gIGN1cnNvcjpwb2ludGVyO1xyXG4gIC8vQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG4gIC8vfVxyXG59XHJcbnAgPiBhIHtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxudWwsIG9sIHtcclxuICBtYXJnaW46MCAwIGVtKDE2KSBlbSgxNik7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1hcmdpbjowIDAgZW0oMTkpIGVtKDE5KTtcclxuICB9XHJcbiAgJi5uby1idWxsZXQge1xyXG4gICAgQGV4dGVuZCAldWw7XHJcbiAgfSAgXHJcbn1cclxudWwgbGksIG9sIGxpIHtcclxuICBmb250LXNpemU6IGVtKDE3KTtcclxuICBsaW5lLWhlaWdodDogZW0oMjUpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDE4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiBlbSgyNiwgMTgpO1xyXG4gIH1cclxufVxyXG5saSB1bCwgbGkgb2wge1xyXG4gIG1hcmdpbjogZW0oOCkgMCBlbSg4KSBlbSgxOSk7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHJcbiAgfVxyXG59XHJcbmxpIHVsIGxpLCBsaSBvbCBsaXtcclxuICBmb250LXNpemU6IGVtKDE2KTtcclxuICBsaW5lLWhlaWdodDogZW0oMTkpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDE5LCAxOSk7XHJcbiAgICBsaW5lLWhlaWdodDogZW0oMjQpO1xyXG4gIH1cclxufVxyXG51bCB7XHJcbiAgbGlzdC1zdHlsZS10eXBlOmRpc2M7XHJcbn1cclxub2wge1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTpkZWNpbWFsO1xyXG59XHJcbm9sIG9sIHtcclxuICBsaXN0LXN0eWxlOiB1cHBlci1hbHBoYTtcclxufVxyXG5vbCBvbCBvbCB7XHJcbiAgbGlzdC1zdHlsZTogbG93ZXItcm9tYW47XHJcbn1cclxub2wgb2wgb2wgb2wge1xyXG4gIGxpc3Qtc3R5bGU6IGxvd2VyLWFscGhhO1xyXG59XHJcbnN0cm9uZyB7XHJcbiAgLy8gZm9udC13ZWlnaHQ6IDcwMDsgXHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5hYmJyW3RpdGxlXSB7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5ibG9ja3F1b3RlLCBxIHtcclxuICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICBmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG4gIGZvbnQtc2l6ZTogZW0oMTcpO1xyXG4gIGxpbmUtaGVpZ2h0OiBlbSgyNSwgMTcpO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgcXVvdGVzOiBub25lO1xyXG4gIHBhZGRpbmctbGVmdDogMjBweDtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgYm9yZGVyLWxlZnQ6IDlweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgbGluZS1oZWlnaHQ6IGVtKDMwLCAyMCk7XHJcbiAgICBib3JkZXItbGVmdDogMTVweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIG1heC13aWR0aDogOTAlO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDI2KTtcclxuICAgIGxpbmUtaGVpZ2h0OiBlbSg0NSwgMjYpO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDIzcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgbWFyZ2luOiAzMHB4IDA7XHJcbiAgICBtYXgtd2lkdGg6IDkwJTtcclxuICB9XHJcbiAgJjpiZWZvcmUge1xyXG5cclxuICB9XHJcbn1cclxudGFibGUge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB3aWR0aDogMTAwJTtcclxuICB0YWJsZS1sYXlvdXQ6Zml4ZWQ7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgXHJcbiAgbWFyZ2luOiAwO1xyXG4gIG92ZXJmbG93LXg6IGF1dG87ICBcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZGlzcGxheTogaW5saW5lLXRhYmxlO1xyXG4gIH0gIFxyXG4gIGNhcHRpb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogLTk5OTk5OWVtO1xyXG4gIH1cclxuICB0aCwgdGQge1xyXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICB9XHJcbiAgdGgge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG5cclxuICB9XHJcbiAgdHIge1xyXG4gICAgJi5oaWdobGlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjZTdmNGY5O1xyXG4gICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG4gIH1cclxuICB0ZCB7XHJcbiAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG4gIH1cclxuICB0cjpudGgtY2hpbGQoZXZlbikge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS13aGl0ZTtcclxuICB9XHJcbiAgdHI6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZjRmOTsgIFxyXG4gIH1cclxuICAuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmVlbjtcclxuICB9XHJcbn1cclxuLnNtYWxsIHtcclxuICBmb250LXNpemU6IGVtKDE0KTtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgfSBcclxufVxyXG4ubGFyZ2Uge1xyXG4gIGZvbnQtc2l6ZTogZW0oMTkpO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBmb250LXNpemU6IGVtKDI0KTtcclxuICB9XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuaSB7XHJcbiAgZm9udC1mYW1pbHk6ICdXZXNmYXJtZXJzSWNvbnMnO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vLyBhZGRlZCBieSBjbGFyaXR5XHJcbmFydGljbGUgPiA6Zmlyc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLXRvcDogMzBweDtcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSgxMDI0KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTI3OSkpIHtcclxuICBhcnRpY2xlIHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDEwMHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEwMHB4O1xyXG4gIH1cclxufSIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbiVtdWktZGVmYXVsdHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IG1hcC1nZXQoJG1vdGlvbi11aS1lYXNpbmdzLCBkZWZhdWx0KTtcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLXRyYW5zaXRpb25zIHtcbiAgLy8gU2xpZGVcbiAgLnNsaWRlLWluLWRvd24gICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBkb3duKTsgfVxuICAuc2xpZGUtaW4tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHJpZ2h0KTsgfVxuICAuc2xpZGUtaW4tdXAgICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGJvdHRvbSk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdG9wKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBGb3JtYXQgZm9yIENTUyBjbGFzc2VzIGNyZWF0ZWQgd2l0aCBNb3Rpb24gVUkuXG4vLy8gQHR5cGUgTWFwXG4vLy8gQHByb3Age0Jvb2xlYW59IGFwcGVuZCBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNlbGVjdG9ycyBhcmUgY2hhaW5lZCB0byB0aGUgc2VsZWN0b3IgKGAuY2xhc3MuZW50ZXJgKSwgb3IgYXBwZW5kZWQgYXMgYSBuZXcgY2xhc3MgKGAuY2xhc3MtZW50ZXJgKS5cbi8vLyBAcHJvcCB7U3RyaW5nfSBwcmVmaXggWydtdWktJ10gLSBQcmVmaXggdG8gYWRkIGJlZm9yZSB0aGUgc3RhdGUgb2YgYSBjbGFzcy4gRW50ZXIgYW4gZW1wdHkgc3RyaW5nIHRvIHVzZSBubyBwcmVmaXguXG4vLy8gQHByb3Age1N0cmluZ30gcHJlZml4IFsnLWFjdGl2ZSddIC0gU3VmZml4IHRvIGFkZCB0byB0aGUgYWN0aXZlIHN0YXRlIGNsYXNzLlxuJG1vdGlvbi11aS1jbGFzc2VzOiAoXG4gIGNoYWluOiB0cnVlLFxuICBwcmVmaXg6ICdtdWktJyxcbiAgYWN0aXZlOiAnLWFjdGl2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gU3RhdGUgbmFtZXMgdG8gcmVmZXJlbmNlIHdoZW4gd3JpdGluZyBtb3Rpb24gY2xhc3Nlcy4gVG8gdXNlIG11bHRpcGxlIGNsYXNzIG5hbWVzIGZvciBvbmUgc3RhdGUsIGVudGVyIGEgbGlzdCBvZiBzdHJpbmdzIGluc3RlYWQgb2Ygb25lIHN0cmluZy5cbi8vLyBAdHlwZSBNYXBcbiRtb3Rpb24tdWktc3RhdGVzOiAoXG4gIGluOiAnZW50ZXInLFxuICBvdXQ6ICdsZWF2ZScsXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzcGVlZCB0aGF0IHRyYW5zaXRpb25zIGFuZCBhbmltYXRpb25zIHBsYXkgYXQsIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgc3BlZWQuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLXNwZWVkczogKFxuICBkZWZhdWx0OiA1MDBtcyxcbiAgc2xvdzogNzUwbXMsXG4gIGZhc3Q6IDI1MG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZGVsYXkgdG8gYWRkIGJlZm9yZSBtb3Rpb24sIGFsb25nIHdpdGggdmFsdWVzIGZvciBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0aGUgZGVsYXkuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWRlbGF5czogKFxuICBkZWZhdWx0OiAwLFxuICBzaG9ydDogMzAwbXMsXG4gIGxvbmc6IDcwMG1zLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZWFzaW5nIGZvciB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucywgYWxvbmcgd2l0aCB2YWx1ZXMgZm9yIG1vZGlmaWVyIGNsYXNzZXMgdG8gY2hhbmdlIHRoZSBlYXNpbmcuXG4vLy8gQHR5cGUgTWFwXG4kbW90aW9uLXVpLWVhc2luZ3M6IChcbiAgZGVmYXVsdDogbGluZWFyLFxuICBsaW5lYXI6IGxpbmVhcixcbiAgZWFzZTogZWFzZSxcbiAgZWFzZS1pbjogZWFzZS1pbixcbiAgZWFzZS1vdXQ6IGVhc2Utb3V0LFxuICBlYXNlLWluLW91dDogZWFzZS1pbi1vdXQsXG4gIGJvdW5jZS1pbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpLFxuICBib3VuY2Utb3V0OiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpLFxuICBib3VuY2UtaW4tb3V0OiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSksXG4pICFkZWZhdWx0O1xuXG4vLy8gTWlzY2VsbGFuZW91cyBzZXR0aW5ncyByZWxhdGVkIHRvIE1vdGlvbiBVSS5cbi8vLyBAdHlwZSBNYXBcbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW2ZhbHNlXSAtIERlZmluZXMgaWYgc2xpZGUgbW90aW9ucyBzaG91bGQgYWxzbyBmYWRlIGluL291dC5cbi8vLyBAcHJvcCB7Qm9vbGVhbn0gc2xpZGUtYW5kLWZhZGUgW3RydWVdIC0gRGVmaW5lcyBpZiBoaW5nZSBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuLy8vIEBwcm9wIHtCb29sZWFufSBzbGlkZS1hbmQtZmFkZSBbdHJ1ZV0gLSBEZWZpbmVzIGlmIHNjYWxlIG1vdGlvbnMgc2hvdWxkIGFsc28gZmFkZSBpbi9vdXQuXG4vLy8gQHByb3Age0Jvb2xlYW59IHNsaWRlLWFuZC1mYWRlIFt0cnVlXSAtIERlZmluZXMgaWYgc3BpbiBtb3Rpb25zIHNob3VsZCBhbHNvIGZhZGUgaW4vb3V0LlxuJG1vdGlvbi11aS1zZXR0aW5nczogKFxuICBzbGlkZS1hbmQtZmFkZTogZmFsc2UsXG4gIGhpbmdlLWFuZC1mYWRlOiB0cnVlLFxuICBzY2FsZS1hbmQtZmFkZTogdHJ1ZSxcbiAgc3Bpbi1hbmQtZmFkZTogdHJ1ZSxcbiAgYWN0aXZhdGUtcXVldWUtY2xhc3M6ICdpcy1hbmltYXRpbmcnLFxuKSAhZGVmYXVsdDtcbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBDb2xvclZhcmlhYmxlLCBRdWFsaWZ5aW5nRWxlbWVudCwgVmVuZG9yUHJlZml4XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjMjE5OWU4LFxuICBzZWNvbmRhcnk6ICM3NzcsXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXG4gIHdhcm5pbmc6ICNmZmFlMDAsXG4gIGFsZXJ0OiAjZWM1ODQwLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbiRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpO1xuJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpO1xuJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcyk7XG4kd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKTtcbiRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XG5cbi8vIFJlbW92ZSB0aGlzIGluIDYuM1xuJC16Zi1tZW51LWljb24taW1wb3J0ZWQ6IGZhbHNlO1xuJC16Zi1mbGV4LWNsYXNzZXMtaW1wb3J0ZWQ6IGZhbHNlO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgLXpmLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG5cbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgSWRTZWxlY3RvclxuICAjbWFwX2NhbnZhcyxcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBMb2FkcyBub3JtYWxpemUuY3NzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC16Zi1ub3JtYWxpemUge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2My4wLjMgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLyoqXG4gICAqIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4gICAqIDIuIFByZXZlbnQgaU9TIGFuZCBJRSB0ZXh0IHNpemUgYWRqdXN0IGFmdGVyIGRldmljZSBvcmllbnRhdGlvbiBjaGFuZ2UsXG4gICAqICAgIHdpdGhvdXQgZGlzYWJsaW5nIHVzZXIgem9vbS5cbiAgICovXG5cbiAgaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8qIDEgKi9cbiAgICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSBkZWZhdWx0IG1hcmdpbi5cbiAgICovXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLyogSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYW55IEhUTUw1IGVsZW1lbnQgaW4gSUUgOC85LlxuICAgKiBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuICAgKiBhbmQgRmlyZWZveC5cbiAgICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAgICovXG5cbiAgYXJ0aWNsZSxcbiAgYXNpZGUsXG4gIGRldGFpbHMsXG4gIGZpZ2NhcHRpb24sXG4gIGZpZ3VyZSxcbiAgZm9vdGVyLFxuICBoZWFkZXIsXG4gIGhncm91cCxcbiAgbWFpbixcbiAgbWVudSxcbiAgbmF2LFxuICBzZWN0aW9uLFxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuICAgKiAyLiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gICAqL1xuXG4gIGF1ZGlvLFxuICBjYW52YXMsXG4gIHByb2dyZXNzLFxuICB2aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvKiAxICovXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbiAgICogUmVtb3ZlIGV4Y2VzcyBoZWlnaHQgaW4gaU9TIDUgZGV2aWNlcy5cbiAgICovXG5cbiAgYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4gICAqIEhpZGUgdGhlIGB0ZW1wbGF0ZWAgZWxlbWVudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIEZpcmVmb3ggPCAyMi5cbiAgICovXG5cbiAgW2hpZGRlbl0sXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLyogTGlua3NcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gICAqL1xuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLyoqXG4gICAqIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbiAgICogYWN0aXZlL2hvdmVyIHN0YXRlLlxuICAgKi9cblxuICBhOmFjdGl2ZSxcbiAgYTpob3ZlciB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAvMTEsIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQ7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbiAgICovXG5cbiAgZGZuIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyB2YXJpYWJsZSBgaDFgIGZvbnQtc2l6ZSBhbmQgbWFyZ2luIHdpdGhpbiBgc2VjdGlvbmAgYW5kIGBhcnRpY2xlYFxuICAgKiBjb250ZXh0cyBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4gICAqL1xuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkuXG4gICAqL1xuXG4gIG1hcmsge1xuICAgIGJhY2tncm91bmQ6ICNmZjA7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cblxuICAvKipcbiAgICogQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgLyogRW1iZWRkZWQgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cbiAgICovXG5cbiAgaW1nIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAvKipcbiAgICogQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4gICAqL1xuXG4gIHN2Zzpub3QoOnJvb3QpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLyogR3JvdXBpbmcgY29udGVudFxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbiAgICovXG5cbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDFlbSA0MHB4O1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAgICovXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIGhlaWdodDogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbiAgICovXG5cbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIG9kZCBgZW1gLXVuaXQgZm9udCBzaXplIHJlbmRlcmluZyBpbiBhbGwgYnJvd3NlcnMuXG4gICAqL1xuXG4gIGNvZGUsXG4gIGtiZCxcbiAgcHJlLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cblxuICAvKiBGb3Jtc1xuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gIC8qKlxuICAgKiBLbm93biBsaW1pdGF0aW9uOiBieSBkZWZhdWx0LCBDaHJvbWUgYW5kIFNhZmFyaSBvbiBPUyBYIGFsbG93IHZlcnkgbGltaXRlZFxuICAgKiBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4gICAqL1xuXG4gIC8qKlxuICAgKiAxLiBDb3JyZWN0IGNvbG9yIG5vdCBiZWluZyBpbmhlcml0ZWQuXG4gICAqICAgIEtub3duIGlzc3VlOiBhZmZlY3RzIGNvbG9yIG9mIGRpc2FibGVkIGVsZW1lbnRzLlxuICAgKiAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICAgKiAzLiBBZGRyZXNzIG1hcmdpbnMgc2V0IGRpZmZlcmVudGx5IGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbiAgICovXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGNvbG9yOiBpbmhlcml0OyAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xuICAgIG1hcmdpbjogMDsgLyogMyAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cblxuICBidXR0b24ge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbiAgICogQWxsIG90aGVyIGZvcm0gY29udHJvbCBlbGVtZW50cyBkbyBub3QgaW5oZXJpdCBgdGV4dC10cmFuc2Zvcm1gIHZhbHVlcy5cbiAgICogQ29ycmVjdCBgYnV0dG9uYCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LCBJRSA4LzkvMTAvMTEsIGFuZCBPcGVyYS5cbiAgICogQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuICAgKi9cblxuICBidXR0b24sXG4gIHNlbGVjdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvKipcbiAgICogMS4gQXZvaWQgdGhlIFdlYktpdCBidWcgaW4gQW5kcm9pZCA0LjAuKiB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2BcbiAgICogICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4gICAqIDIuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAgICogMy4gSW1wcm92ZSB1c2FiaWxpdHkgYW5kIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBiZXR3ZWVuIGltYWdlLXR5cGVcbiAgICogICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuICAgKi9cblxuICBidXR0b24sXG4gIGh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xuICBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4gIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG4gICAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXG4gIH1cblxuICAvKipcbiAgICogUmUtc2V0IGRlZmF1bHQgY3Vyc29yIGZvciBkaXNhYmxlZCBlbGVtZW50cy5cbiAgICovXG5cbiAgYnV0dG9uW2Rpc2FibGVkXSxcbiAgaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICAgKi9cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIGlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4gICAqIHRoZSBVQSBzdHlsZXNoZWV0LlxuICAgKi9cblxuICBpbnB1dCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJdCdzIHJlY29tbWVuZGVkIHRoYXQgeW91IGRvbid0IGF0dGVtcHQgdG8gc3R5bGUgdGhlc2UgZWxlbWVudHMuXG4gICAqIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4gICAqXG4gICAqIDEuIEFkZHJlc3MgYm94IHNpemluZyBzZXQgdG8gYGNvbnRlbnQtYm94YCBpbiBJRSA4LzkvMTAuXG4gICAqIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4gICAqL1xuXG4gIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbiAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gICAgcGFkZGluZzogMDsgLyogMiAqL1xuICB9XG5cbiAgLyoqXG4gICAqIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4gICAqIGBmb250LXNpemVgIHZhbHVlcyBvZiB0aGUgYGlucHV0YCwgaXQgY2F1c2VzIHRoZSBjdXJzb3Igc3R5bGUgb2YgdGhlXG4gICAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAgICovXG5cbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLyoqXG4gICAqIDEuIEFkZHJlc3MgYGFwcGVhcmFuY2VgIHNldCB0byBgc2VhcmNoZmllbGRgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKiAyLiBBZGRyZXNzIGBib3gtc2l6aW5nYCBzZXQgdG8gYGJvcmRlci1ib3hgIGluIFNhZmFyaSBhbmQgQ2hyb21lLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLyogMSAqL1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAyICovXG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4gICAqIFNhZmFyaSAoYnV0IG5vdCBDaHJvbWUpIGNsaXBzIHRoZSBjYW5jZWwgYnV0dG9uIHdoZW4gdGhlIHNlYXJjaCBpbnB1dCBoYXNcbiAgICogcGFkZGluZyAoYW5kIGB0ZXh0ZmllbGRgIGFwcGVhcmFuY2UpLlxuICAgKi9cblxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvKipcbiAgICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICAgKiBbTk9URV0gV2UgZG9uJ3QgZW5hYmxlIHRoaXMgcnVsZXNldCBpbiBGb3VuZGF0aW9uLCBiZWNhdXNlIHdlIHdhbnQgdGhlIDxmaWVsZHNldD4gZWxlbWVudCB0byBoYXZlIHBsYWluIHN0eWxpbmcuXG4gICAqL1xuXG4gIC8qIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgIG1hcmdpbjogMCAycHg7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xuICB9ICovXG5cbiAgLyoqXG4gICAqIDEuIENvcnJlY3QgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGluIElFIDgvOS8xMC8xMS5cbiAgICogMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuICAgKi9cblxuICBsZWdlbmQge1xuICAgIGJvcmRlcjogMDsgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7IC8qIDIgKi9cbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICAgKi9cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvKipcbiAgICogRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuICAgKiBOT1RFOiB0aGUgZGVmYXVsdCBjYW5ub3Qgc2FmZWx5IGJlIGNoYW5nZWQgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gT1MgWC5cbiAgICovXG5cbiAgb3B0Z3JvdXAge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB9XG5cbiAgLyogVGFibGVzXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbiAgLyoqXG4gICAqIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAgICovXG5cbiAgdGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cblxuICB0ZCxcbiAgdGgge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDbG9zZSBCdXR0b25cclxuLy8gIDE1LiBEcmlsbGRvd25cclxuLy8gIDE2LiBEcm9wZG93blxyXG4vLyAgMTcuIERyb3Bkb3duIE1lbnVcclxuLy8gIDE4LiBGbGV4IFZpZGVvXHJcbi8vICAxOS4gRm9ybXNcclxuLy8gIDIwLiBMYWJlbFxyXG4vLyAgMjEuIE1lZGlhIE9iamVjdFxyXG4vLyAgMjIuIE1lbnVcclxuLy8gIDIzLiBNZXRlclxyXG4vLyAgMjQuIE9mZi1jYW52YXNcclxuLy8gIDI1LiBPcmJpdFxyXG4vLyAgMjYuIFBhZ2luYXRpb25cclxuLy8gIDI3LiBQcm9ncmVzcyBCYXJcclxuLy8gIDI4LiBSZXZlYWxcclxuLy8gIDI5LiBTbGlkZXJcclxuLy8gIDMwLiBTd2l0Y2hcclxuLy8gIDMxLiBUYWJsZVxyXG4vLyAgMzIuIFRhYnNcclxuLy8gIDMzLiBUaHVtYm5haWxcclxuLy8gIDM0LiBUaXRsZSBCYXJcclxuLy8gIDM1LiBUb29sdGlwXHJcbi8vICAzNi4gVG9wIEJhclxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG4vLyAxLiBHbG9iYWwgXHJcbi8vIC0tLS0tLS0tLVxyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTQ5MCk7XHJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xyXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoIHByaW1hcnk6ICMwQjg2NTEsIC8vIzIxOTllOCxcclxuc2Vjb25kYXJ5OiAjNzc3LCBzdWNjZXNzOiAjM2FkYjc2LCB3YXJuaW5nOiAjZmZhZTAwLCBhbGVydDogI2VjNTg0MCwgKTtcclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XHJcbiRtZWRpdW0tZ3JheTogIzY3Njc2NztcclxuJGRhcmstZ3JheTogIzhhOGE4YTtcclxuJGJsYWNrOiAjMGEwYTBhO1xyXG4kd2hpdGU6ICNmZWZlZmU7XHJcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuJGJvZHktZm9udC1mYW1pbHk6ICdIZXVyaXN0aWNhJztcclxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XHJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XHJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xyXG4kZ2xvYmFsLXJhZGl1czogMDtcclxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xyXG4kZ2xvYmFsLWZsZXhib3g6IHRydWU7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xyXG4vLyAyLiBCcmVha3BvaW50c1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG4kYnJlYWtwb2ludHM6ICggc21hbGw6IDAsIHNtYWxsbWVkaXVtOiA0ODBweCwgbWVkaXVtOiA3NjhweCwgbGFyZ2U6IDEwMjRweCwgeGxhcmdlOiAxMjgwcHgsIHh4bGFyZ2U6IDE0NDBweCwgeHh4bGFyZ2U6IDE5MDBweCk7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gc21hbGxtZWRpdW0gbGFyZ2UgeGxhcmdlIHh4bGFyZ2UgeHhsYXJnZSk7XHJcbi8vIDMuIFRoZSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKCBzbWFsbDogNDBweCwgbWVkaXVtOiAxMDBweCwgbGFyZ2U6IDQwcHgpO1xyXG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcclxuJGJsb2NrLWdyaWQtbWF4OiA4O1xyXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcyxcclxuJ0xpYmVyYXRpb24gTW9ubycsXHJcbkNvdXJpZXIsXHJcbm1vbm9zcGFjZTtcclxuJGhlYWRlci1zaXplczogKCBzbWFsbDogKCAnaDEnOiAyNCwgJ2gyJzogMjAsICdoMyc6IDE5LCAnaDQnOiAxOCwgJ2g1JzogMTcsICdoNic6IDE2KSwgbWVkaXVtOiAoICdoMSc6IDQ4LCAnaDInOiA0MCwgJ2gzJzogMzEsICdoNCc6IDI1LCAnaDUnOiAyMCwgJ2g2JzogMTYpLCApO1xyXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuJHNtYWxsLWZvbnQtc2l6ZTogNzUlO1xyXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XHJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kY29kZS1jb2xvcjogJGJsYWNrO1xyXG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xyXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xyXG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XHJcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xyXG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbi8vJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcclxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcclxuJGxlYWQtbGluZWhlaWdodDogMS42O1xyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcclxuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xyXG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4vLyA3LiBBY2NvcmRpb25cclxuLy8gLS0tLS0tLS0tLS0tXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xyXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XHJcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiBmb3JlZ3JvdW5kKCRhY2NvcmRpb24tYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbi8vIDkuIEJhZGdlXHJcbi8vIC0tLS0tLS0tXHJcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJhZGdlLWNvbG9yOiBmb3JlZ3JvdW5kKCRiYWRnZS1iYWNrZ3JvdW5kKTtcclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XHJcbi8vIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAtLS0tLS0tLS0tLS0tLS1cclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XHJcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xyXG4vLyAxMS4gQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS1cclxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtO1xyXG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRidXR0b24tZmlsbDogc29saWQ7XHJcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcclxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xyXG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRidXR0b24tc2l6ZXM6ICggdGlueTogMC42cmVtLCBzbWFsbDogMC43NXJlbSwgZGVmYXVsdDogMC45cmVtLCBsYXJnZTogMS4yNXJlbSwgKTtcclxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4vLyAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcclxuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XHJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xyXG4vLyAxMy4gQ2FsbG91dFxyXG4vLyAtLS0tLS0tLS0tLVxyXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xyXG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSk7XHJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMDtcclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbTtcclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xyXG4vLyAxNC4gQ2xvc2UgQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogMXJlbTtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogMC41cmVtO1xyXG4kY2xvc2VidXR0b24tc2l6ZTogMmVtO1xyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcclxuLy8gMTUuIERyaWxsZG93blxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcclxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XHJcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuLy8gMTYuIERyb3Bkb3duXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcclxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbTtcclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRkcm9wZG93bi1zaXplczogKCB0aW55OiAxMDBweCwgc21hbGw6IDIwMHB4LCBsYXJnZTogNDAwcHgsICk7XHJcbi8vIDE3LiBEcm9wZG93biBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xyXG4kZHJvcGRvd25tZW51LW1pbi13aWR0aDogMjAwcHg7XHJcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuLy8gMTguIEZsZXggVmlkZW9cclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuJGZsZXh2aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XHJcbiRmbGV4dmlkZW8tcmF0aW86IDQgYnkgMztcclxuJGZsZXh2aWRlby1yYXRpby13aWRlc2NyZWVuOiAxNiBieSA5O1xyXG4vLyAxOS4gRm9ybXNcclxuLy8gLS0tLS0tLS0tXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcclxuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xyXG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogZGVmYXVsdDtcclxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cyxcclxuYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xyXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gMjAuIExhYmVsXHJcbi8vIC0tLS0tLS0tLVxyXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRsYWJlbC1jb2xvcjogZm9yZWdyb3VuZCgkbGFiZWwtYmFja2dyb3VuZCk7XHJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gMjEuIE1lZGlhIE9iamVjdFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcclxuLy8gMjIuIE1lbnVcclxuLy8gLS0tLS0tLS1cclxuJG1lbnUtbWFyZ2luOiAwO1xyXG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xyXG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpO1xyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcbi8vIDIzLiBNZXRlclxyXG4vLyAtLS0tLS0tLS1cclxuJG1ldGVyLWhlaWdodDogMXJlbTtcclxuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcclxuLy8gMjQuIE9mZi1jYW52YXNcclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuJG9mZmNhbnZhcy1zaXplOiAyNTBweDtcclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJG9mZmNhbnZhcy16aW5kZXg6IC0xO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xyXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcclxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JztcclxuJG1haW5jb250ZW50LXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNSk7XHJcbi8vIDI1LiBPcmJpdFxyXG4vLyAtLS0tLS0tLS1cclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XHJcbi8vIDI2LiBQYWdpbmF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpO1xyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3I7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogZm9yZWdyb3VuZCgkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xyXG4vLyAyNy4gUHJvZ3Jlc3MgQmFyXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4vLyAyOC4gUmV2ZWFsXHJcbi8vIC0tLS0tLS0tLS1cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG4vLyAyOS4gU2xpZGVyXHJcbi8vIC0tLS0tLS0tLS1cclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xyXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xyXG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcclxuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcclxuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcclxuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4vLyAzMC4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc3dpdGNoLWhlaWdodDogMnJlbTtcclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XHJcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XHJcbi8vIDMxLiBUYWJsZVxyXG4vLyAtLS0tLS0tLS1cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XHJcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XHJcbi8vIDMyLiBUYWJzXHJcbi8vIC0tLS0tLS0tXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XHJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWV4cGFuZC1tYXg6IDY7XHJcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbnRlbnQtY29sb3I6IGZvcmVncm91bmQoJHRhYi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcik7XHJcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xyXG4vLyAzMy4gVGh1bWJuYWlsXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XHJcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xyXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XHJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuLy8gMzQuIFRpdGxlIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xyXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xyXG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcclxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuLy8gMzUuIFRvb2x0aXBcclxuLy8gLS0tLS0tLS0tLS1cclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbi8vIDM2LiBUb3AgQmFyXHJcbi8vIC0tLS0tLS0tLS0tXHJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xyXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDFyZW07XHJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xyXG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtOyIsIi8vIFdlcyBQYWxldHRlXHJcblxyXG4kY29sb3ItZ3JlZW4tYW5jOiAjMEI4NjUxOy8vIGNoYW5nZWQgMDFhZjY1OyAvLyBhbmNob3IgZ3JlZW4gXHJcbiRjb2xvci1ncmVlbjogIzAwZTg2MjsgLy8gYmFubmVyIHRpdGxlIGdyZWVuIC0gYnJpZ2h0IGdyZWVuXHJcbiRjb2xvci1ncmVlbi1iZzogIzAzYTM1ZjsgLy8gaW52ZXN0b3JzIGJnXHJcbiRjb2xvci1ncmVlbi10aXRsZTogIzAxYjA2NjsgLy8gc3ViIG5hdiB0aXRsZSBncmVlblxyXG4kY29sb3ItZ3JlZW4tY29ycDojMjY3ZTQ0OyAvLyBtYWluIGNvcnBvcmF0ZSBncmVlbjtcclxuJGNvbG9yLWdyZWVuLXRpbGVzLWhvdmVyOiMxM2Q1NjM7XHJcbiRjb2xvci1ncmVlbi1mb290ZXItaG92ZXI6IzE0ZGM2NjtcclxuXHJcbiRjb2xvci1ncmV5LWJvZHk6ICMyYzJmMmY7IC8vIGdsb2JhbCBncmV5IC0gYm9keSB0ZXh0ICYgaGVhZGVyc1xyXG4kY29sb3ItZ3JleS1uYXY6ICMzNjNhNDU7IC8vIGdsb2JhbCBuYXYgb2ZmIHN0YXRlXHJcblxyXG4kY29sb3ItZ3JleS1zdHJva2U6ICM5Njk3OTc7XHJcblxyXG4kY29sb3ItZ3JleTM6ICM2MTYzNjM7IC8vIHN1YiBuYXYgc2VjdGlvbiB0aXRsZVxyXG4kY29sb3ItZ3JleTQ6ICM2MTYzNjMgOy8vICM4ZThmOGY7IC8vIHN1YiBuYXYgY29weSAvLyByZXBsYWNlbWVudCBncmV5IGZvciB0ZXh0XHJcbiRjb2xvci1ncmV5NTogIzNjM2UzZTsgLy8gZ3JleSBoaWdobGlnaHQgY2lyY2xlIGluIGZvb3RlclxyXG4kY29sb3ItZ3JleTY6ICNjYWNiY2I7IC8vIGdyZXkgc2hhcmUgcHJpY2UgZm9vdGVyXHJcbiRjb2xvci1ncmV5LXdoaXRlOiAjZWFlYWVhO1xyXG4kY29sb3ItZ3JleS1mdHItc3Ryb2tlOiAjNWY2MTYxO1xyXG4kY29sb3Itc2VjdGlvbi1iZzogI2ViZjBmMTtcclxuJGNvbG9yLXNlYXJjaC1tYmwtYmc6ICMyODI4Mjg7XHJcbiRjb2xvci1tYmwtYmFjazogIzYyNjQ2NDtcclxuJGNvbG9yLWNvbnRlbnQtbmF2LWhvdmVyOiAjNjE2MzYzO1xyXG4kY29sb3ItZ3JleS1tYmwtc3Ryb2tlOiAjZDdkZWRmO1xyXG4kY29sb3ItZ3JleS1yZWxhdGVkLXN0cm9rZTogI2EzYTRhNDtcclxuJGNvbG9yLXRpbWVsaW5lLXN0cm9rZTogIzRiNGM0YztcclxuJGNvbG9yLXRpbWVsaW5lLWZpbHRlcjogIzU2NTc1NztcclxuJGNvbG9yLXRpbWVsaW5lLWZpbHRlci1mb250OiAjZTZlNmU2O1xyXG4kY29sb3ItdGltZWxpbmUtZmlsdGVyLW9uOiAjMDBlOTYzO1xyXG4kY29sb3ItdGltZWxpbmUtZmlsdGVyLW9uLWZvbnQ6ICMzMzMyMzE7XHJcblxyXG4kY29sb3Itb3JhbmdlOiAjZWM2NzFjO1xyXG5cclxuJHdpZHRoOiAxMDAlO1xyXG4kaGVpZ2h0OiAxMDAlO1xyXG4kbWF4V2lkdGg6IDE0NDBweDtcclxuJG1hcmdpbkF1dG86IDAgYXV0bztcclxuJG1hc3RlcldpZHRoOiAxNDQwcHg7IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoMSAvICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFJlbW92ZXMgdGhlIGZvY3VzIHJpbmcgYXJvdW5kIGFuIGVsZW1lbnQgd2hlbiBhIG1vdXNlIGlucHV0IGlzIGRldGVjdGVkLlxuQG1peGluIGRpc2FibGUtbW91c2Utb3V0bGluZSB7XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAmIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi8vLyBNYWtlcyBhbiBlbGVtZW50IHZpc3VhbGx5IGhpZGRlbiwgYnV0IHN0aWxsIGFjY2Vzc2libGUgdG8ga2V5Ym9hcmRzIGFuZCBhc3Npc3RpdmUgZGV2aWNlcy5cbi8vLyBAbGluayBodHRwOi8vc25vb2suY2EvYXJjaGl2ZXMvaHRtbF9hbmRfY3NzL2hpZGluZy1jb250ZW50LWZvci1hY2Nlc3NpYmlsaXR5IEhpZGluZyBDb250ZW50IGZvciBBY2Nlc3NpYmlsaXR5XG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUpIHtcbiAgJG1hcDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJG1hcDogbWFwLXJlbW92ZSgkbWFwLCAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gIH1cblxuICBAZWFjaCAkc2l6ZSBpbiAkbWFwIHtcbiAgICAkLXpmLXNpemU6ICRzaXplICFnbG9iYWw7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIGNvbnRhaW5lciBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLXJvdy13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSByb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRjb2x1bW5zIFtudWxsXSAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZSBmb3IgdGhpcyByb3cuIElmIHNldCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSwgdGhlIGdsb2JhbCBjb2x1bW4gY291bnQgd2lsbCBiZSB1c2VkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGJhc2UgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gcHJldmVudCBiYXNpYyBzdHlsZXMgZnJvbSBiZWluZyBvdXRwdXQuIFVzZWZ1bCBpZiB5b3UncmUgY2FsbGluZyB0aGlzIG1peGluIG9uIHRoZSBzYW1lIGVsZW1lbnQgdHdpY2UsIGFzIGl0IHByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgb3V0cHV0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93KFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICR3aWR0aDogJGdyaWQtcm93LXdpZHRoLFxuICAkY29sdW1uczogbnVsbCxcbiAgJGJhc2U6IHRydWUsXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcik7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1heC13aWR0aDogJHdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuXG4gIEBpZiAkYmFzZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucywgJGJhc2UpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgYGZsZXhgIHByb3BlcnR5IGZvciBhIGZsZXggZ3JpZCBjb2x1bW4uIEl0IGFjY2VwdHMgYWxsIG9mIHRoZSBzYW1lIHZhbHVlcyBhcyB0aGUgYmFzaWMgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uLCBhbG9uZyB3aXRoIHR3byBleHRyYXM6XG4vLy8gICAtIGBudWxsYCAodGhlIGRlZmF1bHQpIHdpbGwgbWFrZSB0aGUgY29sdW1uIGV4cGFuZCB0byBmaWxsIHNwYWNlLlxuLy8vICAgLSBgc2hyaW5rYCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBjb250cmFjdCwgc28gaXQgb25seSB0YWtlcyB1cCB0aGUgaG9yaXpvbnRhbCBzcGFjZSBpdCBuZWVkcy5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtudWxsXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uXG5AZnVuY3Rpb24gZmxleC1ncmlkLWNvbHVtbigkY29sdW1uczogbnVsbCkge1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAkZmxleDogMSAxIDBweDtcblxuICBAaWYgJGNvbHVtbnMgPT0gc2hyaW5rIHtcbiAgICAkZmxleDogMCAwIGF1dG87XG4gIH1cbiAgQGVsc2UgaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgJGZsZXg6IDAgMCBncmlkLWNvbHVtbigkY29sdW1ucyk7XG4gIH1cblxuICBAcmV0dXJuICRmbGV4O1xufVxuXG4vLy8gQ3JlYXRlcyBhIGNvbHVtbiBmb3IgYSBmbGV4IGdyaWQuIEJ5IGRlZmF1bHQsIHRoZSBjb2x1bW4gd2lsbCBzdHJldGNoIHRvIHRoZSBmdWxsIHdpZHRoIG9mIGl0cyBjb250YWluZXIsIGJ1dCB0aGlzIGNhbiBiZSBvdmVycmlkZGVuIHdpdGggc2l6aW5nIGNsYXNzZXMsIG9yIGJ5IHVzaW5nIHRoZSBgdW5zdGFja2AgY2xhc3Mgb24gdGhlIHBhcmVudCBmbGV4IHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFtudWxsXSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZmxleC1ncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNlIGJldHdlZW4gY29sdW1ucywgYWRkZWQgYXMgYSBsZWZ0IGFuZCByaWdodCBwYWRkaW5nLlxuQG1peGluIGZsZXgtZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiBudWxsLFxuICAkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgLy8gQmFzZSBwcm9wZXJ0aWVzXG4gIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuXG4gIC8vIEd1dHRlcnNcbiAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAvIDI7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgLyAyO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIH1cblxuICAvLyBmaXhlcyByZWNlbnQgQ2hyb21lIHZlcnNpb24gbm90IGxpbWl0aW5nIGNoaWxkIHdpZHRoXG4gIC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM0OTM0NTg2L3doaXRlLXNwYWNlLW5vd3JhcC1hbmQtZmxleGJveC1kaWQtbm90LXdvcmstaW4tY2hyb21lXG4gIEBpZiAkY29sdW1ucyA9PSBudWxsIHtcbiAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gIH1cbiAgLy8gbWF4LXdpZHRoIGZpeGVzIElFIDEwLzExIG5vdCByZXNwZWN0aW5nIHRoZSBmbGV4LWJhc2lzIHByb3BlcnR5XG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIGFuZCAkY29sdW1ucyAhPSBzaHJpbmsge1xuICAgIG1heC13aWR0aDogZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgYmxvY2sgZ3JpZCBmb3IgYSBmbGV4IGdyaWQgcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGNvbHVtbnMgdG8gZGlzcGxheSBvbiBlYWNoIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIC0gU2VsZWN0b3IgdG8gdXNlIHRvIHRhcmdldCBjb2x1bW5zIHdpdGhpbiB0aGUgcm93LlxuQG1peGluIGZsZXgtZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJ1xuKSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgJHBjdDogcGVyY2VudGFnZSgxLyRuKTtcblxuICAgIGZsZXg6IDAgMCAkcGN0O1xuICAgIG1heC13aWR0aDogJHBjdDtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc291cmNlIG9yZGVyIG9mIGEgZmxleCBncmlkIGNvbHVtbi4gQ29sdW1ucyB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1ncmlkLW9yZGVyKCRvcmRlcjogMCkge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmbGV4LW9yZGVyKCkuIGZsZXgtZ3JpZC1vcmRlcigpIHdpbGwgYmUgcmVtb3ZlZCBpbiBGb3VuZGF0aW9uIDYuMy4nO1xuICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRvcmRlcik7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGNvbHVtbnMgd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHggW251bGxdIC0gSG9yaXpvbnRhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYGxlZnRgLCBgcmlnaHRgLCBgY2VudGVyYCwgYGp1c3RpZnlgLCBvciBgc3BhY2VkYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IGhvcml6b250YWwgYWxpZ25tZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWdyaWQtcm93LWFsaWduKCR4OiBudWxsLCAkeTogbnVsbCkge1xuICBAd2FybiAnVGhpcyBtaXhpbiBpcyBiZWluZyByZXBsYWNlZCBieSBmbGV4LWFsaWduKCkuIGZsZXgtZ3JpZC1yb3ctYWxpZ24oKSB3aWxsIGJlIHJlbW92ZWQgaW4gRm91bmRhdGlvbiA2LjMuJztcbiAgQGluY2x1ZGUgZmxleC1hbGlnbigkeCwgJHkpO1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWdyaWQtY29sdW1uLWFsaWduKCR5OiBudWxsKSB7XG4gIEB3YXJuICdUaGlzIG1peGluIGlzIGJlaW5nIHJlcGxhY2VkIGJ5IGZsZXgtYWxpZ24tc2VsZigpLiBmbGV4LWdyaWQtY29sdW1uLWFsaWduKCkgd2lsbCBiZSByZW1vdmVkIGluIEZvdW5kYXRpb24gNi4zLic7XG4gIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeSk7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtZ3JpZCB7XG4gIC8vIFJvd1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93O1xuXG4gICAgLy8gTmVzdGluZyBiZWhhdmlvclxuICAgICYgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWdyaWQtcm93KG5lc3QsICRiYXNlOiBmYWxzZSk7XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgcm93XG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBVbmRvIG5lZ2F0aXZlIG1hcmdpbnNcbiAgICAvLyBGcm9tIGNvbGxhcHNlZCBjaGlsZFxuICAgICYuaXMtY29sbGFwc2UtY2hpbGQsXG4gICAgJi5jb2xsYXBzZSA+IC5jb2x1bW4gPiAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuY29sdW1uIHtcbiAgICBAaW5jbHVkZSBmbGV4LWdyaWQtY29sdW1uO1xuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC5jb2x1bW4ucm93LnJvdyB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLnJvdyAuY29sdW1uLnJvdy5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCRpKTtcbiAgICAgICAgbWF4LXdpZHRoOiBncmlkLWNvbHVtbigkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRvKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDYge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1ncmlkLWxheW91dCgkaSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICQtemYtc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAvLyBTaXppbmcgKGV4cGFuZClcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tZXhwYW5kIHtcbiAgICAgICAgICBmbGV4OiBmbGV4LWdyaWQtY29sdW1uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gQXV0by1zdGFja2luZy91bnN0YWNraW5nXG4gICAgICBAYXQtcm9vdCAod2l0aG91dDogbWVkaWEpIHtcbiAgICAgICAgLnJvdy4jeyQtemYtc2l6ZX0tdW5zdGFjayB7XG4gICAgICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oMTAwJSk7XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi1zaXplKSB7XG4gICAgICAgICAgICAgIGZsZXg6IGZsZXgtZ3JpZC1jb2x1bW4oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGNvbGxhcHNpbmdcbiAgICAuI3skLXpmLXNpemV9LWNvbGxhcHNlIHtcbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS11bmNvbGxhcHNlIHtcbiAgICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRncmlkLWNvbHVtbi1ndXR0ZXIsICQtemYtc2l6ZSk7XG5cbiAgICAgID4gLmNvbHVtbiB7IEBpbmNsdWRlIGdyaWQtY29sLXVuY29sbGFwc2UoJGd1dHRlcik7IH1cbiAgICB9XG4gIH1cblxuICAvLyBTaXppbmcgKHNocmluaylcbiAgLnNocmluayB7XG4gICAgZmxleDogZmxleC1ncmlkLWNvbHVtbihzaHJpbmspO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICAvLyBSZW1vdmUgdGhlc2UgaW4gNi4zXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5jb2x1bW4uYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR2ZGlyKTtcbiAgICB9XG4gIH1cblxuICAuY29sdW1ucyB7XG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgUGxhY2Vob2xkZXJJbkV4dGVuZFxuICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuXG4vLy8gUmVtb3ZlcyB0aGUgdW5pdCAoZS5nLiBweCwgZW0sIHJlbSkgZnJvbSBhIHZhbHVlLCByZXR1cm5pbmcgdGhlIG51bWJlciBvbmx5LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRudW0gLSBOdW1iZXIgdG8gc3RyaXAgdW5pdCBmcm9tLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIHNhbWUgbnVtYmVyLCBzYW5zIHVuaXQuXG5AZnVuY3Rpb24gc3RyaXAtdW5pdCgkbnVtKSB7XG4gIEByZXR1cm4gJG51bSAvICgkbnVtICogMCArIDEpO1xufVxuXG4vLy8gQ29udmVydHMgb25lIG9yIG1vcmUgcGl4ZWwgdmFsdWVzIGludG8gbWF0Y2hpbmcgcmVtIHZhbHVlcy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICR2YWx1ZXMgLSBPbmUgb3IgbW9yZSB2YWx1ZXMgdG8gY29udmVydC4gQmUgc3VyZSB0byBzZXBhcmF0ZSB0aGVtIHdpdGggc3BhY2VzIGFuZCBub3QgY29tbWFzLiBJZiB5b3UgbmVlZCB0byBjb252ZXJ0IGEgY29tbWEtc2VwYXJhdGVkIGxpc3QsIHdyYXAgdGhlIGxpc3QgaW4gcGFyZW50aGVzZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlIFtudWxsXSAtIFRoZSBiYXNlIHZhbHVlIHRvIHVzZSB3aGVuIGNhbGN1bGF0aW5nIHRoZSBgcmVtYC4gSWYgeW91J3JlIHVzaW5nIEZvdW5kYXRpb24gb3V0IG9mIHRoZSBib3gsIHRoaXMgaXMgMTZweC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgYG51bGxgLCB0aGUgZnVuY3Rpb24gd2lsbCByZWZlcmVuY2UgdGhlIGAkYmFzZS1mb250LXNpemVgIHZhcmlhYmxlIGFzIHRoZSBiYXNlLlxuLy8vXG4vLy8gQHJldHVybnMge0xpc3R9IEEgbGlzdCBvZiBjb252ZXJ0ZWQgdmFsdWVzLlxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlOiBudWxsKSB7XG4gICRyZW0tdmFsdWVzOiAoKTtcbiAgJGNvdW50OiBsZW5ndGgoJHZhbHVlcyk7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIC8vIFRoaXMgaXMgYmVjYXVzZSAxMDAlIGZvbnQgc2l6ZSA9IDE2cHggaW4gbW9zdCBhbGwgYnJvd3NlcnNcbiAgQGlmIHVuaXQoJGJhc2UpID09ICclJyB7XG4gICAgJGJhc2U6ICgkYmFzZSAvIDEwMCUpICogMTZweDtcbiAgfVxuICBcbiAgLy8gVXNpbmcgcmVtIGFzIGJhc2UgYWxsb3dzIGNvcnJlY3Qgc2NhbGluZ1xuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgJGNvdW50ID09IDEge1xuICAgIEByZXR1cm4gLXpmLXRvLXJlbSgkdmFsdWVzLCAkYmFzZSk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb3VudCB7XG4gICAgJHJlbS12YWx1ZXM6IGFwcGVuZCgkcmVtLXZhbHVlcywgLXpmLXRvLXJlbShudGgoJHZhbHVlcywgJGkpLCAkYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuLy8gQ29udmVydHMgYSB1bml0bGVzcywgcGl4ZWwsIG9yIHJlbSB2YWx1ZSB0byBlbSwgZm9yIHVzZSBpbiBicmVha3BvaW50cy5cbkBmdW5jdGlvbiAtemYtYnAtdG8tZW0oJHZhbHVlKSB7XG4gIC8vIFBpeGVsIGFuZCB1bml0bGVzcyB2YWx1ZXMgYXJlIGNvbnZlcnRlZCB0byByZW1zXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ3B4JyBvciB1bml0bGVzcygkdmFsdWUpIHtcbiAgICAkdmFsdWU6IHJlbS1jYWxjKCR2YWx1ZSwgJGJhc2U6IDE2cHgpO1xuICB9XG5cbiAgLy8gVGhlbiB0aGUgdmFsdWUgaXMgY29udmVydGVkIHRvIGVtc1xuICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFlbTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwgdmFsdWUgdG8gbWF0Y2hpbmcgcmVtIHZhbHVlLiAqQW55KiB2YWx1ZSBwYXNzZWQsIHJlZ2FyZGxlc3Mgb2YgdW5pdCwgaXMgYXNzdW1lZCB0byBiZSBhIHBpeGVsIHZhbHVlLiBCeSBkZWZhdWx0LCB0aGUgYmFzZSBwaXhlbCB2YWx1ZSB1c2VkIHRvIGNhbGN1bGF0ZSB0aGUgcmVtIHZhbHVlIGlzIHRha2VuIGZyb20gdGhlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgdmFyaWFibGUuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHZhbHVlIC0gUGl4ZWwgdmFsdWUgdG8gY29udmVydC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gQmFzZSBmb3IgcGl4ZWwgY29udmVyc2lvbi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgbnVtYmVyIGluIHJlbXMsIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIGdpdmVuIHZhbHVlIGFuZCB0aGUgYmFzZSBwaXhlbCB2YWx1ZS4gcmVtIHZhbHVlcyBhcmUgcGFzc2VkIHRocm91Z2ggYXMgaXMuXG5AZnVuY3Rpb24gLXpmLXRvLXJlbSgkdmFsdWUsICRiYXNlOiBudWxsKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpICE9ICdudW1iZXInIHtcbiAgICBAd2FybiBpbnNwZWN0KCR2YWx1ZSkgKyAnIHdhcyBwYXNzZWQgdG8gcmVtLWNhbGMoKSwgd2hpY2ggaXMgbm90IGEgbnVtYmVyLic7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLXJvdy13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSByb3cuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIEd1dHRlciB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucywgaW4gY2FzZSB0aGUgcm93IGlzIG5lc3RlZC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHdpZHRoOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyKTtcblxuICAgIEBpZiBpbmRleCgkYmVoYXZpb3IsIGNvbGxhcHNlKSAhPSBudWxsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgQGlmICRjZiB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cblxuICBAaWYgJGNvbHVtbnMgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb250ZXh0KCRjb2x1bW5zKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEludmVydHMgdGhlIG1hcmdpbnMgb2YgYSByb3cgdG8gbmVzdCBpdCBpbnNpZGUgb2YgYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01hcHxudWxsfSAkZ3V0dGVyIFtudWxsXSAtIEd1dHRlciB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgdGhlIG1hcmdpbnMuIFNldCB0byBgbnVsbGAgdG8gcmVmZXIgdG8gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzLlxuQG1peGluIGdyaWQtcm93LW5lc3QoJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyB7XG4gICAgJGd1dHRlcjogKCQtemYtemVyby1icmVha3BvaW50OiAkZ3V0dGVyKTtcbiAgfVxuXG4gIEBlYWNoICRicmVha3BvaW50LCAkdmFsdWUgaW4gJGd1dHRlciB7XG4gICAgJG1hcmdpbjogcmVtLWNhbGMoJHZhbHVlKSAvIDIgKiAtMTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1lvdXIgc21hbGxlc3QgYnJlYWtwb2ludCAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludHMpIG11c3QgYmUgc2V0IHRvIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiAwO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gRXZlbnR1YWwgb3V0cHV0XG4gICRzdHI6ICcnO1xuICAvLyBJcyBpdCBhIG5hbWVkIG1lZGlhIHF1ZXJ5P1xuICAkbmFtZWQ6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuICBAZWxzZSBpZiAkYnAgPT0gJ3JldGluYScge1xuICAgIEByZXR1cm4gJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknO1xuICB9XG5cbiAgLy8gVHJ5IHRvIHB1bGwgYSBuYW1lZCBicmVha3BvaW50IG91dCBvZiB0aGUgJGJyZWFrcG9pbnRzIG1hcFxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgICAgICRicC1tYXg6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICB9XG5cbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRicCk7XG4gICAgICAkbmFtZWQ6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgJGJyZWFrcG9pbnRzIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICAvLyBDb252ZXJ0IGFueSBwaXhlbCwgcmVtLCBvciB1bml0bGVzcyB2YWx1ZSB0byBlbVxuICAkYnA6IC16Zi1icC10by1lbSgkYnApO1xuICBAaWYgJGJwLW1heCB7XG4gICAgJGJwLW1heDogLXpmLWJwLXRvLWVtKCRicC1tYXgpIC0gKDEvMTYpO1xuICB9XG5cbiAgLy8gQ29uZGl0aW9ucyB0byBza2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uXG4gIC8vIC0gSXQncyBhIG5hbWVkIGJyZWFrcG9pbnQgdGhhdCByZXNvbHZlZCB0byBcIjAgZG93blwiIG9yIFwiMCB1cFwiXG4gIC8vIC0gSXQncyBhIG51bWVyaWMgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBcIiArIGFueXRoaW5nXG4gIEBpZiAkYnAgPiAwZW0gb3IgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIGBvbmx5YCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pIGFuZCAobWF4LXdpZHRoOiBuKWBcbiAgICBAaWYgJGRpciA9PSAnb25seScge1xuICAgICAgLy8gT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIFwib25seVwiIHJhbmdlXG4gICAgICBAaWYgJG5hbWVkID09IHRydWUge1xuICAgICAgICAvLyBPbmx5IHVzZSBcIm1pbi13aWR0aFwiIGlmIHRoZSBmbG9vciBpcyBncmVhdGVyIHRoYW4gMFxuICAgICAgICBAaWYgJGJwID4gMGVtIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuXG4gICAgICAgICAgLy8gT25seSBhZGQgXCJhbmRcIiB0byB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAgICRzdHI6ICRzdHIgKyAnIGFuZCAnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWF4LXdpZHRoXCIgaWYgdGhlcmUncyBhIGNlaWxpbmdcbiAgICAgICAgQGlmICRicC1tYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRicC1tYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGBkb3duYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtYXgtd2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAgICRtYXg6IGlmKCRuYW1lZCwgJGJwLW1heCwgJGJwKTtcblxuICAgICAgLy8gU2tpcCBtZWRpYSBxdWVyeSBjcmVhdGlvbiBpZiBpbnB1dCB2YWx1ZSBpcyBleGFjdGx5IFwiMCBkb3duXCIsXG4gICAgICAvLyB1bmxlc3MgdGhlIGZ1bmN0aW9uIHdhcyBjYWxsZWQgYXMgXCJzbWFsbCBkb3duXCIsIGluIHdoaWNoIGNhc2UgaXQncyBqdXN0IFwic21hbGwgb25seVwiXG4gICAgICBAaWYgJG5hbWVkIG9yICRicCA+IDBlbSB7XG4gICAgICAgIEBpZiAkbWF4ICE9IG51bGwge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1heC13aWR0aDogI3skbWF4fSknO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYHVwYCByYW5nZXMgdXNlIHRoZSBmb3JtYXQgYChtaW4td2lkdGg6IG4pYFxuICAgIEBlbHNlIGlmICRicCA+IDBlbSB7XG4gICAgICAkc3RyOiAkc3RyICsgJyhtaW4td2lkdGg6ICN7JGJwfSknO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZSkge1xuICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG5cbiAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENvbnZlcnMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcC4gSWYgdGhlIGNvbmZpZyBtYXAgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLiBJZiB0aGUgY29uZmlnIG1hcCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gSW5wdXQgY29uZmlnIG1hcC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLyBMZWdhY3kgYnJlYWtwb2ludCB2YXJpYWJsZXNcbi8vIFRoZXNlIHdpbGwgYmUgcmVtb3ZlZCBpbiA2LjNcbiRzbWFsbC11cDogbnVsbDtcbiRzbWFsbC1vbmx5OiBudWxsO1xuJG1lZGl1bS11cDogbnVsbDtcbiRtZWRpdW0tb25seTogbnVsbDtcbiRsYXJnZS11cDogbnVsbDtcbiRsYXJnZS1vbmx5OiBudWxsO1xuJHhsYXJnZS11cDogbnVsbDtcbiR4bGFyZ2Utb25seTogbnVsbDtcbiR4eGxhcmdlLXVwOiBudWxsO1xuJHh4bGFyZ2Utb25seTogbnVsbDtcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vLy8gVW4tY29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmUtYWRkaW5nIHRoZSBwYWRkaW5nLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gICRndXR0ZXI6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWNvbGxhcHNlXG5AbWl4aW4gZ3JpZC1jb2wtY29sbGFwc2Uge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1jb2xsYXBzZTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXVuY29sbGFwc2UoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXVuY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC11bmNvbGxhcHNlKCRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXIpIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5jb2xsYXBzZSgkZ3V0dGVyKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZXMgdGhlIHdpZHRoIG9mIGEgY29sdW1uIGJhc2VkIG9uIGEgbnVtYmVyIG9mIGZhY3RvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkY29sdW1uc1xuLy8vICAgV2lkdGggb2YgdGhlIGNvbHVtbi4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgcGVyY2VudGFnZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGNvbHVtbiB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgc2luZ2xlIGRpZ2l0IHdpbGwgbWFrZSB0aGUgY29sdW1uIHNwYW4gdGhhdCBudW1iZXIgb2YgY29sdW1ucyB3aWRlLCB0YWtpbmcgaW50byBhY2NvdW50IHRoZSBjb2x1bW4gY291bnQgb2YgdGhlIHBhcmVudCByb3cuXG4vLy8gICAtIEEgc3RyaW5nIG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiB3aWxsIG1ha2UgYSBjb2x1bW4gdGhhdCBpcyAqeCogY29sdW1ucyB3aWRlLCBhc3N1bWluZyAqeSogdG90YWwgY29sdW1ucyBmb3IgdGhlIHBhcmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IEEgY2FsY3VsYXRlZCBwZXJjZW50YWdlIHZhbHVlLlxuQGZ1bmN0aW9uIGdyaWQtY29sdW1uKCRjb2x1bW5zKSB7XG4gICR3aWR0aDogMCU7XG5cbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIGFuZCBjb2x1bW4gY291bnRzXG4gIEBpZiB0eXBlLW9mKCRjb2x1bW5zKSA9PSAnbnVtYmVyJyB7XG4gICAgQGlmIHVuaXQoJGNvbHVtbnMpID09ICclJyB7XG4gICAgICAkd2lkdGg6ICRjb2x1bW5zO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkY29sdW1ucyA8IDEge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1uLWNvdW50KTtcbiAgICB9XG4gIH1cblxuICAvLyBQYXJzaW5nIFwibiBvZiBuXCIgZXhwcmVzc2lvbnNcbiAgQGVsc2UgaWYgdHlwZS1vZigkY29sdW1ucykgPT0gJ2xpc3QnIHtcbiAgICBAaWYgbGVuZ3RoKCRjb2x1bW5zKSAhPSAzIHtcbiAgICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgdGhlIGZvcm1hdCBcIm4gb2YgblwiLic7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICR3aWR0aDogcGVyY2VudGFnZShudGgoJGNvbHVtbnMsIDEpIC8gbnRoKCRjb2x1bW5zLCAzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQW55dGhpbmcgZWxzZSBpcyBpbmNvcnJlY3RcbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbigpLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHdpZHRoO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGNvbHVtbnMgWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCBvZiB0aGUgY29sdW1uLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRndXR0ZXIgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4oXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRjb2x1bW5zKTtcbiAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcblxuICAvLyBHdXR0ZXJzXG4gIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCR2YWx1ZSkgLyAyO1xuXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdudW1iZXInIGFuZCBzdHJpcC11bml0KCRndXR0ZXIpID4gMCB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpIC8gMjtcbiAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICB9XG5cbiAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZ3V0dGVyIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyOiAkZ3V0dGVyKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXI6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1yb3coKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXJvd1xuQG1peGluIGdyaWQtY29sLXJvdyhcbiAgJGd1dHRlcjogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVyKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBEaXJlY3Rpb24gYW5kIGFtb3VudCB0byBtb3ZlLiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudCBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGUgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LiBTZXQgdG8gY2VudGVyIHRvIGNlbnRlciB0aGUgY29sdW1uLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICBAaWYgdHlwZS1vZigkcG9zaXRpb24pID09ICdudW1iZXInIHtcbiAgICAkb2Zmc2V0OiBwZXJjZW50YWdlKCRwb3NpdGlvbiAvICRncmlkLWNvbHVtbi1jb3VudCk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdXcm9uZyBzeW50YXggZm9yIGdyaWQtY29sdW1uLXBvc2l0aW9uKCkuIEVudGVyIGEgcG9zaXRpdmUgb3IgbmVnYXRpdmUgbnVtYmVyLCBvciBjZW50ZXIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBmbG9hdDogbGVmdDtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIiQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICdsZWZ0JzogZmxleC1zdGFydCxcbiAgJ3JpZ2h0JzogZmxleC1lbmQsXG4gICdjZW50ZXInOiBjZW50ZXIsXG4gICdqdXN0aWZ5Jzogc3BhY2UtYmV0d2VlbixcbiAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbik7XG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLidcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJ1xuICAgIH1cbiAgfVxuXG4gIGp1c3RpZnktY29udGVudDogJHg7XG4gIGFsaWduLWl0ZW1zOiAkeTtcbn1cblxuLy8vIFZlcnRpY2FsbHkgYWxpZ24gYSBzaW5nbGUgY29sdW1uIHdpdGhpbiBhIGZsZXggcm93LiBBcHBseSB0aGlzIG1peGluIHRvIGEgZmxleCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbi1zZWxmKCR5OiBudWxsKSB7XG4gIEBpZiAkeSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1hbGlnbiwgJHkpIHtcbiAgICAgICR5OiBtYXAtZ2V0KCQtemYtZmxleC1hbGlnbiwgJHkpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLWNvbHVtbi1hbGlnbigpOiAjeyR5fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgYWxpZ25tZW50LiBVc2UgdG9wLCBib3R0b20sIG1pZGRsZSwgb3Igc3RyZXRjaC4nXG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gbWFwLXJlbW92ZSgkLXpmLWZsZXgtanVzdGlmeSwgbGVmdCkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNiB7XG4gICAgICAuI3skLXpmLXNpemV9LW9yZGVyLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1vcmRlcigkaSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT7igJQ8aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBvZiBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHNpemVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zaXplczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6IDI0LFxuICAgICdoMic6IDIwLFxuICAgICdoMyc6IDE5LFxuICAgICdoNCc6IDE4LFxuICAgICdoNSc6IDE3LFxuICAgICdoNic6IDE2LFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiA0OCxcbiAgICAnaDInOiA0MCxcbiAgICAnaDMnOiAzMSxcbiAgICAnaDQnOiAyNSxcbiAgICAnaDUnOiAyMCxcbiAgICAnaDYnOiAxNixcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgY29kZSBzYW1wbGVzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZW9jcmF0aW9uIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGZvciBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG8gIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tICFkZWZhdWx0O1xuXG4vLy8gQnVsbGV0IHR5cGUgdG8gdXNlIGZvciB1bm9yZGVyZWQgbGlzdHMgKGUuZy4sIGBzcXVhcmVgLCBgY2lyY2xlYCwgYGRpc2NgKS5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2MgIWRlZmF1bHQ7XG5cbi8vLyBQb3NpdGlvbmluZyBmb3IgYnVsbGV0cyBvbiB1bm9yZGVyZWQgbGlzdCBpdGVtcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgbGlzdHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGEgbGlzdCBpbnNpZGUgYSBsaXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgYDxkbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYDxkdD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGA8ZHQ+YCBhbmQgYDxkZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIGA8YmxvY2txdW90ZT5gIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KSAhZGVmYXVsdDtcblxuLy8vIFNpZGUgYm9yZGVyIGZvciBgPGJsb2NrcXVvdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRoZWFkZXItbWFyZ2luLWJvdHRvbTtcbiAgICBsaW5lLWhlaWdodDogJGhlYWRlci1saW5laGVpZ2h0O1xuXG4gICAgc21hbGwge1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc2l6ZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgICAjeyRoZWFkZXJ9IHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKCRmb250LXNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIENpdGF0aW9uc1xuICBjaXRlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGNpdGUtY29sb3I7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyIHtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICB9XG5cbiAgLy8gQ29kZVxuICBjb2RlIHtcbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1oZWxwZXJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGVhZC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0b3AgbWFyZ2luIGZvciBzdWJoaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBVc2UgdG8gcmVtb3ZlIHRoZSBidWxsZXRzIGZyb20gYW4gdW5vcmRlcmVkIGxpc3RcbiAgLm5vLWJ1bGxldCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tdGV4dC1hbGlnbm1lbnQge1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkYWxpZ24gaW4gKGxlZnQsIHJpZ2h0LCBjZW50ZXIsIGp1c3RpZnkpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tdGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLnRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1saW50OmRpc2FibGUgYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucywgaWYgdGhlIGJhY2tncm91bmQgaXMgbGlnaHQuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGZvcmVncm91bmQoJGJhY2tncm91bmQsICRidXR0b24tY29sb3ItYWx0LCAkYnV0dG9uLWNvbG9yKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkcHJpbWFyeS1jb2xvcixcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKCRjb2xvcjogJHByaW1hcnktY29sb3IpIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICBjb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcblxuICBAaWYgJHN0eWxlID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRzdHlsZSA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b247XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIC8vIENvbG9yc1xuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuI3skbmFtZX0uZHJvcGRvd246OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIb2xsb3cgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGhvbGxvdyB7XG4gICAgICAmLmhvbGxvdyB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGU7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdHlsZVxuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEZvbnQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBGb250XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCwgJGdsb2JhbC1yYWRpdXMgMCAwICRnbG9iYWwtcmFkaXVzKTtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkZ2xvYmFsLXJhZGl1cyAwIDAgJGdsb2JhbC1yYWRpdXMsIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMSU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBRdWFsaWZ5aW5nU2VsZWN0b3JcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIpO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAoJGZvcm0tc3BhY2luZyAqIDEuNSk7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHRvIHVzZSBmb3IgbGFiZWxzIG9mIGludmFsaWQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWFscGhhIFswLjFdIC0gVHJhbnNwYXJlbmN5IGxldmVsIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGZvcm0taW5wdXQtZXJyb3IoXG4gICRiYWNrZ3JvdW5kOiAkaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkLFxuICAkYmFja2dyb3VuZC1hbHBoYTogMC4xXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtYWxwaGEpO1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgZXJyb3Igc3R5bGVzIHRvIGEgZm9ybSBlbGVtZW50LCB1c2luZyB0aGUgdmFsdWVzIGluIHRoZSBzZXR0aW5ncyBmaWxlLlxuQG1peGluIGZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1zcGFjaW5nICogLTAuNTtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtICgxIC8gMTYpO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gKDEgLyAxNik7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmbG9hdFxuLy8vL1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzIHtcbiAgLmZsb2F0LWxlZnQge1xuICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LWNlbnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmNsZWFyZml4IHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1iYWNrZ3JvdW5kLCAkcHJpbWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGFuIGFjY29yZGlvbiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6IGZvcmVncm91bmQoJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQsICRib2R5LWZvbnQtY29sb3IpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kO1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiAgY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXI7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcrJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4oCTJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZztcbiAgZGlzcGxheTogbm9uZTtcbiAgYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDtcbiAgLy8gY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogZm9yZWdyb3VuZCgkYmFkZ2UtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgYSBiYWRnZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1taW53aWR0aDogMi4xZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBiYWRnZS5cbkBtaXhpbiBiYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG4gIG1pbi13aWR0aDogJGJhZGdlLW1pbndpZHRoO1xuICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkbmFtZSAhPSBwcmltYXJ5IHtcbiAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICAgIGNvbG9yOiBmb3JlZ3JvdW5kKCRjb2xvcik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFkY3J1bWJzXG4vLy8vXG5cbi8vLyBNYXJnaW4gYXJvdW5kIGEgYnJlYWRjcnVtYnMgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGFjdGl2ZSBicmVhZGNydW1iIGxpbmsuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgZGlzYWJsZWQgYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBicmVhZGNydW1iIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBtYWtlcyBicmVhZGNydW1iIGxpbmtzIHVwcGVyY2FzZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgYSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46ICRicmVhZGNydW1icy1tYXJnaW47XG5cbiAgLy8gSXRlbSB3cmFwcGVyXG4gIGxpIHtcbiAgICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gge1xuICAgICAgLy8gTmVlZCB0byBlc2NhcGUgdGhlIGJhY2tzbGFzaFxuICAgICAgJHNsYXNoOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAnLycsICdcXFxcJyk7XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICAgICAgICBjb250ZW50OiAkc2xhc2g7XG4gICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIEJvcmRlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIEFkZCBzdHlsZXMgZm9yIGEgYnV0dG9uIGdyb3VwIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGNoaWxkLXNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRidXR0b25ncm91cC1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1zcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRjb3VudDogbnVsbFxuKSB7XG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogLSRidXR0b25ncm91cC1zcGFjaW5nO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgWmVyb1VuaXRcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKDEgLyAkaSl9IC0gI3skYnV0dG9uZ3JvdXAtc3BhY2luZ30pO1xuICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRidXR0b25ncm91cC1zcGFjaW5nO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGJ1dHRvbmdyb3VwLXNwYWNpbmcgKiAtJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDsgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgICYuI3skbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGNvbG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gc2Nzcy1saW50OmRpc2FibGUgTWVyZ2VhYmxlU2VsZWN0b3JcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGlubmVyIHBhZGRpbmcgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGNhbGxvdXQtcGFkZGluZztcbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogJGNhbGxvdXQtZm9udC1jb2xvcjtcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgwLjVyZW0pO1xuICAgIH1cblxuICAgICYubGFyZ2Uge1xuICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKDNyZW0pO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVG9wIChvciBib3R0b20pIG9mZnNldCBmb3IgYSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLXNpemU6IDJlbSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3I7XG4gICN7JHh9OiAkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw7XG4gICN7JHl9OiAkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsO1xuICBmb250LXNpemU6ICRjbG9zZWJ1dHRvbi1zaXplO1xuICBsaW5lLWhlaWdodDogJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJpbGxkb3duXG4vLy8vXG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnR5IHRvIHVzZSBmb3IgYW5pbWF0aW5nIG1lbnVzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhciAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYXJyb3dzIHRvIGRyaWxsZG93biBpdGVtcyB3aXRoIHN1Ym1lbnVzLCBhcyB3ZWxsIGFzIHRoZSBiYWNrIGJ1dHRvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJpbGxkb3duLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHN1Ym1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQXBwbGllZCB0byBuZXN0ZWQgPHVsPnNcbiAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAtMTtcbiAgICAvLyBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgLTEwMCUsIDEwMCUpKTtcbiAgICB9XG5cbiAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAxMDAlLCAtMTAwJSkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg2cHgsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtcmlnaHQpO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNnB4LCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLWxlZnQpO1xuICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fS13aWR0aDogMDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgZHJvcGRvd24gcGFuZXMuIEVhY2ggc2l6ZSBpcyBhIENTUyBjbGFzcyB5b3UgY2FuIGFwcGx5LlxuLy8vIEB0eXBlIE1hcFxuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBcHBsaWVzIHN0eWxlcyBmb3IgYSBiYXNpYyBkcm9wZG93bi5cbkBtaXhpbiBkcm9wZG93bi1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iYWNrZ3JvdW5kO1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRkcm9wZG93bi1yYWRpdXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcbiAgei1pbmRleDogMTA7XG5cbiAgJi5pcy1vcGVuIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lLiN7JG5hbWV9IHtcbiAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyb3Bkb3duLW1lbnVcbi8vLy9cblxuLy8vIEVuYWJsZXMgYXJyb3dzIGZvciBpdGVtcyB3aXRoIGRyb3Bkb3duIG1lbnVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyb3Bkb3ducy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbkBtaXhpbiBsZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuXG4gICYub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoNXB4LCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDVweCwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7XG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHtcbiAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogMS41cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSg1cHgsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFNlbGVjdG9yRGVwdGhcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsZXgtdmlkZW9cbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIGZsZXggdmlkZW8gY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXh2aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIHVzZWQgdG8gY3JlYXRlIGEgNDozIGFzcGVjdCByYXRpby5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4dmlkZW8tcmF0aW86IDQgYnkgMyAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgdXNlZCB0byBjcmVhdGUgYSAxNjo5IGFzcGVjdCByYXRpby5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbjogMTYgYnkgOSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSBwZXJjZW50YWdlIGhlaWdodCB0aGF0IGNhbiBiZSB1c2VkIGFzIHBhZGRpbmcgaW4gYSBmbGV4IHZpZGVvIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIHRoYXQgY2FuIGJlIHVzZWQgYXMgdGhlIGBwYWRkaW5nLWJvdHRvbWAgcGFyYW1ldGVyIG9mIGEgZmxleCB2aWRlbyBjb250YWluZXIuXG5AZnVuY3Rpb24gZmxleC12aWRlbygkcmF0aW8pIHtcbiAgJHc6IG50aCgkcmF0aW8sIDEpO1xuICAkaDogbnRoKCRyYXRpbywgMyk7XG4gIEByZXR1cm4gJGggLyAkdyAqIDEwMCU7XG59XG5cbi8vLyBDcmVhdGVzIGEgZmxleCB2aWRlbyBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmF0aW8gWyRmbGV4dmlkZW8tcmF0aW9dIC0gUmF0aW8gdG8gdXNlIGZvciB0aGUgY29udGFpbmVyLCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gZmxleC12aWRlbygkcmF0aW86ICRmbGV4dmlkZW8tcmF0aW8pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiBmbGV4LXZpZGVvKCRyYXRpbyk7XG4gIG1hcmdpbi1ib3R0b206ICRmbGV4dmlkZW8tbWFyZ2luLWJvdHRvbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZmxleC12aWRlbyB7XG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSBmbGV4LXZpZGVvO1xuXG4gICAgJi53aWRlc2NyZWVuIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBmbGV4LXZpZGVvKCRmbGV4dmlkZW8tcmF0aW8td2lkZXNjcmVlbik7XG4gICAgfVxuXG4gICAgJi52aW1lbyB7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogZm9yZWdyb3VuZCgkbGFiZWwtYmFja2dyb3VuZCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICBAaWYgJG5hbWUgIT0gcHJpbWFyeSB7XG4gICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgICBjb2xvcjogZm9yZWdyb3VuZCgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIG1hcmdpbi1ib3R0b206ICRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tO1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmddIC0gUGFkZGluZyBiZXR3ZWVuIHNlY3Rpb25zLlxuQG1peGluIG1lZGlhLW9iamVjdC1zZWN0aW9uKCRwYWRkaW5nOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRwYWRkaW5nO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtbGVmdH06ICRwYWRkaW5nO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG5cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgICAgJi5tYWluLXNlY3Rpb24ge1xuICAgICAgICBmbGV4OiAxIDEgMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmLm1pZGRsZSB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG5cbiAgICAgICYuYm90dG9tIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhbiBpY29uIGFuZCB0ZXh0IGluIGEgbWVudSBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBtYXJnaW46ICRtZW51LW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXMgYXJlIHRhYmxlIGNlbGwgdG8gYWxsb3cgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBsaW5lIGhlaWdodCB0byBtYWtlIHRoZSBoZWlnaHQgb2YgdGhlIG92ZXJhbGwgaXRlbSBlYXNpZXIgdG8gY2FsY3VsYXRlXG4gID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgID4gbGkge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgPiBsaSB7XG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgID4gbGkge1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICA+IGxpICA+IGEge1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuQG1peGluIG1lbnUtc2ltcGxlIHtcbiAgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogZ2V0LXNpZGUoJG1lbnUtaXRlbS1wYWRkaW5nLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkcGFkZGluZyBbYXV0b10gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbkBtaXhpbiBtZW51LW5lc3RlZCgkbWFyZ2luOiAkbWVudS1tYXJnaW4tbmVzdGVkKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG59XG5cbi8vLyBBZGRzIHN1cHBvcnQgZm9yIGljb25zIHRvIE1lbnUgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkcG9zaXRpb24gW3NpZGVdIC0gUG9zaXRpb25pbmcgZm9yIGljb25zLiBDYW4gYmUgYHNpZGVgIChsZWZ0LCBvciByaWdodCBvbiBSVEwpIG9yIGB0b3BgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGJhc2UgW3RydWVdIC0gU2V0IHRvIGBmYWxzZWAgdG8gcHJldmVudCB0aGUgc2hhcmVkIENTUyBiZXR3ZWVuIHNpZGUtIGFuZCB0b3AtYWxpZ25lZCBpY29ucyBmcm9tIGJlaW5nIHByaW50ZWQuIFNldCB0aGlzIHRvIGBmYWxzZWAgaWYgeW91J3JlIGNhbGxpbmcgdGhlIG1peGluIG11bHRpcGxlIHRpbWVzIG9uIHRoZSBzYW1lIGVsZW1lbnQuXG5AbWl4aW4gbWVudS1pY29ucygkcG9zaXRpb246IHNpZGUsICRiYXNlOiB0cnVlKSB7XG4gIEBpZiAkYmFzZSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgaW1nLFxuICAgICAgICBpLFxuICAgICAgICBzdmcge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICArIHNwYW4ge1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHBvc2l0aW9uID09IHNpZGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRtZW51LWljb24tc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJG1lbnUtaWNvbi1zcGFjaW5nO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRtZW51LWl0ZW0tcGFkZGluZztcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVudSB7XG4gIC5tZW51IHtcbiAgICBAaW5jbHVkZSBtZW51LWJhc2U7XG4gICAgQGluY2x1ZGUgbWVudS1pY29ucztcblxuICAgIC8vIE9yaWVudGF0aW9uXG4gICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQWxpZ24gcmlnaHRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG5cbiAgICAgID4gbGk6Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFZlcnRpY2FsIGljb25zXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zKHRvcCwgJGJhc2U6IGZhbHNlKTtcbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJi5uZXN0ZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQ7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmFjdGl2ZSA+IGEge1xuICAgICAgY29sb3I6ICRtZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgICAgYmFja2dyb3VuZDogJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG4gIH1cblxuICAubWVudS10ZXh0IHtcbiAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gIH1cblxuICAvLyBBbGlnbiBjZW50ZXJcbiAgLm1lbnUtY2VudGVyZWQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgID4gLm1lbnUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC8vIFByZXZlbnQgRk9VQyB3aGVuIHVzaW5nIHRoZSBSZXNwb25zaXZlIE1lbnUgcGx1Z2luXG4gIC5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBvZiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtemluZGV4OiAtMSAhZGVmYXVsdDtcblxuLy8vIExlbmd0aCBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIG1lbnUuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgb3ZlcmxheSB0aGF0IGFwcGVhcnMgd2hlbiBhbiBvZmYtY2FudmFzIG1lbnUgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgYm9keS5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHRvIHBsYWNlIHVuZGVyIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhpcyBzaGFkb3cgb3ZlcmxhcHMgdGhlIG9mZi1jYW52YXMgbWVudXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kbWFpbmNvbnRlbnQtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG4gIC8vIEV4dHJhIHByb3BlcnRpZXMgbmVlZGVkIG9uIDxodG1sPiBhbmQgPGJvZHk+IHRvIG1ha2Ugb2ZmLWNhbnZhcyB3b3JrXG4gIGh0bWwsXG4gIGJvZHkge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiBhdXRvO1xuICB9XG5cbiAgLm9mZi1jYW52YXMtd3JhcHBlci1pbm5lciB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7IFxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc7XG4gIH1cblxuICAvLyBDb250YWluZXIgZm9yIHBhZ2UgY29udGVudFxuICAub2ZmLWNhbnZhcy1jb250ZW50LFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IHtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgei1pbmRleDogMTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4xcHg7IC8vIFByZXZlbnRzIG1hcmdpbiBjb2xsYXBzaW5nLCB3aGljaCB3b3VsZCByZXZlYWwgdGhlIGJveCBzaGFkb3cgb2YgdGhlIHdyYXBwZXJcblxuICAgIEBpZiBoYXMtdmFsdWUoJG1haW5jb250ZW50LXNoYWRvdykge1xuICAgICAgYm94LXNoYWRvdzogJG1haW5jb250ZW50LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBDbGljay10by1leGl0IG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1leGl0IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyBtZW51LlxuQG1peGluIG9mZi1jYW52YXMtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kOiAkb2ZmY2FudmFzLWJhY2tncm91bmQ7XG4gIHotaW5kZXg6ICRvZmZjYW52YXMtemluZGV4O1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbkBtaXhpbiBvZmYtY2FudmFzLXBvc2l0aW9uKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICRzaXplOiAkb2ZmY2FudmFzLXNpemUsXG4gICRmaXhlZDogZmFsc2Vcbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxlZnQ6IC0kc2l6ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgcmlnaHQ6IC0kc2l6ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6ICRzaXplO1xuICB9XG5cbiAgLy8gR2VuZXJhdGVzIGFuIG9wZW4gc3RhdGUgY2xhc3MgdGhhdCBtYXRjaGVzIHRoZSB3aWR0aCBvZiB0aGUgbWVudVxuICBAYXQtcm9vdCB7XG4gICAgLmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICB9XG4gICAgICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRwb3NpdGlvbiBbbGVmdF0gLSBQb3NpdGlvbiBvZiB0aGUgb2ZmLWNhbnZhcyBtZW51IGJlaW5nIHJldmVhbGVkLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuICAkcG9zaXRpb246IGxlZnRcbikge1xuICAjeyRwb3NpdGlvbn06IDA7XG4gIHotaW5kZXg6IGF1dG87XG5cbiAgQGlmICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cblxuICAmIH4gLiN7JG1haW5jb250ZW50LWNsYXNzfSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogJG9mZmNhbnZhcy1zaXplO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgJi5wb3NpdGlvbi1sZWZ0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQpOyB9XG4gICAgJi5wb3NpdGlvbi1yaWdodCAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0KTsgfVxuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgbWVudSBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcblxuICAmLm5vLW1vdGlvbnVpIHtcbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gb3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc2xpZGUgY29udGFpbmluZyBhbiBpbWFnZS4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWltYWdlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1pbWFnZSB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBvcmJpdCBzbGlkZSBjYXB0aW9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtY2FwdGlvbmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6IGZvcmVncm91bmQoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A7XG4gIG1hcmdpbi1ib3R0b206ICRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vcmJpdCB7XG4gIC5vcmJpdCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcbiAgfVxuXG4gIC5vcmJpdC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5vcmJpdC1zbGlkZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtc2xpZGU7XG4gIH1cblxuICAub3JiaXQtZmlndXJlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1maWd1cmU7XG4gIH1cblxuICAub3JiaXQtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xuICB9XG5cbiAgLm9yYml0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG9yYml0LWNhcHRpb247XG4gIH1cblxuICAlb3JiaXQtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udHJvbDtcbiAgfVxuXG4gIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1wcmV2aW91cztcbiAgfVxuXG4gIC5vcmJpdC1uZXh0IHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LW5leHQ7XG4gIH1cblxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgQGluY2x1ZGUgb3JiaXQtYnVsbGV0cztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6IGZvcmVncm91bmQoJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhZ2luYXRpb24tcmFkaXVzO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQge1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkIHtcbiAgcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nO1xuICBjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyB7XG4gIGNvbnRlbnQ6ICdcXDIwMjYnO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc7XG4gIGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYWInO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNXJlbTtcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMC41cmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwcm9ncmVzcyBiYXIgY29udGFpbmVyLlxuQG1peGluIHByb2dyZXNzLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYWNrZ3JvdW5kO1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBtZXRlciBvZiBhIHByb2dyZXNzIGJhci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDtcblxuICBAaWYgaGFzLXZhbHVlKCRwcm9ncmVzcy1yYWRpdXMpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRleHQgaW4gdGhlIHByb2dyZXNzIG1ldGVyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyLXRleHQge1xuICBAaW5jbHVkZSBhYnNvbHV0ZS1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gW1RPRE9dIENoZWNrIGhvdyBwbHVnaW4gY29uZmlybXMgZGlzYWJsZWQgb3IgdmVydGljYWwgc3RhdHVzXG4vLyBbVE9ET10gQ2hlY2sgaWYgdHJhbnNpdGlvbjogYWxsOyBpcyBuZWNlc3NhcnlcblxuLy8vL1xuLy8vIEBncm91cCBzbGlkZXJcbi8vLy9cblxuLy8vIERlZmF1bHQgc2xpZGVyIHdpZHRoIG9mIGEgdmVydGljYWwgc2xpZGVyLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgTnVtYmVyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BlcnRpZXMgdG8gYXBwbHkgdG8gdGhlIHNsaWRlciBoYW5kbGUgYW5kIGZpbGwuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iYWNrZ3JvdW5kO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgYWN0aXZlIGZpbGwgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBzbGlkZXIgaGFuZGxlcy5cbkBtaXhpbiBzbGlkZXItaGFuZGxlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBib3JkZXItcmFkaXVzOiAkc2xpZGVyLXJhZGl1cztcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiAgfVxuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuQG1peGluIHNsaWRlci1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6ICRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1peGluIHNsaWRlci12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zbGlkZXIge1xuICAvLyBDb250YWluZXJcbiAgLnNsaWRlciB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIEZpbGwgYXJlYVxuICAuc2xpZGVyLWZpbGwge1xuICAgIEBpbmNsdWRlIHNsaWRlci1maWxsO1xuICB9XG5cbiAgLy8gRHJhZ2dhYmxlIGhhbmRsZVxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWhhbmRsZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5zbGlkZXIuZGlzYWJsZWQsXG4gIC5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBzbGlkZXJcbiAgLnNsaWRlci52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gUlRMIHN1cHBvcnRcbiAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAuc2xpZGVyOm5vdCgudmVydGljYWwpIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uLFxuICAuY29sdW1ucyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBEdXBsaWNhdGVQcm9wZXJ0eVxuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG4gIC8vIFtUT0RPXSBJcyB0aGlzIG5lY2Vzc2FyeT9cbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgYm9keS5pcy1yZXZlYWwtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAvLyBodG1sIGdldHMgdGhpcyBjbGFzcyBvbmx5IGluIGlPU1xuICBodG1sLmlzLXJldmVhbC1vcGVuLFxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAvLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbiAgICAvLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICVyZXZlYWwtY2VudGVyZWQge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBzd2l0Y2hcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC50aW55IGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnNtYWxsIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAubGFyZ2UgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lciBhbmQgcGFkZGxlLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaCBwYWRkbGVcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBzd2l0Y2ggdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiAkc3dpdGNoLW1hcmdpbjtcbiAgb3V0bGluZTogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGNhc2NhZGUgZG93biB0byB0aGUgc3dpdGNoIHRleHRcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGlucHV0LiBBcHBseSB0aGlzIHRvIGFuIGA8aW5wdXQ+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLWlucHV0IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBwYWRkbGUgb2YgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gYSBgPGxhYmVsPmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG4gIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcmFkaXVzO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGNvbG9yOiBpbmhlcml0O1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcblxuICAvLyBOZWVkZWQgdG8gb3ZlcnJpZGUgc3BlY2lmaWNpdHlcbiAgaW5wdXQgKyAmIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBUaGUgcGFkZGxlIGl0c2VsZlxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAxLjVyZW07XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwLjI1cmVtO1xuICAgIHRvcDogMC4yNXJlbTtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXBhZGRsZS1yYWRpdXM7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAyLjI1cmVtO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0OmZvY3VzIH4gJiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhY3RpdmUvaW5hY3RpdmUgdGV4dCBpbnNpZGUgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gdGV4dCBlbGVtZW50cyBpbnNpZGUgdGhlIHN3aXRjaCBgPGxhYmVsPmAuXG5AbWl4aW4gc3dpdGNoLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1hY3RpdmUge1xuICAjeyRnbG9iYWwtbGVmdH06IDglO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWluYWN0aXZlIHtcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMTUlO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHNpemUgb2YgYSBzd2l0Y2ggYnkgbW9kaWZ5aW5nIHRoZSBzaXplIG9mIHRoZSBib2R5IGFuZCBwYWRkbGUuIEFwcGx5IHRoaXMgdG8gYSBzd2l0Y2ggY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC1zaXplIFsxcmVtXSAtIEZvbnQgc2l6ZSBvZiBsYWJlbCB0ZXh0IHdpdGhpbiB0aGUgc3dpdGNoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzRyZW1dIC0gV2lkdGggb2YgdGhlIHN3aXRjaCBib2R5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtd2lkdGggWzEuNXJlbV0gLSBXaWR0aCBvZiB0aGUgc3dpdGNoIHBhZGRsZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRsZS1vZmZzZXQgWzAuMjVyZW1dIC0gU3BhY2luZyBiZXR3ZWVuIHRoZSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgc3dpdGNoIGJvZHkuXG5AbWl4aW4gc3dpdGNoLXNpemUoXG4gICRmb250LXNpemU6IDFyZW0sXG4gICR3aWR0aDogNHJlbSxcbiAgJGhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS13aWR0aDogMS41cmVtLFxuICAkcGFkZGxlLW9mZnNldDogMC4yNXJlbVxuKSB7XG4gICRwYWRkbGUtaGVpZ2h0OiAkaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtbGVmdC1hY3RpdmU6ICR3aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICB9XG5cbiAgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWxlZnQtYWN0aXZlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN3aXRjaCB7XG4gIC8vIENvbnRhaW5lciBjbGFzc1xuICAuc3dpdGNoIHtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC1jb250YWluZXI7XG4gIH1cblxuICAvLyA8aW5wdXQ+IGVsZW1lbnRcbiAgLnN3aXRjaC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWlucHV0O1xuICB9XG5cbiAgLy8gPGxhYmVsPiBlbGVtZW50XG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtcGFkZGxlO1xuICB9XG5cbiAgLy8gQmFzZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAlc3dpdGNoLXRleHQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0O1xuICB9XG5cbiAgLy8gQWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1hY3RpdmU7XG4gIH1cblxuICAvLyBJbmFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWluYWN0aXZlIHtcbiAgICBAZXh0ZW5kICVzd2l0Y2gtdGV4dDtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dC1pbmFjdGl2ZTtcbiAgfVxuXG4gIC8vIFN3aXRjaCBzaXplc1xuICAuc3dpdGNoLnRpbnkge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEwKSwgM3JlbSwgJHN3aXRjaC1oZWlnaHQtdGlueSwgMXJlbSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2guc21hbGwge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDEyKSwgMy41cmVtLCAkc3dpdGNoLWhlaWdodC1zbWFsbCwgMS4yNXJlbSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2gubGFyZ2Uge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDE2KSwgNXJlbSwgJHN3aXRjaC1oZWlnaHQtbGFyZ2UsIDJyZW0sICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzY3NzLWxpbnQ6ZGlzYWJsZSBNZXJnZWFibGVTZWxlY3RvciwgUXVhbGlmeWluZ0VsZW1lbnRcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3Igc3RyaXBlZCByb3dzLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIHN0cmlwZSBvbiByb3dzIG9mIHRoZSB0YWJsZXMsIGV4Y2x1ZGluZyB0aGUgaGVhZGVyIGFuZCBmb290ZXIuIElmIGV2ZW4sIHRoZSBldmVuIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgb2RkLCB0aGUgb2RkIHJvd3Mgd2lsbCBoYXZlIGEgYmFja2dyb3VuZCBjb2xvci4gSWYgZW1wdHksIG9yIGFueSBvdGhlciB2YWx1ZSwgdGhlIHRhYmxlIHJvd3Mgd2lsbCBoYXZlIG5vIHN0cmlwaW5nLlxuLy8vIEB0eXBlIEtleXdvcmRcbiR0YWJsZS1zdHJpcGU6IGV2ZW4gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWFkZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgZm9vdGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBmb290ZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgfVxuICBcbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0ciB7XG4gICAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIGV2ZW4sIGRhcmtlbiB0aGUgZXZlbiByb3dzLlxuICAgICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gb2RkLCBkYXJrZW4gdGhlIG9kZCByb3dzLlxuICAgICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cblxuICAgIC8vRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZWlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICB0YWJsZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsaWdodG5lc3Mgb2YgYCRjb2xvcmAsIGFuZCBpZiBpdCBwYXNzZXMgdGhlIGAkdGhyZXNob2xkYCBvZiBsaWdodG5lc3MsIGl0IHJldHVybnMgdGhlIGAkeWVzYCBjb2xvci4gT3RoZXJ3aXNlLCBpdCByZXR1cm5zIHRoZSBgJG5vYCBjb2xvci4gVXNlIHRoaXMgZnVuY3Rpb24gdG8gZHluYW1pY2FsbHkgb3V0cHV0IGEgZm9yZWdyb3VuZCBjb2xvciBiYXNlZCBvbiBhIGdpdmVuIGJhY2tncm91bmQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbGlnaHRuZXNzIG9mLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR5ZXMgWyRibGFja10gLSBDb2xvciB0byByZXR1cm4gaWYgYCRjb2xvcmAgaXMgbGlnaHQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJG5vIFskd2hpdGVdIC0gQ29sb3IgdG8gcmV0dXJuIGlmIGAkY29sb3JgIGlzIGRhcmsuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkdGhyZXNob2xkIFs2MCVdIC0gVGhyZXNob2xkIG9mIGxpZ2h0bmVzcyB0byBjaGVjayBhZ2FpbnN0LlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBUaGUgJHllcyBjb2xvciBvciAkbm8gY29sb3IuXG5AZnVuY3Rpb24gZm9yZWdyb3VuZCgkY29sb3IsICR5ZXM6ICRibGFjaywgJG5vOiAkd2hpdGUsICR0aHJlc2hvbGQ6IDYwJSkge1xuICBAaWYgJGNvbG9yID09IHRyYW5zcGFyZW50IHtcbiAgICAkY29sb3I6ICRib2R5LWJhY2tncm91bmQ7XG4gIH1cbiAgQGlmIChsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQpIHtcbiAgICBAcmV0dXJuICR5ZXM7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJG5vO1xuICB9XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBsaWdodGVyIGlmIGl0J3MgbGlnaHQsIG9yIGRhcmtlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGxpZ2h0bmVzcygkY29sb3IpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH0gQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIHZhcmlhYmxlIGludG8gdGhlIGxlZ2FjeSBjb2xvciB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBhY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYGV4cGFuZC1uYCBjbGFzc2VzIHRvIGluY2x1ZGUgaW4gdGhlIENTUy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiBmb3JlZ3JvdW5kKCR0YWItYmFja2dyb3VuZCwgJHByaW1hcnktY29sb3IpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIge1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgbWFyZ2luOiAkdGFiLW1hcmdpbjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWItY29udGVudC1ib3JkZXI7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmc7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGFiLWNvbnRlbnQtYm9yZGVyO1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICR0YWItY29udGVudC1ib3JkZXI7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBmb3JlZ3JvdW5kKCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG4gICAgcGFkZGluZzogJHRpdGxlYmFyLXBhZGRpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBaZXJvVW5pdFxuICAgIC50aXRsZS1iYXItbGVmdCxcbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50aXRsZS1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS1iYXItdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiAkdGl0bGViYXItdGV4dC1mb250LXdlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG5AbWl4aW4gdG9vbHRpcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJhY2tncm91bmQtY29sb3I7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIG1heC13aWR0aDogMTByZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgIGJvdHRvbTogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxuXG4gICYudG9wOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGRvd24pO1xuICAgIHRvcDogMTAwJTtcbiAgICBib3R0b206IGF1dG87XG4gIH1cblxuICAmLmxlZnQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuXG4gICYucmlnaHQ6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgbGVmdCk7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgLy8gc2Nzcy1saW50OmRpc2FibGUgUXVhbGlmeWluZ0VsZW1lbnRcbiAgaW5wdXQuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC8vIHNjc3MtbGludDpkaXNhYmxlIFplcm9Vbml0XG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB9XG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtGdW5jdGlvbn0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRvdXRwdXQ7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ3N0cmluZycge1xuICAgICAgJG1hcDogY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2xlZnRdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzbGlkZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBsZWZ0LFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBleHRlbmQgJW11aS1kZWZhdWx0cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIHNldHVwIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gc2V0dXAgZm9yIHRyYW5zaXRpb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1zdGFydCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBhY3RpdmUgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBhY3RpdmF0ZSBhIHRyYW5zaXRpb24gb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpciksIHRydWUpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFnZ2VyIGFuaW1hdGlvbiwgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbmd1bGFyJ3MgYG5nLXJlcGVhdGAuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5LWFtb3VudCAtIEFtb3VudCBvZiB0aW1lIGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIHRvIGFkZCBiZXR3ZWVuIGVhY2ggaXRlbSdzIGFuaW1hdGlvbi5cbkBtaXhpbiBzdGFnZ2VyKCRkZWxheS1hbW91bnQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDsgLy8gUHJldmVudCBhY2NpZGVudGFsIENTUyBpbmhlcml0YW5jZVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFsxXSAtIE9wYWNpdHkgdG8gZW5kIG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAwLFxuICAkdG86IDEsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIGVmZmVjdCBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbZnJvbS1iYWNrXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuXG5AZnVuY3Rpb24gaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IGZyb20tYmFja1xuKSB7XG4gIC8vIFJvdGF0aW9uIGRpcmVjdGlvbnMgd2hlbiBoaW5naW5nIGZyb20gYmFjayB2cy4gZnJvbnRcbiAgJHJvdGF0aW9uLWFtb3VudDogOTBkZWc7XG4gICRyb3RhdGlvbnMtYmFjazogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50ICogLTEpLFxuICAgIHJpZ2h0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICAgYm90dG9tOiByb3RhdGVYKCRyb3RhdGlvbi1hbW91bnQpLFxuICAgIGxlZnQ6IHJvdGF0ZVkoJHJvdGF0aW9uLWFtb3VudCksXG4gICk7XG4gICRyb3RhdGlvbnMtZnJvbTogKFxuICAgIHRvcDogcm90YXRlWCgkcm90YXRpb24tYW1vdW50KSxcbiAgICByaWdodDogcm90YXRlWSgkcm90YXRpb24tYW1vdW50KSxcbiAgICBib3R0b206IHJvdGF0ZVgoJHJvdGF0aW9uLWFtb3VudCAqIC0xKSxcbiAgICBsZWZ0OiByb3RhdGVZKCRyb3RhdGlvbi1hbW91bnQgKiAtMSksXG4gICk7XG5cbiAgLy8gUm90YXRpb24gb3JpZ2luXG4gICRyb3RhdGlvbjogJyc7XG4gIEBpZiAkdHVybi1vcmlnaW4gPT0gZnJvbS1mcm9udCB7XG4gICAgJHJvdGF0aW9uOiBtYXAtZ2V0KCRyb3RhdGlvbnMtZnJvbSwgJGZyb20pO1xuICB9IEBlbHNlIGlmICR0dXJuLW9yaWdpbiA9PSBmcm9tLWJhY2sge1xuICAgICRyb3RhdGlvbjogbWFwLWdldCgkcm90YXRpb25zLWJhY2ssICRmcm9tKTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJyR0dXJuLW9yaWdpbiBtdXN0IGJlIGVpdGhlciBcImZyb20tYmFja1wiIG9yIFwiZnJvbS1mcm9udFwiJztcbiAgfVxuXG4gIC8vIFN0YXJ0IGFuZCBlbmQgc3RhdGVcbiAgJHN0YXJ0OiAnJztcbiAgJGVuZDogJyc7XG4gIEBpZiAkc3RhdGUgPT0gaW4ge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gIH0gQGVsc2Uge1xuICAgICRzdGFydDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSByb3RhdGUoMGRlZyk7XG4gICAgJGVuZDogcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSAkcm90YXRpb247XG4gIH1cblxuICAvLyBUdXJuIGF4aXNcbiAgJG9yaWdpbjogJyc7XG4gIEBpZiAkYXhpcyA9PSBlZGdlIHtcbiAgICAkb3JpZ2luOiAkZnJvbTtcbiAgfSBAZWxzZSB7XG4gICAgJG9yaWdpbjogY2VudGVyO1xuICB9XG5cbiAgJGtleWZyYW1lczogKFxuICAgIG5hbWU6ICdoaW5nZS0jeyRzdGF0ZX0tI3skZnJvbX0tI3skYXhpc30tI3skdHVybi1vcmlnaW59JyxcbiAgICAwOiAodHJhbnNmb3JtOiAkc3RhcnQsIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW4pLFxuICAgIDEwMDogKHRyYW5zZm9ybTogJGVuZCksXG4gICk7XG5cbiAgQHJldHVybiAka2V5ZnJhbWVzO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtmcm9tLWJhY2tdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBmcm9tLWJhY2ssXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gWzEuNV0gLSBTaXplIHRvIHN0YXJ0IGF0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbMV0gLSBTaXplIHRvIGVuZCBhdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiAxLjUsXG4gICR0bzogMSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZGlyZWN0aW9uIFtjd10gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0Z1bmN0aW9ufSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIi8vIENsZWFyZml4XHJcblxyXG4vLyBAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgY2xlYXI6IGJvdGg7XHJcbiAgfVxyXG59XHJcbkBtaXhpbiBhbHBoYS1hdHRyaWJ1dGUoJGF0dHJpYnV0ZSwgJGNvbG9yLCAkYmFja2dyb3VuZCkge1xyXG4gICRwZXJjZW50OiBhbHBoYSgkY29sb3IpICogMTAwJTtcclxuICAkb3BhcXVlOiBvcGFjaWZ5KCRjb2xvciwgMSk7XHJcbiAgJHNvbGlkLWNvbG9yOiBtaXgoJG9wYXF1ZSwgJGJhY2tncm91bmQsICRwZXJjZW50KTtcclxuICAjeyRhdHRyaWJ1dGV9OiAkc29saWQtY29sb3I7XHJcbiAgI3skYXR0cmlidXRlfTogJGNvbG9yO1xyXG59XHJcbkBtaXhpbiBib3gtLWdyYWQge1xyXG4gIC8qIElFOSBTVkcsIG5lZWRzIGNvbmRpdGlvbmFsIG92ZXJyaWRlIG9mICdmaWx0ZXInIHRvICdub25lJyAqL1xyXG4gIGJhY2tncm91bmQ6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBEOTRiV3dnZG1WeWMybHZiajBpTVM0d0lpQS9QZ284YzNabklIaHRiRzV6UFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eU1EQXdMM04yWnlJZ2QybGtkR2c5SWpFd01DVWlJR2hsYVdkb2REMGlNVEF3SlNJZ2RtbGxkMEp2ZUQwaU1DQXdJREVnTVNJZ2NISmxjMlZ5ZG1WQmMzQmxZM1JTWVhScGJ6MGlibTl1WlNJK0NpQWdQR3hwYm1WaGNrZHlZV1JwWlc1MElHbGtQU0puY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrSWlCbmNtRmthV1Z1ZEZWdWFYUnpQU0oxYzJWeVUzQmhZMlZQYmxWelpTSWdlREU5SWpBbElpQjVNVDBpTUNVaUlIZ3lQU0l3SlNJZ2VUSTlJakV3TUNVaVBnb2dJQ0FnUEhOMGIzQWdiMlptYzJWMFBTSXdKU0lnYzNSdmNDMWpiMnh2Y2owaUl6QXdNREF3TUNJZ2MzUnZjQzF2Y0dGamFYUjVQU0l3SWk4K0NpQWdJQ0E4YzNSdmNDQnZabVp6WlhROUlqRXdNQ1VpSUhOMGIzQXRZMjlzYjNJOUlpTXdNREF3TURBaUlITjBiM0F0YjNCaFkybDBlVDBpTUM0Mk5TSXZQZ29nSUR3dmJHbHVaV0Z5UjNKaFpHbGxiblErQ2lBZ1BISmxZM1FnZUQwaU1DSWdlVDBpTUNJZ2QybGtkR2c5SWpFaUlHaGxhV2RvZEQwaU1TSWdabWxzYkQwaWRYSnNLQ05uY21Ga0xYVmpaMmN0WjJWdVpYSmhkR1ZrS1NJZ0x6NEtQQzl6ZG1jKyk7XHJcbiAgYmFja2dyb3VuZDogLW1vei1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwKSAwJSwgcmdiYSgwLDAsMCwwLjk1KSAxMDAlKTsgLyogRkYzLjYrICovXHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgY29sb3Itc3RvcCgwJSxyZ2JhKDAsMCwwLDApKSwgY29sb3Itc3RvcCgxMDAlLHJnYmEoMCwwLDAsMC45NSkpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXHJcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuOTUpIDEwMCUpOyAvKiBDaHJvbWUxMCssU2FmYXJpNS4xKyAqL1xyXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC45NSkgMTAwJSk7IC8qIE9wZXJhIDExLjEwKyAqL1xyXG4gIGJhY2tncm91bmQ6IC1tcy1saW5lYXItZ3JhZGllbnQodG9wLCAgcmdiYSgwLDAsMCwwKSAwJSxyZ2JhKDAsMCwwLDAuOTUpIDEwMCUpOyAvKiBJRTEwKyAqL1xyXG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICByZ2JhKDAsMCwwLDApIDAlLHJnYmEoMCwwLDAsMC45NSkgMTAwJSk7IC8qIFczQyAqL1xyXG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjMDAwMDAwMDAnLCBlbmRDb2xvcnN0cj0nI2E2MDAwMDAwJyxHcmFkaWVudFR5cGU9MCApOyAvKiBJRTYtOCAqL1xyXG59XHJcblxyXG5AbWl4aW4gcm91bmRlZF9jb3JuZXJzICgkcmFkaXVzKSB7XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cztcclxuICAtby1ib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xyXG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuQG1peGluIGJhY2tncm91bmQoJGltZ3BhdGgsJHBvc2l0aW9uOjAgMCwkcmVwZWF0OiBuby1yZXBlYXQsICRjb2xvcjogJGNvbG9yVHJhbnNwYXJlbnQpIHtcclxuICBiYWNrZ3JvdW5kOiB7XHJcbiAgICBpbWFnZTogdXJsKCRpbWdwYXRoKTtcclxuICAgIHBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgICByZXBlYXQ6ICRyZXBlYXQ7XHJcbiAgICBjb2xvcjogJGNvbG9yVHJhbnNwYXJlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBhcnJvd3NcclxuQG1peGluIGFycm93LWRvd24oJHdpZHRoLCAkaGVpZ2h0LCAkY29sb3IpIHtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIGJvcmRlci13aWR0aDogJGhlaWdodCAkd2lkdGggMCAkd2lkdGg7XHJcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbkBtaXhpbiBhcnJvdy11cCgkd2lkdGgsICRoZWlnaHQsICRjb2xvcikge1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgYm9yZGVyLXdpZHRoOiAwICR3aWR0aCAkaGVpZ2h0ICR3aWR0aDtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvcjtcclxufVxyXG5cclxuLy8gQ2xlYXJmaXhcclxuQG1peGluIGNsZWFyZml4IHtcclxuICAmOmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgZGlzcGxheTogdGFibGU7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuXHJcbi8vIFZlcnRpY2FsbHkgY2VudGVyXHJcbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbiB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRvcDogNTAlO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG59XHJcblxyXG4vL0Nyb3NzIGJyb3dzZXIgb3BhY2l0eVxyXG5AbWl4aW4gb3BhY2l0eSgkb3BhY2l0eSkge1xyXG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xyXG4gICRvcGFjaXR5LWllOiAkb3BhY2l0eSAqIDEwMDtcclxuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpOyAvL0lFOFxyXG59XHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRhcmdzLi4uKSB7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkYXJncztcclxuICAtbW96LXRyYW5zaXRpb246ICRhcmdzO1xyXG4gIC1tcy10cmFuc2l0aW9uOiAkYXJncztcclxuICAtby10cmFuc2l0aW9uOiAkYXJncztcclxuICB0cmFuc2l0aW9uOiAkYXJncztcclxufVxyXG5AbWl4aW4gdmVydGljYWwtYWxpZ24oJHBvc2l0aW9uOiByZWxhdGl2ZSkge1xyXG4gIHBvc2l0aW9uOiAkcG9zaXRpb247XHJcbiAgdG9wOiA1MCU7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBhcnJvd19oZWxwZXIoJGFycm93U2l6ZSwgJGFycm93Q29sb3IsICRtYXJnaW4sICRzaWRlLCAkYWxpZ24pIHtcclxuICBAaWYgJHNpZGUgPT0gXCJ0b3BcIiB7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYXJyb3dDb2xvcjtcclxuICAgIHRvcDogLTIgKiAkYXJyb3dTaXplO1xyXG4gIH1cclxuICBAaWYgJHNpZGUgPT0gXCJib3R0b21cIiB7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkYXJyb3dDb2xvcjtcclxuICAgIGJvdHRvbTogLTIgKiAkYXJyb3dTaXplO1xyXG4gIH1cclxuICBAaWYgJHNpZGUgPT0gXCJsZWZ0XCIge1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkYXJyb3dDb2xvcjtcclxuICAgIGxlZnQ6IC0yICogJGFycm93U2l6ZTtcclxuICB9XHJcbiAgQGlmICRzaWRlID09IFwicmlnaHRcIiB7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGFycm93Q29sb3I7XHJcbiAgICByaWdodDogLTIgKiAkYXJyb3dTaXplO1xyXG4gIH1cclxuICBAaWYgJHNpZGUgPT0gXCJyaWdodFwiIG9yICRzaWRlID09IFwibGVmdFwiIHtcclxuICAgIEBpZiAkYWxpZ24gPT0gXCJjZW50ZXJcIiB7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBtYXJnaW4tdG9wOiAtJGFycm93U2l6ZTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRhbGlnbiA9PSBcInRvcFwiIHtcclxuICAgICAgdG9wOiAkbWFyZ2luO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJGFsaWduID09IFwiYm90dG9tXCIge1xyXG4gICAgICBib3R0b206ICRtYXJnaW47XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpZiAkc2lkZSA9PSBcImJvdHRvbVwiIG9yICRzaWRlID09IFwidG9wXCIge1xyXG4gICAgQGlmICRhbGlnbiA9PSBcImNlbnRlclwiIHtcclxuICAgICAgcmlnaHQ6IDUwJTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAtJGFycm93U2l6ZTtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRhbGlnbiA9PSBcImxlZnRcIiB7XHJcbiAgICAgIGxlZnQ6ICRtYXJnaW47XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkYWxpZ24gPT0gXCJyaWdodFwiIHtcclxuICAgICAgcmlnaHQ6ICRtYXJnaW47XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYXJyb3coJHNpZGU6IFwicmlnaHRcIiwgJGFsaWduOiBcImNlbnRlclwiLCAkc2l6ZTogMjBweCwgJGNvbG9yOiAjZjZmNmY2LCAkYm9yZGVyQ29sb3I6IFwibm9uZVwiLCAkYm9yZGVyU2l6ZTogM3B4KSB7XHJcbiAgJHNlbGVjdG9yOiBcIiY6YWZ0ZXIsICY6YmVmb3JlXCI7XHJcbiAgQGlmICRib3JkZXJDb2xvciA9PSBcIm5vbmVcIiB7XHJcbiAgICAkc2VsZWN0b3I6IFwiJjphZnRlclwiO1xyXG4gIH1cclxuICAjeyRzZWxlY3Rvcn0ge1xyXG4gICAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIGNvbnRlbnQ6IFwiIFwiO1xyXG4gICAgaGVpZ2h0OiAwO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgfVxyXG4gIFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkc2l6ZTtcclxuICAgIEBpbmNsdWRlIGFycm93X2hlbHBlcigkc2l6ZSwgJGNvbG9yLCAkc2l6ZSwgJHNpZGUsICRhbGlnbik7XHJcbiAgfVxyXG4gIFxyXG4gIEBpZiAkYm9yZGVyQ29sb3IgIT0gXCJub25lXCIge1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBib3JkZXItd2lkdGg6ICRib3JkZXJTaXplICsgJHNpemU7XHJcbiAgICAgIEBpbmNsdWRlIGFycm93X2hlbHBlcigkc2l6ZSArICRib3JkZXJTaXplLCAkYm9yZGVyQ29sb3IsICRzaXplIC0gJGJvcmRlclNpemUsICRzaWRlLCAkYWxpZ24pO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG5cclxuLyoqKioqKioqKioqKlxyXG4gVXNlXHJcblxyXG4uYm94IHtcclxuICAmLmFycm93LXRvcC1sZWZ0IHtAaW5jbHVkZSBhcnJvdygndG9wJywnbGVmdCcsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctdG9wLXJpZ2h0IHtAaW5jbHVkZSBhcnJvdygndG9wJywncmlnaHQnLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LXRvcC1jZW50ZXIge0BpbmNsdWRlIGFycm93KCd0b3AnLCdjZW50ZXInLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LWJvdHRvbS1sZWZ0IHtAaW5jbHVkZSBhcnJvdygnYm90dG9tJywnbGVmdCcsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctYm90dG9tLXJpZ2h0IHtAaW5jbHVkZSBhcnJvdygnYm90dG9tJywncmlnaHQnLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LWJvdHRvbS1jZW50ZXIge0BpbmNsdWRlIGFycm93KCdib3R0b20nLCdjZW50ZXInLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LWxlZnQtdG9wIHtAaW5jbHVkZSBhcnJvdygnbGVmdCcsJ3RvcCcsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctbGVmdC1jZW50ZXIge0BpbmNsdWRlIGFycm93KCdsZWZ0JywnY2VudGVyJywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1sZWZ0LWJvdHRvbSB7QGluY2x1ZGUgYXJyb3coJ2xlZnQnLCdib3R0b20nLCAxMHB4LCAjNGZhZGUzKX1cclxuICAmLmFycm93LXJpZ2h0LXRvcCB7QGluY2x1ZGUgYXJyb3coJ3JpZ2h0JywndG9wJywgMTBweCwgIzRmYWRlMyl9XHJcbiAgJi5hcnJvdy1yaWdodC1jZW50ZXIge0BpbmNsdWRlIGFycm93KCdyaWdodCcsJ2NlbnRlcicsIDEwcHgsICM0ZmFkZTMpfVxyXG4gICYuYXJyb3ctcmlnaHQtYm90dG9tIHtAaW5jbHVkZSBhcnJvdygncmlnaHQnLCdib3R0b20nLCAxMHB4LCAjNGZhZGUzKX1cclxufVxyXG5cclxuXHJcbi5ib3gtd2l0aC1ib3JkZXIge1xyXG4gICYuYXJyb3ctdG9wLWxlZnQge0BpbmNsdWRlIGFycm93KCd0b3AnLCdsZWZ0JywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LXRvcC1yaWdodCB7QGluY2x1ZGUgYXJyb3coJ3RvcCcsJ3JpZ2h0JywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LXRvcC1jZW50ZXIge0BpbmNsdWRlIGFycm93KCd0b3AnLCdjZW50ZXInLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctYm90dG9tLWxlZnQge0BpbmNsdWRlIGFycm93KCdib3R0b20nLCdsZWZ0JywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LWJvdHRvbS1yaWdodCB7QGluY2x1ZGUgYXJyb3coJ2JvdHRvbScsJ3JpZ2h0JywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LWJvdHRvbS1jZW50ZXIge0BpbmNsdWRlIGFycm93KCdib3R0b20nLCdjZW50ZXInLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctbGVmdC10b3Age0BpbmNsdWRlIGFycm93KCdsZWZ0JywndG9wJywgMTBweCwgI2VlZSwgIzRmYWRlMywgNnB4KX1cclxuICAmLmFycm93LWxlZnQtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygnbGVmdCcsJ2NlbnRlcicsIDEwcHgsICNlZWUsICM0ZmFkZTMsIDZweCl9XHJcbiAgJi5hcnJvdy1sZWZ0LWJvdHRvbSB7QGluY2x1ZGUgYXJyb3coJ2xlZnQnLCdib3R0b20nLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctcmlnaHQtdG9wIHtAaW5jbHVkZSBhcnJvdygncmlnaHQnLCd0b3AnLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctcmlnaHQtY2VudGVyIHtAaW5jbHVkZSBhcnJvdygncmlnaHQnLCdjZW50ZXInLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG4gICYuYXJyb3ctcmlnaHQtYm90dG9tIHtAaW5jbHVkZSBhcnJvdygncmlnaHQnLCdib3R0b20nLCAxMHB4LCAjZWVlLCAjNGZhZGUzLCA2cHgpfVxyXG59XHJcblxyXG5cclxuKioqKioqKioqKioqL1xyXG5cclxuLy8gSW1wb3J0IG1haW4gZm9udFxyXG5AbWl4aW4gZm9udC1mYWNlKCRzdHlsZS1uYW1lLCAkZm9sZGVyLCAkZmlsZSwgJGZhbWlseSwgJGNhdGVnb3J5OlwiXCIpIHtcclxuICAgICRmaWxlcGF0aDogJGZvbGRlciArICRmaWxlO1xyXG4gICAgQGZvbnQtZmFjZSB7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiI3skc3R5bGUtbmFtZX1cIjtcclxuICAgICAgICBzcmM6IHVybCgkZmlsZXBhdGggKyBcIi5lb3RcIik7XHJcbiAgICAgICAgc3JjOiB1cmwoJGZpbGVwYXRoICsgXCIuZW90PyNpZWZpeFwiKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksIHVybCgkZmlsZXBhdGggKyBcIi53b2ZmXCIpIGZvcm1hdCgnd29mZicpLCB1cmwoJGZpbGVwYXRoICsgXCIudHRmXCIpICBmb3JtYXQoJ3RydWV0eXBlJyksIHVybCgkZmlsZXBhdGggKyBcIi5zdmcjXCIgKyAkc3R5bGUtbmFtZSArIFwiXCIpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgICUjeyRzdHlsZS1uYW1lfSB7XHJcbiAgICAgICAgZm9udDoge1xyXG4gICAgICAgICAgICBAaWYgJGNhdGVnb3J5ICE9IFwiXCIge1xyXG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHN0eWxlLW5hbWV9XCIsICN7JGNhdGVnb3J5fTsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgZmFtaWx5OiBcIiN7JHN0eWxlLW5hbWV9XCI7XHJcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IG5vcm1hbDsgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgIH0gXHJcbn1cclxuXHJcbi8vIENVU1RPTSBNSVhJTkdTXHJcbkBtaXhpbiB3Zi1pY29uICgkaWNvbiwgJHNpemUsICRjb2xvcikge1xyXG4gICAgY29udGVudDogJGljb247XHJcbiAgICBmb250LWZhbWlseTogJ1dlc2Zhcm1lcnNJY29ucyc7XHJcbiAgICBmb250LXNpemU6ICRzaXplO1xyXG4gICAgY29sb3I6ICRjb2xvcjsgICAgICAgIFxyXG59XHJcblxyXG5AbWl4aW4gZGlyZWN0aW9uLWFycm93ICgkc2l6ZToxNCwgJGNvbG9yOiMwQjg2NTEpIHsgXHJcbiAgICBjb250ZW50OiAnXFxlODA0JztcclxuICAgIGZvbnQtZmFtaWx5OiAnV2VzZmFybWVyc0ljb25zJztcclxuICAgIGZvbnQtc2l6ZTogZW0oJHNpemUpO1xyXG4gICAgY29sb3I6ICRjb2xvcjsgXHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB3aWR0aDogMzBweDsgICAgXHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB0cmFuc2l0aW9uOmFsbCAxNTBtcyBlYXNlLWluLW91dDtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgMDtcclxufVxyXG5cclxuQG1peGluIHdpZGdldC10aXRsZSAoJHNpemU6MTMsICRjb2xvcjojNjQ2NDY0LCAkbGV0dGVyLXNwYWNpbmc6LjYgKSB7XHJcbiAgICBmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiOyAgICAgXHJcbiAgICBmb250LXNpemU6ZW0oJHNpemUpO1xyXG4gICAgbGluZS1oZWlnaHQ6Ljk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogZW0oJGxldHRlci1zcGFjaW5nKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7ICAgIFxyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuICAgIGZvbnQtd2VpZ2h0Om5vcm1hbDtcclxufVxyXG5cclxuLyogdXNhZ2UgZXhhbXBsZVxyXG4uZGl2IHsgIFxyXG4gICY6YWZ0ZXIge1xyXG4gICAgQGluY2x1ZGUgd2YtaWNvbiAoaWNvbiwgZm9udC1zaXplLCBjb2xvcik7XHJcbiAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgd2lkdGg6NTBweDtcclxuICAgIGhlaWdodDo1MHB4OyAgICBcclxuICB9XHJcbn1cclxuXHJcbiovXHJcblxyXG5cclxuXHJcbi8vIGRpYWdvbmFsIHN0cmlwZXNcclxuQG1peGluIHN0cmlwZXMtd2hpdGUoKSB7XHJcbiAgYmFja2dyb3VuZDp1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBR1FBQUFCa0NBWUFBQUJ3NHBWVUFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBeVpwVkZoMFdFMU1PbU52YlM1aFpHOWlaUzU0YlhBQUFBQUFBRHcvZUhCaFkydGxkQ0JpWldkcGJqMGk3N3UvSWlCcFpEMGlWelZOTUUxd1EyVm9hVWg2Y21WVGVrNVVZM3ByWXpsa0lqOCtJRHg0T25odGNHMWxkR0VnZUcxc2JuTTZlRDBpWVdSdlltVTZibk02YldWMFlTOGlJSGc2ZUcxd2RHczlJa0ZrYjJKbElGaE5VQ0JEYjNKbElEVXVOaTFqTURZM0lEYzVMakUxTnpjME55d2dNakF4TlM4d015OHpNQzB5TXpvME1EbzBNaUFnSUNBZ0lDQWdJajRnUEhKa1pqcFNSRVlnZUcxc2JuTTZjbVJtUFNKb2RIUndPaTh2ZDNkM0xuY3pMbTl5Wnk4eE9UazVMekF5THpJeUxYSmtaaTF6ZVc1MFlYZ3Ribk1qSWo0Z1BISmtaanBFWlhOamNtbHdkR2x2YmlCeVpHWTZZV0p2ZFhROUlpSWdlRzFzYm5NNmVHMXdQU0pvZEhSd09pOHZibk11WVdSdlltVXVZMjl0TDNoaGNDOHhMakF2SWlCNGJXeHVjenA0YlhCTlRUMGlhSFIwY0RvdkwyNXpMbUZrYjJKbExtTnZiUzk0WVhBdk1TNHdMMjF0THlJZ2VHMXNibk02YzNSU1pXWTlJbWgwZEhBNkx5OXVjeTVoWkc5aVpTNWpiMjB2ZUdGd0x6RXVNQzl6Vkhsd1pTOVNaWE52ZFhKalpWSmxaaU1pSUhodGNEcERjbVZoZEc5eVZHOXZiRDBpUVdSdlltVWdVR2h2ZEc5emFHOXdJRU5ESURJd01UVWdLRmRwYm1SdmQzTXBJaUI0YlhCTlRUcEpibk4wWVc1alpVbEVQU0o0YlhBdWFXbGtPa0k1TlVNNE56Y3pNREpDUlRFeFJUWTVSVFUxUkRnM1F6SXdOa1k1UVRreUlpQjRiWEJOVFRwRWIyTjFiV1Z1ZEVsRVBTSjRiWEF1Wkdsa09rSTVOVU00TnpjME1ESkNSVEV4UlRZNVJUVTFSRGczUXpJd05rWTVRVGt5SWo0Z1BIaHRjRTFOT2tSbGNtbDJaV1JHY205dElITjBVbVZtT21sdWMzUmhibU5sU1VROUluaHRjQzVwYVdRNlFqazFRemczTnpFd01rSkZNVEZGTmpsRk5UVkVPRGRETWpBMlJqbEJPVElpSUhOMFVtVm1PbVJ2WTNWdFpXNTBTVVE5SW5odGNDNWthV1E2UWprMVF6ZzNOekl3TWtKRk1URkZOamxGTlRWRU9EZERNakEyUmpsQk9USWlMejRnUEM5eVpHWTZSR1Z6WTNKcGNIUnBiMjQrSUR3dmNtUm1PbEpFUmo0Z1BDOTRPbmh0Y0cxbGRHRStJRHcvZUhCaFkydGxkQ0JsYm1ROUluSWlQejVCclQ0bUFBQUIrRWxFUVZSNDJ1emIzVTNEQUF4Rlllb0ZtS2ZkQUFhbUd6QVBzRUJJSG5oQktrMURmbzd0WThrUGVZdjBTWkVpMzNzYWh1R3A4WnpIdlk3N0RIaVhyM0ZmUWd3T3hyanZJUVlIWTNvSU1UZ1lIVUhRR04xQThCaWRRRkpnZEFGSmc5RUJKQlZHZFpCMEdKVkJTQmlmY3pHcWd0QXdYdWRpVkFSSmpWRU5KRDFHSlpBU0dGVkF5bUJVQUNtRmtSMmtIRVpta0pJWVdVSEtZbVFFS1kyUkRhUThSaWFRRmhoWlFOcGdaQUJwaFVFSGFZZEJCbW1KUVFWcGkwRUVhWTFCQTJtUFFRSVJBd1FpQmdoRURCQ0lHQ0FRTVVBZ1lvQkF4QUNCaUFFQ0VRTUVJZ1lJUkF3UWlCZ2dFREZBSUdLQVFNUUFnWWdCQXJtSXdRR1pNTjdFWUlDSUFRSVJBd1FpQmdoRURCQ0lHQ0FRTVVBZ1lvQkF4QUNCaUFFQ0VRTUVJZ1lJUkF3UWlCZ2dFREZBSUdLQVFNUUF6V2tZaGc4eE1IT2VRQVl4R0JqalhrTU1Ec2IwcFFveE9CaC8vYW1MY1FER2tTQmkzTWl4aFJnY2pDTkF4TGlUOEF3eE9CaDdnb2d4TS9zY1luQXc5Z0FSNDhGV1FJakJ3ZGdTUkl5RkZZMFFZek9NUlNlTkVJT0RzVGFJR0NzYyswSU1Ec1phSUdLc2VBWVBNVGdZL3dVUlk0T0FTSWpCd1ZnS0lzYUcwYWtRZzRQeEtJZ1lPNFFLUXd3T3hsd1FNWGFNMjRZWUhJeDdJR0ljRUVRUE1UZ1l0MERFT0xDaUVXSndNSDZEaUFFb0w0VVlISXdmRURGQXRiNnBRWFVSZzlPeC9CWmdBT1VYT1J4R3k0YWFBQUFBQUVsRlRrU3VRbUNDJyk7XHJcblxyXG59XHJcbkBtaXhpbiBzdHJpcGVzLWdyZWVuKCkge1xyXG4gIGJhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFHUUFBQUJrQ0FZQUFBQnc0cFZVQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUF5WnBWRmgwV0UxTU9tTnZiUzVoWkc5aVpTNTRiWEFBQUFBQUFEdy9lSEJoWTJ0bGRDQmlaV2RwYmowaTc3dS9JaUJwWkQwaVZ6Vk5NRTF3UTJWb2FVaDZjbVZUZWs1VVkzcHJZemxrSWo4K0lEeDRPbmh0Y0cxbGRHRWdlRzFzYm5NNmVEMGlZV1J2WW1VNmJuTTZiV1YwWVM4aUlIZzZlRzF3ZEdzOUlrRmtiMkpsSUZoTlVDQkRiM0psSURVdU5pMWpNRFkzSURjNUxqRTFOemMwTnl3Z01qQXhOUzh3TXk4ek1DMHlNem8wTURvME1pQWdJQ0FnSUNBZ0lqNGdQSEprWmpwU1JFWWdlRzFzYm5NNmNtUm1QU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh4T1RrNUx6QXlMekl5TFhKa1ppMXplVzUwWVhndGJuTWpJajRnUEhKa1pqcEVaWE5qY21sd2RHbHZiaUJ5WkdZNllXSnZkWFE5SWlJZ2VHMXNibk02ZUcxd1BTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMM2hoY0M4eExqQXZJaUI0Yld4dWN6cDRiWEJOVFQwaWFIUjBjRG92TDI1ekxtRmtiMkpsTG1OdmJTOTRZWEF2TVM0d0wyMXRMeUlnZUcxc2JuTTZjM1JTWldZOUltaDBkSEE2THk5dWN5NWhaRzlpWlM1amIyMHZlR0Z3THpFdU1DOXpWSGx3WlM5U1pYTnZkWEpqWlZKbFppTWlJSGh0Y0RwRGNtVmhkRzl5Vkc5dmJEMGlRV1J2WW1VZ1VHaHZkRzl6YUc5d0lFTkRJREl3TVRVZ0tGZHBibVJ2ZDNNcElpQjRiWEJOVFRwSmJuTjBZVzVqWlVsRVBTSjRiWEF1YVdsa09qUkJOamczTURBNE1ESkNSakV4UlRaQ05qSTNRVU5ET0VWQk5USkJNMFUzSWlCNGJYQk5UVHBFYjJOMWJXVnVkRWxFUFNKNGJYQXVaR2xrT2pSQk5qZzNNREE1TURKQ1JqRXhSVFpDTmpJM1FVTkRPRVZCTlRKQk0wVTNJajRnUEhodGNFMU5Pa1JsY21sMlpXUkdjbTl0SUhOMFVtVm1PbWx1YzNSaGJtTmxTVVE5SW5odGNDNXBhV1E2TkVFMk9EY3dNRFl3TWtKR01URkZOa0kyTWpkQlEwTTRSVUUxTWtFelJUY2lJSE4wVW1WbU9tUnZZM1Z0Wlc1MFNVUTlJbmh0Y0M1a2FXUTZORUUyT0Rjd01EY3dNa0pHTVRGRk5rSTJNamRCUTBNNFJVRTFNa0V6UlRjaUx6NGdQQzl5WkdZNlJHVnpZM0pwY0hScGIyNCtJRHd2Y21SbU9sSkVSajRnUEM5NE9uaHRjRzFsZEdFK0lEdy9lSEJoWTJ0bGRDQmxibVE5SW5JaVB6NlR6KzdCQUFBQjgwbEVRVlI0MnV6YnkwMERRUkJGVVZNSkVJL0pBTUlnU0p3QnNiQ0ZDT2hac0VFeUhnL3p1VlYxVzZyRjdGbzY2c1Ywdi9kdytuZzlOVjduTVpjeGo0QzlmSTE1RGpFNEdHUGVRd3dPeHZRUlluQXdPb0tnTWJxQjRERTZnYVRBNkFLU0JxTURTQ3FNNmlEcE1DcURrREErNTJKVUJhRmh2TXpGcUFpU0dxTWFTSHFNU2lBbE1LcUFsTUdvQUZJS0l6dElPWXpNSUNVeHNvS1V4Y2dJVWhvakcwaDVqRXdnTFRDeWdMVEJ5QURTQ29NTzBnNkRETklTZ3dyU0ZvTUkwaHFEQnRJZWd3UWlCZ2hFREJDSUdDQVFNVUFnWW9CQXhBQ0JpQUVDRVFNRUlnWUlSQXdRaUJnZ0VERkFJR0tBUU1RQWdZZ0JBaEVEQlBJa0JnZGt3bmdUZ3dFaUJnaEVEQkNJR0NBUU1VQWdZb0JBeEFDQmlBRUNFUU1FSWdZSVJBd1FpQmdnRURGQUlHS0FRTVFBZ1lnQkFoRURCaUlHWjUxRERBN0dtRXVJd2NHWURrZUl3Y0g0NjA5ZGpBTXdqZ1FSNDBxT0xjVGdZQndCSXNhTmhHZUl3Y0hZRTBTTW1kbm5FSU9Ec1FlSUdIZTJBa0lNRHNhV0lHSXNyR2lFR0p0aExMcEZEekU0R0d1RGlMSENZMStJd2NGWUMwU01GWi9CUXd3T3huOUJ4TmdnSUJKaWNEQ1dnb2l4WVhRcXhPQmczQXNpeGc2aHdoQ0RnekVYUkl3ZDQ3WWhCZ2ZqRm9nWUJ3VFJRd3dPeGpVUU1RNnNhSVFZSEl6ZklHSUF5a3NoQmdmakIwUU1VSzB2eEdCMUxMOEZHQUFFZHkxYisrdVpwUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xyXG59XHJcblxyXG5cclxuXHJcbkBtaXhpbiBtdWx0aWxpbmUtZWxsaXBzaXMoJGhlaWdodCwgJGxpbmVoZWlnaHQsICRlbGxpcHNpc3dpZHRoKSB7XHJcblxyXG4kZWxsaXBzaXN3aWR0aDogM2VtICFkZWZhdWx0O1xyXG5cclxuICAuZWxsaXBzaXMge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGhlaWdodDogJGhlaWdodDtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGluZWhlaWdodDsgfVxyXG5cclxuICAuZWxsaXBzaXM6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgd2lkdGg6IDVweDsgaGVpZ2h0OiAkaGVpZ2h0OyB9XHJcblxyXG4gIC5lbGxpcHNpcyA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tbGVmdDogLTVweDsgfSAgICBcclxuXHJcbiAgLmVsbGlwc2lzOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXFwwMjAyNlwiO1xyXG5cclxuICAgIGZsb2F0OiByaWdodDsgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgdG9wOiAtMjVweDsgbGVmdDogMTAwJTsgXHJcbiAgICB3aWR0aDogJGVsbGlwc2lzd2lkdGg7IG1hcmdpbi1sZWZ0OiAtJGVsbGlwc2lzd2lkdGg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICBcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIHJpZ2h0IHRvcCxcclxuICAgICAgICBmcm9tKHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkpLCB0byh3aGl0ZSksIGNvbG9yLXN0b3AoNTAlLCB3aGl0ZSkpO1xyXG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNTAlLCB3aGl0ZSk7ICAgICBcclxuICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB3aGl0ZSA1MCUsIHdoaXRlKTtcclxuICAgICAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNTAlLCB3aGl0ZSk7XHJcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgd2hpdGUgNTAlLCB3aGl0ZSlcclxuICB9XHJcblxyXG59IiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gQU5JTUFURSBDU1MgLSBTSU1QTElGSUVEIFZFUlNJT05cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHJcbkBjaGFyc2V0IFwiVVRGLThcIjtcclxuXHJcblxyXG4uYW5pbWF0ZWQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG59XHJcblxyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gRmFkZUluTGVmdFxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAlLCAwLCAwKTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluTGVmdCB7XHJcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZhZGVJblJpZ2h0XHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluUmlnaHQge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcclxufVxyXG5cclxuXHJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbi8vIEZhZGVJblVwXHJcblxyXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMCUsIDApO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwJSwgMCk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwJSwgMCk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4uZmFkZUluVXAge1xyXG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcclxufSIsImh0bWwsIGJvZHksIGRpdiwgc3BhbiwgYXBwbGV0LCBvYmplY3QsIGlmcmFtZSxcclxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCwgYmxvY2txdW90ZSwgcHJlLFxyXG5hLCBhYmJyLCBhY3JvbnltLCBhZGRyZXNzLCBiaWcsIGNpdGUsIGNvZGUsXHJcbmRlbCwgZGZuLCBlbSwgaW1nLCBpbnMsIGtiZCwgcSwgcywgc2FtcCxcclxuc21hbGwsIHN0cmlrZSwgc3Ryb25nLCBzdWIsIHN1cCwgdHQsIHZhcixcclxuYiwgdSwgaSwgY2VudGVyLFxyXG5kbCwgZHQsIGRkLCBvbCwgdWwsIGxpLFxyXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcclxudGFibGUsIGNhcHRpb24sIHRib2R5LCB0Zm9vdCwgdGhlYWQsIHRyLCB0aCwgdGQsXHJcbmFydGljbGUsIGFzaWRlLCBjYW52YXMsIGRldGFpbHMsIGVtYmVkLFxyXG5maWd1cmUsIGZpZ2NhcHRpb24sIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsXHJcbm1lbnUsIG5hdiwgb3V0cHV0LCBydWJ5LCBzZWN0aW9uLCBzdW1tYXJ5LFxyXG50aW1lLCBtYXJrLCBhdWRpbywgdmlkZW8sIG1haW4ge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIGJvcmRlcjogMDtcclxuICBmb250LXNpemU6IDEwMCU7XHJcbiAgZm9udDogaW5oZXJpdDtcclxuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XHJcbn1cclxuXHJcbi8qIGh0dHA6Ly93d3cucGF1bGlyaXNoLmNvbS8yMDEyL2JveC1zaXppbmctYm9yZGVyLWJveC1mdHcvICovXHJcbiosXHJcbio6YmVmb3JlLFxyXG4qOmFmdGVyIHtcclxuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXHJcbiAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cclxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cclxuICAvLyBvdmVyZmxvdy15OiBzY3JvbGw7IC8qIDMgKi9cclxufVxyXG5cclxuLyogTGlua3NcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cclxuICovXHJcbmEge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgJjpsaW5re1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmOnZpc2l0ZWQge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIEltcHJvdmUgcmVhZGFiaWxpdHkgd2hlbiBmb2N1c2VkIGFuZCBhbHNvIG1vdXNlIGhvdmVyZWQgaW4gYWxsIGJyb3dzZXJzLlxyXG4gKi9cclxuYTphY3RpdmUsXHJcbmE6aG92ZXIge1xyXG4gIG91dGxpbmU6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgYm9yZGVyIHdoZW4gaW5zaWRlIGBhYCBlbGVtZW50IGluIElFIDgvOS8xMC5cclxuICovXHJcbmltZyB7XHJcbiAgYm9yZGVyOiAwO1xyXG59XHJcblxyXG5ociB7XHJcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICBoZWlnaHQ6IDA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBZGRyZXNzIGBvdmVyZmxvd2Agc2V0IHRvIGBoaWRkZW5gIGluIElFIDgvOS8xMC8xMS5cclxuICovXHJcbmJ1dHRvbiB7XHJcbiAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxyXG4gKi9cclxuYnV0dG9uW2Rpc2FibGVkXSxcclxuaHRtbCBpbnB1dFtkaXNhYmxlZF0ge1xyXG4gIGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJlbW92ZSBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cclxuICovXHJcbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcclxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKipcclxuICogQWRkcmVzcyBGaXJlZm94IDQrIHNldHRpbmcgYGxpbmUtaGVpZ2h0YCBvbiBgaW5wdXRgIHVzaW5nIGAhaW1wb3J0YW50YCBpblxyXG4gKiB0aGUgVUEgc3R5bGVzaGVldC5cclxuICovXHJcbmlucHV0IHtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKipcclxuICogSXQncyByZWNvbW1lbmRlZCB0aGF0IHlvdSBkb24ndCBhdHRlbXB0IHRvIHN0eWxlIHRoZXNlIGVsZW1lbnRzLlxyXG4gKiBGaXJlZm94J3MgaW1wbGVtZW50YXRpb24gZG9lc24ndCByZXNwZWN0IGJveC1zaXppbmcsIHBhZGRpbmcsIG9yIHdpZHRoLlxyXG4gKlxyXG4gKiAxLiBBZGRyZXNzIGJveCBzaXppbmcgc2V0IHRvIGBjb250ZW50LWJveGAgaW4gSUUgOC85LzEwLlxyXG4gKiAyLiBSZW1vdmUgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxyXG4gKi9cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xyXG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cclxuICBwYWRkaW5nOiAwOyAvKiAyICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxyXG4gKiBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxyXG4gKiBkZWNyZW1lbnQgYnV0dG9uIHRvIGNoYW5nZSBmcm9tIGBkZWZhdWx0YCB0byBgdGV4dGAuXHJcbiAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcclxuICBoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi8qKlxyXG4gKiAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cclxuICovXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvKiAxICovXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxyXG4gKi9cclxudGV4dGFyZWEge1xyXG4gIG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4vKiBUYWJsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qKlxyXG4gKiBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXHJcbiAqL1xyXG50YWJsZSB7XHJcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcclxuICBib3JkZXItc3BhY2luZzogMDtcclxufVxyXG5cclxudGQsXHJcbnRoIHtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4vKiBIZWxwZXIgY2xhc3Nlc1xyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qKlxyXG4gKiAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxyXG4gKiAgICBhbmQgYHZpZGVvYCBjb250cm9scy5cclxuICogMi4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxyXG4gKiAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxyXG4gKiAgICBgaW5wdXRgIGFuZCBvdGhlcnMuXHJcbiAqL1xyXG5idXR0b24sXHJcbmh0bWwgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSwgLyogMSAqL1xyXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXHJcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXHJcbiAgY3Vyc29yOiBwb2ludGVyOyAvKiAzICovXHJcbn1cclxuXHJcbi8qIEhUTUw1IGRpc3BsYXktcm9sZSByZXNldCBmb3Igb2xkZXIgYnJvd3NlcnMgKi9cclxuYXJ0aWNsZSwgYXNpZGUsIGRldGFpbHMsIGZpZ2NhcHRpb24sIGZpZ3VyZSxcclxuZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLCBtYWluIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuaHRtbCwgYm9keSB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICB3aWR0aDogMTAwJTtcclxuICBmb250LWZhbWlseTogSGV1cmlzdGljYTtcclxufVxyXG5cclxub2wsIHVsIHtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG51bCBsaSB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcblxyXG5cclxudGFibGUge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG5cclxuaW5wdXR7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2UtaW4tb3V0O1xyXG4gIC1vLXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxuICAtbW96LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxufVxyXG4vKmxhYmVse1xyXG4gIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcclxuICAtby10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMjAwbXMgZWFzZS1pbi1vdXQ7XHJcbn0qL1xyXG4uY2xlYXJ7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgZmxvYXQ6IG5vbmU7XHJcbn1cclxuXHJcbi50aXRsZU5hbWVQYWdle1xyXG4gIGgze1xyXG4gICAgcGFkZGluZzogMjBweCAwIDE1cHggMDtcclxuICB9XHJcbn1cclxuLnBpbmtCdG4xOXtcclxuICBmb250LXNpemU6IDE5cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbn1cclxuLnBpbmtCdG4yNHtcclxuICBmb250LXNpemU6IDI0cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDIzcHg7XHJcbn1cclxuLnBpbmtTdWJtaXR7XHJcbiAgZm9udC1mYW1pbHk6IGludGVyZmFjZSwgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgZm9udC1zaXplOiAxOXB4O1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBiYWNrZ3JvdW5kOiAjYWYxNDc4O1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gICYucG9zdENvbW1lbnR7XHJcbiAgICBmb250LWZhbWlseTogaW50ZXJmYWNlLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICB9XHJcbn1cclxuLmZzMTZ7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG59XHJcbi5iUntcclxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTllOWU5O1xyXG59XHJcbi5iUkdyYXl7XHJcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2I3YjdiNztcclxufVxyXG4uYkJ7XHJcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlOWU5ZTk7XHJcbn1cclxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xyXG4gIC5iUntcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICB9XHJcbiAgLmJSR3JheXtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICB9XHJcbn0iLCIvLyBBbGwgd2VzZmFybWVycyBpY29uc1xyXG4kaWNvbi1kb3duLXNtYWxsOiAnXFxlODAwJztcclxuXHJcbi8qICfuoIAnICovXHJcblxyXG4kaWNvbi1sZWZ0LW9wZW4tbWluaTogJ1xcZTgwMSc7XHJcblxyXG4vKiAn7qCBJyAqL1xyXG5cclxuJGljb24tcmlnaHQtb3Blbi1taW5pOiAnXFxlODAyJztcclxuXHJcbi8qICfuoIInICovXHJcblxyXG4kaWNvbi11cC1vcGVuLW1pbmk6ICdcXGU4MDMnO1xyXG5cclxuLyogJ+6ggycgKi9cclxuXHJcbiRpY29uLWRvd24tb3Blbi1iaWc6ICdcXGU4MDQnO1xyXG5cclxuLyogJ+6ghCcgKi9cclxuXHJcbiRpY29uLWxlZnQtb3Blbi1iaWc6ICdcXGU4MDUnO1xyXG5cclxuLyogJ+6ghScgKi9cclxuXHJcbiRpY29uLXJpZ2h0LW9wZW4tYmlnOiAnXFxlODA2JztcclxuXHJcbi8qICfuoIYnICovXHJcblxyXG4kaWNvbi11cC1vcGVuLWJpZzogJ1xcZTgwNyc7XHJcblxyXG4vKiAn7qCHJyAqL1xyXG5cclxuJGljb24tZG93bi1vcGVuOiAnXFxlODA4JztcclxuXHJcbi8qICfuoIgnICovXHJcblxyXG4kaWNvbi1sZWZ0LW9wZW46ICdcXGU4MDknO1xyXG5cclxuLyogJ+6giScgKi9cclxuXHJcbiRpY29uLXJpZ2h0LW9wZW46ICdcXGU4MGEnO1xyXG5cclxuLyogJ+6giicgKi9cclxuXHJcbiRpY29uLXVwLW9wZW46ICdcXGU4MGInO1xyXG5cclxuLyogJ+6giycgKi9cclxuXHJcbiRpY29uLWRvd24tb3Blbi1taW5pOiAnXFxlODBjJztcclxuXHJcbi8qICfuoIwnICovXHJcblxyXG4kaWNvbi1saW5rZWRpbjogJ1xcZTgwZCc7XHJcblxyXG4vKiAn7qCNJyAqL1xyXG5cclxuJGljb24tdHdpdHRlcjogJ1xcZTgwZSc7XHJcblxyXG4vKiAn7qCOJyAqL1xyXG5cclxuJGljb24tbGVmdC1zbWFsbDogJ1xcZTgwZic7XHJcblxyXG4vKiAn7qCPJyAqL1xyXG5cclxuJGljb24tcmlnaHQtc21hbGw6ICdcXGU4MTAnO1xyXG5cclxuLyogJ+6gkCcgKi9cclxuXHJcbiRpY29uLXVwLXNtYWxsOiAnXFxlODExJztcclxuXHJcbi8qICfuoJEnICovXHJcblxyXG4kaWNvbi1tYWlsOiAnXFxlODEyJztcclxuXHJcbi8qICfuoJInICovXHJcblxyXG4kaWNvbi12aW1lbzogJ1xcZTgxMyc7XHJcblxyXG4vKiAn7qCTJyAqL1xyXG5cclxuJGljb24tc2VhcmNoOiAnXFxlODE0JztcclxuXHJcbi8qICfuoJQnICovXHJcblxyXG4kaWNvbi1kb3duLWRpcjogJ1xcZTgxNSc7XHJcblxyXG4vKiAn7qCVJyAqL1xyXG5cclxuJGljb24tbGVmdC1kaXI6ICdcXGU4MTYnO1xyXG5cclxuLyogJ+6glicgKi9cclxuXHJcbiRpY29uLXJpZ2h0LWRpcjogJ1xcZTgxNyc7XHJcblxyXG4vKiAn7qCXJyAqL1xyXG5cclxuJGljb24tdXAtZGlyOiAnXFxlODE4JztcclxuXHJcbi8qICfuoJgnICovXHJcblxyXG4kaWNvbi1jY3c6ICdcXGU4MTknO1xyXG5cclxuLyogJ+6gmScgKi9cclxuXHJcbiRpY29uLWN3OiAnXFxlODFhJztcclxuXHJcbi8qICfuoJonICovXHJcblxyXG4kaWNvbi11c2VyOiAnXFxlODFiJztcclxuXHJcbi8qICfuoJsnICovXHJcblxyXG4kaWNvbi11c2VyczogJ1xcZTgxYyc7XHJcblxyXG4vKiAn7qCcJyAqL1xyXG5cclxuJGljb24tdXNlci1hZGQ6ICdcXGU4MWQnO1xyXG5cclxuLyogJ+6gnScgKi9cclxuXHJcbiRpY29uLXBsdXM6ICdcXGU4MWUnO1xyXG5cclxuLyogJ+6gnicgKi9cclxuXHJcbiRpY29uLW1pbnVzOiAnXFxlODFmJztcclxuXHJcbi8qICfuoJ8nICovXHJcblxyXG4kaWNvbi1oZWxwOiAnXFxlODIwJztcclxuXHJcbi8qICfuoKAnICovXHJcblxyXG4kaWNvbi1pbmZvOiAnXFxlODIxJztcclxuXHJcbi8qICfuoKEnICovXHJcblxyXG4kaWNvbi1hdHRlbnRpb246ICdcXGU4MjInO1xyXG5cclxuLyogJ+6goicgKi9cclxuXHJcbiRpY29uLXJlc2l6ZS1mdWxsOiAnXFxlODIzJztcclxuXHJcbi8qICfuoKMnICovXHJcblxyXG4kaWNvbi1yZXNpemUtc21hbGw6ICdcXGU4MjQnO1xyXG5cclxuLyogJ+6gpCcgKi9cclxuXHJcbiRpY29uLWxvY2F0aW9uOiAnXFxlODI1JztcclxuXHJcbi8qICfuoKUnICovXHJcblxyXG4kaWNvbi1mYWNlYm9vazogJ1xcZTgyNic7XHJcblxyXG4vKiAn7qCmJyAqL1xyXG5cclxuJGljb24tY2hlY2s6ICdcXGU4MjcnO1xyXG5cclxuLyogJ+6gpycgKi9cclxuXHJcbiRpY29uLWNhbmNlbDogJ1xcZTgyOCc7XHJcblxyXG4vKiAn7qCoJyAqL1xyXG5cclxuJGljb24tbWVudTogJ1xcZTgyOSc7XHJcblxyXG4vKiAn7qCpJyAqL1xyXG5cclxuJGljb24tY2hhcnQtcGllOiAnXFxlODJhJztcclxuXHJcbi8qICfuoKonICovXHJcblxyXG4kaWNvbi1jaGFydC1saW5lOiAnXFxlODJiJztcclxuXHJcbi8qICfuoKsnICovXHJcblxyXG4kaWNvbi1jaGFydC1iYXI6ICdcXGU4MmMnO1xyXG5cclxuLyogJ+6grCcgKi9cclxuXHJcbiRpY29uLWNoYXJ0LWFyZWE6ICdcXGU4MmQnO1xyXG5cclxuLyogJ+6grScgKi9cclxuXHJcbiRpY29uLXdmLWxvZ286ICdcXGU4MmUnO1xyXG5cclxuLyogJ+6gricgKi9cclxuXHJcbiRpY29uLWluc3RhZ3JhbTogJ1xcZTgyZic7XHJcblxyXG4vKiAn7qCvJyAqL1xyXG5cclxuJGljb24tYXJyb3ctdXA6ICdcXGU4MzAnO1xyXG5cclxuLyogJ+6gsCcgKi9cclxuXHJcbiRpY29uLWFycm93LWRvd246ICdcXGU4MzEnO1xyXG5cclxuLyogJ+6gsScgKi9cclxuXHJcbiRpY29uLWFycm93LWJpZy11cDogJ1xcZTgzMic7XHJcblxyXG4vKiAn7qCyJyAqL1xyXG5cclxuJGljb24tYXJyb3ctYmlnLXJpZ2h0OiAnXFxlODMzJztcclxuXHJcbi8qICfuoLMnICovXHJcblxyXG4kaWNvbi1hcnJvdy1iaWctbGVmdDogJ1xcZTgzNCc7XHJcblxyXG4vKiAn7qC0JyAqL1xyXG5cclxuJGljb24tYXJyb3ctYmlnLWRvd246ICdcXGU4MzUnO1xyXG5cclxuLyogJ+6gtScgKi9cclxuXHJcbiRpY29uLWljb24tY2hlY2tib3gtc2VsZWN0ZWQ6ICdcXGU4MzYnO1xyXG5cclxuLyogJ+6gticgKi9cclxuXHJcbiRpY29uLWljb24tY2hlY2tib3g6ICdcXGU4MzcnO1xyXG5cclxuLyogJ+6gtycgKi9cclxuIiwiJGJyb3dzZXItY29udGV4dDogMTZweDtcclxuXHJcbkBmdW5jdGlvbiBlbSgkcGl4ZWxzLCAkY29udGV4dDogJGJyb3dzZXItY29udGV4dCkge1xyXG4gIEBpZiAodW5pdGxlc3MoJHBpeGVscykpIHtcclxuICAgICRwaXhlbHM6ICRwaXhlbHMgKiAxcHg7XHJcbiAgfVxyXG5cclxuICBAaWYgKHVuaXRsZXNzKCRjb250ZXh0KSkge1xyXG4gICAgJGNvbnRleHQ6ICRjb250ZXh0ICogMXB4O1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkcGl4ZWxzIC8gJGNvbnRleHQgKiAxZW07XHJcbn0iLCIvLyBJbmxpbmUgbWVkaWEgcXVlcmllc1xyXG5cclxuLy8gRXhhbXBsZVxyXG4vLyBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldC1hbmQtZGVza3RvcCl7fVxyXG5cclxuQG1peGluIG1lZGlhLXF1ZXJ5KCRicmVha3BvaW50KSB7XHJcblxyXG4gIEBpZiAkYnJlYWtwb2ludCA9PSB0YWJsZXQge1xyXG4gICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiBlbSg3NjhweCkpIGFuZCAobWF4LXdpZHRoOiBlbSgxMDI0cHgpKSB7IEBjb250ZW50OyB9XHJcbiAgfVxyXG4gIEBpZiAkYnJlYWtwb2ludCA9PSB0YWJsZXQtcG9ydCB7XHJcbiAgLyogUG9ydHJhaXQgKi9cclxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtZGV2aWNlLXdpZHRoOiAxMDI0cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7IEBjb250ZW50OyB9ICAgIFxyXG4gIH0gIFxyXG4gIEBlbHNlIGlmICRicmVha3BvaW50ID09IHRhYmxldC1hbmQtZGVza3RvcCB7XHJcbiAgIC8vQG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogZW0oNzY4cHgpKSB7IEBjb250ZW50OyB9IFxyXG4gICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiBlbSg4OTBweCkpIHsgQGNvbnRlbnQ7IH0gXHJcbiAgIC8vIC5uby1jc3Njb2x1bW5zICYgeyBAY29udGVudDsgfSBcclxuICB9XHJcbiAgQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gbW9iaWxlIHtcclxuICAgLy9AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiBlbSg2NDBweCkpIHsgQGNvbnRlbnQ7IH0gXHJcbiAgIEBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IGVtKDY0MHB4KSkgeyBAY29udGVudDsgfSBcclxuICAgLy8ubm8tY3NzY29sdW1ucyAmIHsgQGNvbnRlbnQ7IH0gXHJcbiAgfVxyXG4gIEBlbHNlIGlmICRicmVha3BvaW50ID09IG1vYmlsZS13aWRlIHtcclxuICAgQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogZW0oNzY4cHgpKSB7IEBjb250ZW50OyB9IFxyXG4gICAvLy5uby1jc3Njb2x1bW5zICYgeyBAY29udGVudDsgfSBcclxuICB9XHJcblxyXG4gIC8vICoqKioqKioqKiogIE1pZ3JhdGluZyB0b3dhcmRzIHRoZXNlIGJyZWFrcG9pbnRzICoqKioqKioqKiogXHJcbiAgQGVsc2UgaWYgJGJyZWFrcG9pbnQgPT0gcGhhYmxldCB7XHJcbiAgIEBtZWRpYSBhbGwgYW5kIChtaW4td2lkdGg6IGVtKDY0MHB4KSkgeyBAY29udGVudDsgfSAgIFxyXG4gICAvLyAubm8tY3NzY29sdW1ucyAmIHsgQGNvbnRlbnQ7IH0gXHJcbiAgfVxyXG4gIEBlbHNlIGlmICRicmVha3BvaW50ID09IGRlc2t0b3Age1xyXG4gICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiBlbSg5MjlweCkpIHsgQGNvbnRlbnQ7IH0gICBcclxuICAgLy8gLm5vLWNzc2NvbHVtbnMgJiB7IEBjb250ZW50OyB9IFxyXG4gIH1cclxuXHJcbiAgXHJcblxyXG4gIEBlbHNlIGlmICRicmVha3BvaW50ID09IHdpZGVzY3JlZW4ge1xyXG4gICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiBlbSgxNDQwcHgpKSB7IEBjb250ZW50OyB9ICBcclxuICAgLy8gLm5vLWNzc2NvbHVtbnMgJiB7IEBjb250ZW50OyB9ICAgIFxyXG4gIH1cclxuXHJcbn0iLCJodG1sIHtcclxuICAvL292ZXJmbG93OmhpZGRlbjtcclxuICBAaW5jbHVkZSBtZWRpYS1xdWVyeShtb2JpbGUtd2lkZSkge1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gIH1cclxufVxyXG5ib2R5IHtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgaGVpZ2h0OiBhdXRvOyBcclxuICAmLmZ0ci1maXgge1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxufVxyXG4ud3JhcHBlcntcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgbWluLWhlaWdodDogJGhlaWdodDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiBhdXRvO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xyXG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gIH1cclxufVxyXG4jbWFpbiB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgJi5vdmVybGF5IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAvL2hlaWdodDogMTAwdmg7XHJcbiAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgIG9wYWNpdHk6IC4zNTtcclxuICAgIH1cclxuICB9XHJcbiAgXHJcbn1cclxuLmNvbnRhaW5lcntcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIG1heC13aWR0aDogJG1heFdpZHRoO1xyXG4gIG1hcmdpbjogJG1hcmdpbkF1dG87XHJcbiAgcGFkZGluZzogMCAxNXB4OyBcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgcGFkZGluZzogMCAyMHB4OyBcclxuICB9XHJcbiAgPio6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5zZWN0aW9uIHtcclxuICBtYXJnaW46IDA7XHJcbiAgJi5ncmV5IHtcclxuICAgIGJhY2tncm91bmQ6ICRjb2xvci1zZWN0aW9uLWJnO1xyXG4gIH1cclxuICAmLnBhbmVscyB7XHJcbiAgICBwYWRkaW5nOiAwOy8vNzVweCAwIDAgMDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgcGFkZGluZzogNDVweCAyMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgcGFkZGluZzogNDVweCAyMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgIHBhZGRpbmctdG9wOiA3NXB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgfVxyXG4gICYuaW5kZW50LW1lZGl1bSB7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMzQ1cHg7XHJcbiAgICAgIH0gICAgXHJcbiAgfVxyXG4gICYuaW5kZW50LXNtYWxsIHtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgICB9IFxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTA2MHB4O1xyXG4gICAgICB9ICAgIFxyXG4gIH1cclxuICAmLnNwYWNlZCB7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICB9XHJcbn1cclxuXHJcbmEge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgXHJcbiAgJjpob3ZlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIH1cclxufSBcclxuXHJcbi8vIGdsb2JhbCBidXR0b24gc3R5bGVcclxuLmJ0biB7XHJcbiAgICBAZXh0ZW5kICVidXR0b247XHJcblxyXG4gICAgJi5jbG9zZSB7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLWNsb3NlLnBuZycpbm8tcmVwZWF0IDVweCA4cHg7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLWNsb3NlLWFjdGl2ZS5wbmcnKW5vLXJlcGVhdCA1cHggOHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmZpbHRlciB7XHJcbiAgICAgICAgY29sb3I6ICM2MTYzNjM7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBib3JkZXI6IHNvbGlkIDFweCAjNjQ2NDY0O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC1zaXplOiBzbWFsbDtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzLCAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4ICMwMGU4NjI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMwMGU4NjI7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmludmVydCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLW9yYW5nZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjp2aXNpdGVkIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1vcmFuZ2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBnbG9iYWwgc3VibWl0IHN0eWxlXHJcbi5idG4tc3VibWl0IHtcclxuICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gIGZvbnQtc2l6ZTogZW0oMTIpO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXHJcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVlbTtcclxuICBjb2xvcjogI2ZmZjsgXHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gIEBpbmNsdWRlIHJvdW5kZWRfY29ybmVycyg1MCUpO1xyXG4gIGhlaWdodDogODBweDtcclxuICB3aWR0aDogODBweDtcclxuICBtYXJnaW4tdG9wOiAyNXB4O1xyXG5cclxuICAmOmFjdGl2ZSwgXHJcbiAgJjp2aXNpdGVkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICB9XHJcblxyXG4gICY6aG92ZXIgXHJcbiAgIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5MztcclxuICB9XHJcbn1cclxuXHJcbi5idG5GaWx0ZXIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbn1cclxuXHJcbi5idG5GaWx0ZXIgc3BhbiB7XHJcbiAgICBmb250LXNpemU6IHNtYWxsO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4ucGFnZS1pbnRybyB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJhY2tncm91bmQ6ICRjb2xvci1zZWN0aW9uLWJnO1xyXG4gIHBhZGRpbmctdG9wOiAzNXB4O1xyXG4gIHBhZGRpbmctYm90dG9tOiAzNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7Ly8yMHB4O1xyXG4gID4gKjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG4gIC53eXNpd3lnID4gOmZpcnN0LWNoaWxke1xyXG4gICAgICBtYXJnaW4tdG9wOjA7XHJcbiAgfVxyXG4gIC53eXNpd3lnID4gZGl2ICo6bGFzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDM1cHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nLXRvcDogMTA1cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDJweDtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgaDEge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7ICAgXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBmb250LXNpemU6IGVtKDI2KTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiBlbSgyOCk7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBmb250LXNpemU6IGVtKDMyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogZW0oNDIpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgcCB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBtYXgtd2lkdGg6IDcwMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBhIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gIH1cclxuICAmLnNoYWxsb3cge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbn1cclxuLmhpZGRlbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIGxlZnQ6IC05OTk5ZW07XHJcbn1cclxuLnJvdW5kLWltZyB7XHJcbiAgQGluY2x1ZGUgcm91bmRlZF9jb3JuZXJzKDgwJSk7XHJcbn1cclxuLnJlc3AtaW1nIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IGF1dG87XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuLmFsaWduLWNlbnRlciB7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi8vRm91bmRhdGlvbiBvdmVycmlkZXNcclxuLmNvbnRlbnQtcGFnZSwgLnJvdy1zZWN0aW9uIHsgXHJcbiAgc3Ryb25nIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcbiAgLnJvdyB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICB9ICBcclxuICAgICYuZ2FsbGVyeS1pbmZvIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogOTgwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCBhdXRvIDgwcHggYXV0bztcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvIDEyMHB4IGF1dG87XHJcbiAgICAgIH0gXHJcbiAgICAgIGFiYnIge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTVweCAwIDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0gXHJcblxyXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4tZGV2aWNlLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LWRldmljZS13aWR0aDogMTI3OXB4KSB7IFxyXG4gIC5sYXJnZS1jb2xsYXBzZSAuY29sdW1uLCBcclxuICAubGFyZ2UtY29sbGFwc2UgLmNvbHVtbnMge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEludmVzdG9ycyBhcnRpY2xlIHBhZ2VzXHJcbiNtYWluIC5pbnZlc3RvcnMgeyBcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5OyBcclxuICAucGFnZS1pbnRybyB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgIGgxIHtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAvL21hcmdpbi1cclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcclxuICAgICAgLnBhZ2UtaW50cm8ge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgIFxyXG4gICAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxMHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTsgXHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgIC8vYm9yZGVyLWJvdHRvbS13aWR0aDogMTBweDtcclxuICAgICAgLnBhZ2UtaW50cm8ge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTpub25lO1xyXG4gICAgICB9XHJcbiAgfVxyXG59XHJcblxyXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgdGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICBvcGFjaXR5OiAxO1xyXG4gIGNvbG9yOiAkY29sb3ItZ3JleTY7IFxyXG4gIHRleHQtYWxpZ246ICBsZWZ0O1xyXG59XHJcblxyXG46LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgb3BhY2l0eTogMTtcclxuICBjb2xvcjogJGNvbG9yLWdyZXk2O1xyXG4gIHRleHQtYWxpZ246ICBsZWZ0O1xyXG59XHJcblxyXG46Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IFxyXG4gIG9wYWNpdHk6IDE7XHJcbiAgY29sb3I6ICRjb2xvci1ncmV5NjtcclxuICB0ZXh0LWFsaWduOiAgbGVmdDtcclxufVxyXG5cclxuOjpwbGFjZWhvbGRlciB7XHJcbiAgY29sb3I6ICRjb2xvci1ncmV5NjtcclxuICB0ZXh0LWFsaWduOiAgbGVmdDtcclxufVxyXG5cclxuLnN1YnNjcmliZSB7XHJcbiAgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyZXk2OyBcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICA6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5NjtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgfVxyXG5cclxuICA6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IFxyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gIH1cclxuXHJcbiAgOjpwbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yLWdyZXk2O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbi8vIHN0aWNreSBmb290ZXJcclxuQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XHJcbiAgaHRtbCwgYm9keSB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gICN3cmFwcGVyIHtcclxuICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG5cclxuICAjbWFpbiB7XHJcbiAgICAgIG1pbi1oZWlnaHQ6MTAwJTtcclxuICB9XHJcblxyXG5cclxufSovXHJcbiIsIiV1bHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbn1cclxuXHJcbiVidXR0b24ge1xyXG4gIGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb29rJywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcbiAgcGFkZGluZzogMCAxNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1vcmFuZ2U7IC8vYWRkIGNvbG91ciBoZXJlXHJcbiAgY29sb3I6ICNmZmY7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICBmb250LXNpemU6IGVtKDE5KTsgLy8gYWRkIGVtIHdpZHRoIGhlcmVcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYm9yZGVyOiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gIC8vQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yIDAuMnMpO1xyXG4gICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIyMjtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG4gIH1cclxuICAmOnZpc2l0ZWQge1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG59IiwiLnVpLWRhdGVwaWNrZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0Ly9AaW5jbHVkZSBib3gtc2hhZG93KHJnYmEoMCwgMCwgMCwgMC41KSAwIDFweCAxcHggMCk7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdHotaW5kZXg6IDEwMDUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnVpLWRhdGVwaWNrZXItaGVhZGVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0OyAvL2FkZCBzYXNzIGNvbG91clxyXG5cdGhlaWdodDogNDBweDtcclxuXHRmb250LXNpemU6IGVtKDEzcHgpO1xyXG5cdGNvbG9yOiAjZmZmO1xyXG5cdGEge1xyXG5cdFx0d2lkdGg6IDM2cHg7XHJcblx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHQvL0BpbmNsdWRlIGltYWdlLXJlcGxhY2UoKTtcclxuXHRcdC8vQGluY2x1ZGUgdHJhbnNpdGlvbi1wcm9wZXJ0eShiYWNrZ3JvdW5kLWNvbG9yKTtcclxuXHRcdC8vQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwLjVzKTtcclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oI2Y0ZjRmNCwgNSUpO1xyXG5cdFx0XHQvL0BpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoYmFja2dyb3VuZC1jb2xvcik7XHJcblx0XHRcdC8vQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbigwKTtcclxuXHRcdH1cclxuXHRcdCYudWktc3RhdGUtZGlzYWJsZWQge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdFx0XHRjdXJzb3I6IGRlZmF1bHQ7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4udWktZGF0ZXBpY2tlci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG59XHJcblxyXG4udWktZGF0ZXBpY2tlci1wcmV2IHtcclxuXHRmbG9hdDogbGVmdDtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZmZmO1xyXG5cdGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvbnMvaWNvbi1hcnctbGZ0LXdodC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbn1cclxuXHJcbi51aS1kYXRlcGlja2VyLW5leHQge1xyXG5cdGZsb2F0OiByaWdodDtcclxuXHRib3JkZXItbGVmdDogMXB4IHNvbGlkICNmZmY7XHJcblx0YmFja2dyb3VuZDogdXJsKC4uL2ltZy9pY29ucy9pY29uLWFydy1yZ2h0LXdodC5wbmcpIG5vLXJlcGVhdCBjZW50ZXI7XHJcbn1cclxuLy8gZGF0ZSAmIG1vbnRoIGRyb3AgZG93bnNcclxuLnVpLWRhdGVwaWNrZXItbW9udGgsIC51aS1kYXRlcGlja2VyLXllYXIge1xyXG5cdHdpZHRoOiA2NXB4O1xyXG5cdGhlaWdodDogMzBweDtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXI6IHNvbGlkIDFweCAjZTVlN2U4O1xyXG4gICAgcGFkZGluZzogMnB4IDIwcHggMnB4IDJweDtcclxuICAgIG1hcmdpbjogNXB4IDAgMCAwO1xyXG4gICAgZm9udC1mYW1pbHk6IFwic29sZWlsXCIsIHNhbnMtc2VyaWY7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7ICAgICAgICAgICAgLypSZW1vdmVzIGRlZmF1bHQgY2hyb21lIGFuZCBzYWZhcmkgc3R5bGUqL1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lOyAgICAgICAgICAgICAvKiBSZW1vdmVzIERlZmF1bHQgRmlyZWZveCBzdHlsZSovXHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybCguLi9pbWcvaWNvbnMvaWNvbi0tdWktY2FsLWRvd24ucG5nKSBuby1yZXBlYXQ7ICAgICAgICAgIC8qQWRkcyBiYWNrZ3JvdW5kLWltYWdlKi9cclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDEwcHg7ICAgICAgICAgICAvKlBvc2l0aW9uIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlKi9cclxuICAgIHRleHQtaW5kZW50OiAwLjAxcHg7ICAgICAgICAgIC8qIFJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1xyXG4gICAgdGV4dC1vdmVyZmxvdzogXCJcIjsgICAgICAgICAgICAgICAvKlJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1x0XHRcdFxyXG59XHJcblxyXG4udWktZGF0ZXBpY2tlci1tb250aDo6LW1zLWV4cGFuZCwgLnVpLWRhdGVwaWNrZXIteWVhcjo6LW1zLWV4cGFuZCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG4ubm8tY3NzY29sdW1ucyB7XHJcblx0LnVpLWRhdGVwaWNrZXItbW9udGgsIC51aS1kYXRlcGlja2VyLXllYXIge1xyXG5cdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdHBhZGRpbmc6IDVweDtcclxuXHR9XHJcbn1cclxuLnVpLWRhdGVwaWNrZXItbW9udGgge1xyXG5cdG1hcmdpbi1yaWdodDogMTVweDtcclxufVxyXG5cclxuXHJcbi51aS1kYXRlcGlja2VyLWNhbGVuZGFyIHtcclxuXHRib3JkZXI6IDA7XHJcblx0Ly9ib3JkZXItYm90dG9tOiAycHggc29saWQgIzY2NjtcclxuXHRtYXJnaW46IDA7XHJcblx0ZGlzcGxheTogdGFibGU7XHJcblx0dGFibGUtbGF5b3V0OiBhdXRvO1xyXG5cdC8vQGluY2x1ZGUgYm94LXNoYWRvdyhyZ2JhKDAsIDAsIDAsIDAuMikgMCAycHggNXB4IDApO1xyXG5cdHRoZWFkIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcclxuXHRcdGZsb2F0OiBub25lO1xyXG5cdH1cclxuXHR0Ym9keSB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXA7XHJcblx0XHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG5cdH1cclxuXHR0aGVhZCB0cixcclxuXHR0Ym9keSB0ciB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1yb3c7XHJcblx0fVxyXG5cdHRoLFxyXG5cdHRkIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmZjAwMDA7IC8vcmVwbGFjZSByZWRcclxuXHRcdGJvcmRlcjogMXB4IHNvbGlkICNkOWQ5ZDk7XHJcblx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTNweCk7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0d2lkdGg6IDM1cHg7XHJcblx0XHRoZWlnaHQ6IDM1cHg7XHJcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHRcdCYudWktZGF0ZXBpY2tlci10b2RheSB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICNmNGY0ZjQ7IC8vYWRkIHNhc3MgY29sb3VyXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cdHRoIHtcclxuXHRcdGN1cnNvcjogZGVmYXVsdDtcclxuXHR9XHJcblx0dGQge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcclxuXHRcdGEge1xyXG5cdFx0XHRjb2xvcjogI2RkZDsgLy9yZXBsYWNlIGdyZXlcclxuXHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcclxuXHRcdFx0d2lkdGg6IDMycHg7XHJcblx0XHRcdGhlaWdodDogMzJweDtcclxuXHRcdFx0Ly9ib3JkZXI6IDJweCBzb2xpZCAkZ3JleS0tZGFyaztcclxuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi51aS1kYXRlcGlja2VyLXVuc2VsZWN0YWJsZSB7XHJcblx0Y29sb3I6ICM5OTk7XHJcblx0Y3Vyc29yOiBkZWZhdWx0O1xyXG59XHJcblxyXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhciAudWktZGF0ZXBpY2tlci1vdGhlci1tb250aCB7XHJcblx0YSB7XHJcblx0XHRjb2xvcjogIzk5OTtcclxuXHR9XHJcbn1cclxuXHJcbnRkLnVpLWRhdGVwaWNrZXItY3VycmVudC1kYXkge1xyXG5cdGEge1xyXG5cdFx0Ym9yZGVyOiAycHggc29saWQgIzFjNjgwMjtcclxuXHR9XHJcbn0iLCIvKiBTbGlkZXIgKi9cclxuXHJcbi5zbGljay1zbGlkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcclxuICAgIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xyXG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcclxuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuLnNsaWNrLWxpc3Qge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICYuZHJhZ2dpbmcge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBjdXJzb3I6IGhhbmQ7XHJcbiAgICB9XHJcbn1cclxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXHJcbi5zbGljay1zbGlkZXIgLnNsaWNrLWxpc3Qge1xyXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxufVxyXG5cclxuLnNsaWNrLXRyYWNrIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAmOmJlZm9yZSxcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY2xlYXI6IGJvdGg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgfVxyXG59XHJcbi5zbGljay1zbGlkZSB7XHJcbiAgICBmbG9hdDogbGVmdDtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDFweDtcclxuICAgIFtkaXI9XCJydGxcIl0gJiB7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgaW1nIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgICYuc2xpY2stbG9hZGluZyBpbWcge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgZGlzcGxheTogbm9uZTtcclxuXHJcbiAgICAmLmRyYWdnaW5nIGltZyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpY2stdmVydGljYWwgJiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxufVxyXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xyXG5cclxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcclxuXHJcbiRzbGljay1mb250LXBhdGg6IFwiLi4vZm9udHMvXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1mb250LWZhbWlseTogXCJzbGlja1wiICFkZWZhdWx0O1xyXG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi4vaW1nL2ljb25zL1wiICFkZWZhdWx0O1xyXG4kc2xpY2stYXJyb3ctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5ICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LWNvbG9yLWFjdGl2ZTogJGNvbG9yLW9yYW5nZSAhZGVmYXVsdDtcclxuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIuKGkFwiICFkZWZhdWx0O1xyXG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwi4oaSXCIgIWRlZmF1bHQ7XHJcbiRzbGljay1kb3QtY2hhcmFjdGVyOiBcIuKAolwiICFkZWZhdWx0O1xyXG4kc2xpY2stZG90LXNpemU6IDE1cHggIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XHJcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xyXG4kc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlOiAwLjc1ICFkZWZhdWx0O1xyXG5cclxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XHJcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGltYWdlLXVybCkge1xyXG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xyXG4gICAgfVxyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xyXG4gICAgfVxyXG59XHJcblxyXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xyXG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhmb250LXVybCkge1xyXG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XHJcbiAgICB9XHJcbiAgICBAZWxzZSB7XHJcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBTbGlkZXIgKi9cclxuXHJcbi5zbGljay1saXN0IHtcclxuICAgIC5zbGljay1sb2FkaW5nICYge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKFwiYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBJY29ucyAqL1xyXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XHJcbiAgICBAZm9udC1mYWNlIHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xyXG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XHJcbiAgICAgICAgc3JjOiBzbGljay1mb250LXVybChcInNsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBBcnJvd3MgKi9cclxuXHJcbi5zbGljay1wcmV2LFxyXG4uc2xpY2stbmV4dCB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMjBweDtcclxuICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgIGZvbnQtc2l6ZTogMHB4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XHJcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcclxuICAgIH1cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xyXG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcclxuICAgIH1cclxufVxyXG5cclxuLnNsaWNrLXByZXYge1xyXG4gICAgbGVmdDogLTI1cHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcclxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2xpY2stbmV4dCB7XHJcbiAgICByaWdodDogLTI1cHg7XHJcbiAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgIGxlZnQ6IC0yNXB4O1xyXG4gICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcclxuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xyXG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBEb3RzICovXHJcblxyXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG59XHJcblxyXG4uc2xpY2stZG90cyB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBsaSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbiAgICAgICAgICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsImhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjb2xvci1zZWFyY2gtbWJsLWJnO1xyXG4gICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBwYWRkaW5nOiA5cHggMCAyMHB4IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7IFxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCA0MHB4OyAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6MjU2MHB4OyAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB3aWR0aDogMTA0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy93Zi1sb2dvLnN2ZycpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMjJweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDoyOHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjE1cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNTZweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyMDtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgXHJcbiAgICB9XHJcbiAgICAuZ2xvYmFsLXNlYXJjaCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLXNlYXJjaC1tYmwtYmc7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAzMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDMwcHggMDtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOjA7XHJcbiAgICAgICAgICAgIG1hcmdpbjogLTdweCAwIDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpZWxkc2V0IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBsZWdlbmQsXHJcbiAgICAgICAgICAgIGxhYmVsIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IC05OTk5OWVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5mb3JtLXJvdyB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT0ndGV4dCddIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1zdHJva2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4IDVweCAycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAkY29sb3ItZ3JleTY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBlbSgyMDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT0ndGV4dCddOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LCAuNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6I2VhZWFlYTsgLy8kY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgIC8vdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9J3RleHQnXTpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICMwMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiRjb2xvci1ncmV5LWJvZHk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9J3N1Ym1pdCddIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTk5OTllbTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogNDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjsvLyRjb2xvci1ncmV5NTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5Oi41O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk1O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjglO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idXJnZXItYnV0dG9uIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDM0cHg7XHJcbiAgICAgICAgYm90dG9tOiAxNHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5idXJnZXItaWNvbiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1cmdlcigyNXB4LFxyXG4gICAgICAgICAgICAxcHgsXHJcbiAgICAgICAgICAgIDZweCxcclxuICAgICAgICAgICAgIzIyMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgLmJ1cmdlci1pY29uIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJ1cmdlci10by1jcm9zcztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuaGVhZGVyLmhvbWUge1xyXG4gICAgbWluLWhlaWdodDogODBweDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICNmZmY7XHJcbiAgICAvL21hcmdpbi1ib3R0b206MDtcclxuICAgIC5sb2dvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XHJcbiAgICB9XHJcbiAgICAuYnVyZ2VyLWJ1dHRvbiB7XHJcbiAgICAgICAgYm90dG9tOjIwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDkwcHg7XHJcbiAgICAgICAgLmxvZ28ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IFxyXG4gICAgICAgIHBhZGRpbmc6IDYwcHggMCAwIDA7XHJcbiAgICAgICAgbWluLWhlaWdodDogbm9uZTtcclxuICAgICAgICBtYXgtaGVpZ2h0OjE2MHB4O1xyXG4gICAgICAgIC5nbG9iYWwtc3ViIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkgeyAgICAgICAgICBcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNzVweDtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHsgICAgICAgICBcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgIHdpZHRoOiAyMDVweDtcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIEJ1cmdlciBwYXJ0c1xyXG4vL1xyXG4vLyAoLS0tKSB0b3AgICAgLT4gJjo6YmVmb3JlXHJcbi8vIFstLS1dIG1pZGRsZSAtPiAmXHJcbi8vICgtLS0pIGJvdHRvbSAtPiAmOjphZnRlclxyXG5cclxuXHJcbi8vIFZlbmRvciBwcmVmaXhlc1xyXG4kc2Fzcy1idXJnZXItYWRkLXZlbmRvci1wcmVmaXhlczogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vIEJ1cmdlclxyXG5AbWl4aW4gYnVyZ2VyKCR3aWR0aDogMzBweCwgJGhlaWdodDogNXB4LCAkZ3V0dGVyOiAzcHgsICRjb2xvcjogIzAwMCwgJGJvcmRlci1yYWRpdXM6IDAsICR0cmFuc2l0aW9uLWR1cmF0aW9uOiAuM3MpIHtcclxuICAgICRidXJnZXItaGVpZ2h0OiAkaGVpZ2h0ICFnbG9iYWw7XHJcbiAgICAkYnVyZ2VyLWd1dHRlcjogJGd1dHRlciAhZ2xvYmFsO1xyXG5cclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi10b3A6ICRoZWlnaHQgKyAkZ3V0dGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogJGhlaWdodCArICRndXR0ZXI7XHJcblxyXG4gICAgQGlmICRzYXNzLWJ1cmdlci1hZGQtdmVuZG9yLXByZWZpeGVzIHtcclxuICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICAgICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgfVxyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcblxyXG4gICAgJiwgJjo6YmVmb3JlLCAmOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgd2lkdGg6ICR3aWR0aDtcclxuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgIEBpZiAkYm9yZGVyLXJhZGl1cyAhPSAwIHtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaWYgJHNhc3MtYnVyZ2VyLWFkZC12ZW5kb3ItcHJlZml4ZXMge1xyXG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIC13ZWJraXQtdHJhbnNmb3JtO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIC1tb3otdHJhbnNmb3JtO1xyXG4gICAgICAgICAgICAtby10cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yLCAtby10cmFuc2Zvcm07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3IsIHRyYW5zZm9ybTtcclxuXHJcbiAgICAgICAgQGlmICRzYXNzLWJ1cmdlci1hZGQtdmVuZG9yLXByZWZpeGVzIHtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgICAgLW1vei10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcclxuICAgICAgICAgICAgLW8tdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgfVxyXG5cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgdG9wOiAtKCRoZWlnaHQgKyAkZ3V0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgdG9wOiAkaGVpZ2h0ICsgJGd1dHRlcjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIFNlbGVjdCBwYXJ0cyBvZiB0aGUgYnVyZ2VyXHJcbkBtaXhpbiBidXJnZXItcGFydHMge1xyXG4gICAgJiwgJjo6YmVmb3JlLCAmOjphZnRlciB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXJnZXItdG9wIHtcclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXJnZXItbWlkZGxlIHtcclxuICAgICYge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnVyZ2VyLWJvdHRvbSB7XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vLyBCdXJnZXIgYW5pbWF0aW9uc1xyXG5AbWl4aW4gYnVyZ2VyLXRvLWNyb3NzKCRjb2xvcjogYXV0bykge1xyXG4gICAgJiB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcbiAgICBAaWYgKCRjb2xvciAhPSBhdXRvKSB7XHJcbiAgICAgICAgJjo6YmVmb3JlLCAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIEBpZiAkc2Fzcy1idXJnZXItYWRkLXZlbmRvci1wcmVmaXhlcyB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJGJ1cmdlci1ndXR0ZXIgKyAkYnVyZ2VyLWhlaWdodCkgcm90YXRlKDQ1ZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpIHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgkYnVyZ2VyLWd1dHRlciArICRidXJnZXItaGVpZ2h0KSByb3RhdGUoNDVkZWcpO1xyXG4gICAgfVxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgIEBpZiAkc2Fzcy1idXJnZXItYWRkLXZlbmRvci1wcmVmaXhlcyB7XHJcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0oJGJ1cmdlci1ndXR0ZXIgKyAkYnVyZ2VyLWhlaWdodCkpIHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtKCRidXJnZXItZ3V0dGVyICsgJGJ1cmdlci1oZWlnaHQpKSByb3RhdGUoLTQ1ZGVnKTtcclxuICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0oJGJ1cmdlci1ndXR0ZXIgKyAkYnVyZ2VyLWhlaWdodCkpIHJvdGF0ZSgtNDVkZWcpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSgkYnVyZ2VyLWd1dHRlciArICRidXJnZXItaGVpZ2h0KSkgcm90YXRlKC00NWRlZyk7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gRk9SIFRFU1RJTkcgVEhFIE5BVlxyXG4vKlxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgbmF2IC5pbnZlc3RvcnMgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLy93aWR0aDoxMDAlIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4qL1xyXG5cclxuLm5hdi13cmFwcGVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHotaW5kZXg6IDE7XHJcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDQ1MG1zO1xyXG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDUwbXM7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogY2FsYygxMDAlICsgMXB4KTtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogLTMyMHB4O1xyXG4gICAgd2lkdGg6IDMyMHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHJpZ2h0OiAtMzIwcHg7XHJcbiAgICAgICAgd2lkdGg6IDMyMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDA7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgfVxyXG4gICAgJi5tYmwtYWN0aXZlIHtcclxuICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTk5O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBNb2JpbGUgVGFibGV0XHJcbm5hdiB7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHJcbiAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLm1lbnUtdGl0bGUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxMHB4O1xyXG4gICAgICAgIG1hcmdpbjogNHB4IDMwcHggMzBweDtcclxuICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5NDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogZW0oLjYpO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5NDtcclxuICAgIH1cclxuICAgIC5nbG9iYWwsXHJcbiAgICAudXRpbCB7XHJcbiAgICAgICAgQGV4dGVuZCAldWw7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAwIGVtKDE4KSAwO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBIZXVyaXN0aWNhO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjE1cztcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIGdsb2JhbCBzdWIgbmF2aWdhdGlvblxyXG4gICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDQ1MG1zO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNDUwbXM7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxMDAlKTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktd2hpdGU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA2OyBcclxuICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViLWludHJvIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7ICAgXHJcbiAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLy9tb2JpbGUgdmVyc2lvbiBhY3RpdmVcclxuICAgICAgICAgICAgICAgICYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwKTtcclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOm5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBzcGFuLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5MztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5tZW51LXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuLWFuYztcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItZ3JlZW4tYW5jO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMTRweCAxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBHbG9iYWwgbmF2aWdhdGlvbiBzdHlsZXMgb25seSBcclxuICAgIC5nbG9iYWwge1xyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAmLmludmVzdG9ycyB7XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiAucm93IC5jb2x1bW5zIC5yb3cge1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTQ4MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLypcclxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgbmF2IHt9XHJcbn1cclxuKi9cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBuYXYge1xyXG4gICAgICAgIC5jb2x1bW5zIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjE1cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjE1cmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBtYWluIG5hdmlnYXRpb24gc2VjdGlvbnNcclxuICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgIC51dGlsIHtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ZW0oMTdweCk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41NjI1ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBuYXYge1xyXG4gICAgICAgIC5jb2x1bW5zIHtcclxuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH0gXHJcbn1cclxuXHJcbi8vIERlc2t0b3AgbmF2aWdhdGlvbiBcclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIG5hdiB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTM1cHg7XHJcbiAgICAgICAgLmdsb2JhbC1zdWIgPiAucm93IHtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3c7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIG5lc3RlZCBuZXN0ZWQgbmF2XHJcbiAgICAgICAgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC5nbG9iYWwtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb2x1bW5zIHtcclxuICAgICAgICAgICAgZmxleDogMSBhdXRvO1xyXG4gICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYsXHJcbiAgICAgICAgICAgIC5zdWItdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzODBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAubWVudS10aXRsZSxcclxuICAgICAgICAuZ2xvYmFsLXN1YiAubWVudS10aXRsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIG1haW4gbmF2aWdhdGlvbiBzZWN0aW9uc1xyXG4gICAgICAgIC5nbG9iYWwsXHJcbiAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMi41KTtcclxuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciAuM3MsIGNvbG9yIC4zcztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC01cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IC04cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDdweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIFN1YiBuYXZpZ2F0aW9uICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNTBweCAwIDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87IC8vLTIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwNSU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSArIDQ1cHgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW4tdG9wOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgLm5hdi1saXN0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1pbnRybyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMCAyMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOjIwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0hldXJpc3RpY2EnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE2KTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbWFnZS1saW5rIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggJGNvbG9yLWdyZXk2IHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAuaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMmMyZjJmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOm9wYWNpdHkgLjNzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjZweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjpjb2xvciAuM3MgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHdmLWljb24oICRpY29uLWFycm93LWJpZy1yaWdodCwgMThweCwgJGNvbG9yLWdyZWVuKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4zMztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvci1ncmVlbiwgNSUpOy8vJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDsvLyA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE0KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDEzKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsvLzE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAvLyBtYXJnaW4tbGVmdDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOmJhY2tncm91bmQtY29sb3IgLjNzLCBib3JkZXIgLjNzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggJGNvbG9yLWdyZXk2IHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW4sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ0hldXJpc3RpY2EnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggJGNvbG9yLWdyZXk2IHNvbGlkO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICtsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gZ2xvYmFsIG5hdmlnYXRpb24gc3R5bGVzIG9ubHlcclxuICAgICAgICAuZ2xvYmFsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogZW0oLjYpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgICAgICAgICA+IHNwYW4sIFxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgLy90ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIHNwYW4sIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuLWFuYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIGludmVzdG9yIG5hdmlnYXRpb24gc3R5bGVzXHJcbiAgICAgICAgICAgICAgICAmLmludmVzdG9ycyB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdGhyZWUgY29sdW1uIGludmVzdG9ycyBsaXN0XHJcbiAgICAgICAgICAgICAgICAgICAgLm5hdi1saXN0LWludmVzdG9ycyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLnJvdzpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLnJvdzpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWZsb3c6cm93O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuc3ViLXRpdGxlICsgLmdsb2JhbC1zdWItbmF2IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4sIFxyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogM3B4OyAvLy8xNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmltYWdlLWxpbmsgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogOTVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmdsb2JhbC1zdWItaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbnYtY2VudHJlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTQuNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6MzBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MzBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCAkaWNvbi1hcnJvdy1iaWctcmlnaHQsIDIycHgsICRjb2xvci1ncmVlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvci1ncmVlbiwgNSUpOy8vJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lOy8vdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViLW5hdiA+IGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOnRyYW5zcGFyZW50IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gdXRpbCBvbmx5IG5hdmlnYXRpbyBzdHlsZXNcclxuICAgICAgICAudXRpbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuXHJcbiAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmc6IDE4cHggMCAzM3B4IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW4tYW5jO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XHJcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogZW0oLjYpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gdG9wOmNhbGMoMTAwJSArIDhweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogLTIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAvL3dpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgLypcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAqL1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4sXHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbi1hbmM7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLyBubyBkcm9wZG93biAvIG1lZ2FtZW51XHJcbiAgICAgICAgICAgID4gbGkuZXhjIHtcclxuICAgICAgICAgICAgICAgIC8vIG5vIGdyZWVuIGxpbmVcclxuICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gXHJcblxyXG4gICAgLyogbmFzdHkgc3BlY2lmaWMgaGFjayAqL1xyXG4gICAgLmhvbWUge1xyXG4gICAgICAgIG5hdiB7XHJcbiAgICAgICAgICAgIC51dGlsLCBcclxuICAgICAgICAgICAgLmdsb2JhbCB7XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLCBcclxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLCBcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgIG5hdiB7XHJcbiAgICAgICAgLmdsb2JhbCxcclxuICAgICAgICAudXRpbCB7XHJcbiAgICAgICAgICAgID4gbGkgeyAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMy41KTtcclxuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OjYycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLmdsb2JhbC1zdWItaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQzMHB4Oy8vMzcwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXg6IDEgMCA0MzBweDsvLzM3MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgLmltYWdlLWxpbmsge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDoyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBnbG9iYWwgb25seSBzdHlsZXNcclxuICAgICAgICAuZ2xvYmFsIHtcclxuICAgICAgICAgICAgPiBsaS5pbnZlc3RvcnMge1xyXG4gICAgICAgICAgICAgICAgPiBzcGFuLCBcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLy9saW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICBuYXYge1xyXG4gICAgICAgIC5nbG9iYWwsXHJcbiAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIGdsb2JhbCBvbmx5IHN0eWxlc1xyXG4gICAgICAgIC5nbG9iYWwge1xyXG4gICAgICAgICAgICA+IGxpLmludmVzdG9ycyB7XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1pbnRybyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IHNwYW4sIFxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjRweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWItaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOjQ5MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6MSAwIDQ5MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC51dGlsIHtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBzcGFuLFxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMi41KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gU3ViIG5hdmlnYXRpb24gXHJcbm5hdiAuZ2xvYmFsLXN1YiB7XHJcbiAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmdsb2JhbC1zdWItaW50cm8ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgIHN0cm9uZyB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yi10aXRsZSB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMTMuNSk7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAxMHB4IDA7ICAgICAgICBcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXIgLjRzO1xyXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgKyAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNHMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgID4gbGk6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaXMtYWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIC5zdWItdGl0bGUge1xyXG4gICAgICAgICAgICAvL21hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleS1ib2R5OyAvL2dyZWVuLWFuYztcclxuICAgICAgICAgICAgKyAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcclxuICAgICAgICBAZXh0ZW5kICV1bDtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnSGV1cmlzdGljYSc7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgPiBhLFxyXG4gICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5MzsgLy8tYW5jO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbmF2IC5nbG9iYWwtc3ViIHtcclxuICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYgbGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE2KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGVtKDE5KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBuYXYgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2NXB4O1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ5MHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgd2lkdGg6IDk5OTlweDtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGxlZnQ6IC05OTk5cHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZ2xvYmFsLXN1Yi1pbnRybyB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgNTBweDtcclxuICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTRweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdWItdGl0bGUge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDEzLjUpO1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgICAgICArIC5nbG9iYWwtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGVtKDEyNzkpKSB7XHJcbiAgICBuYXYge1xyXG4gICAgICAgIC5nbG9iYWwtc3ViIC5yb3cgLmNvbHVtbnMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pbnZlc3RvcnMgLnJvdyB7XHJcbiAgICAgICAgICAgIC5jb2x1bW5zIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRpcmVjdGlvbi1hcnJvdygpO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmdsb2JhbC1zdWIgLmdsb2JhbC1zdWItbmF2IC5nbG9iYWwtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICA+IGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmdsb2JhbC1zdWIgLnN1Yi1uYXYge1xyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBkaXJlY3Rpb24tYXJyb3coMTQsICRjb2xvci1ncmV5LWJvZHkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgPiBhOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDUwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLy8gTmF2aWdhdGlvbiBFbGVtZW50c1xyXG4uaW52LWNlbnRyZSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbjogMCAxMHB4IDIwcHg7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAyMDBtcyBlYXNlLWluLW91dCk7XHJcbiAgICAmOmhvdmVyLFxyXG4gICAgJjpmb2N1cyxcclxuICAgICYuYWN0aXZlIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24gKG5vbmUpO1xyXG4gICAgICAgIG1hcmdpbjogMCAwIDIwcHg7XHJcbiAgICAgICAvLyBwYWRkaW5nOiA3cHggMCAwIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG4ubWJsLWJhY2sge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICBmb250LXNpemU6IGVtKDEzKTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogJGNvbG9yLW1ibC1iYWNrO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDEwcHg7XHJcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIEBpbmNsdWRlIHdmLWljb24gKCRpY29uLWxlZnQtb3Blbi1taW5pLCAxNnB4LCAkY29sb3ItZ3JleS1ib2R5KTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIGxlZnQ6IC01cHg7XHJcbiAgICAgICAgd2lkdGg6IDlweDtcclxuICAgICAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLWFycm93LWJhY2sucG5nJykgbm8tcmVwZWF0IDAgMDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8vIGllIDExIGZpeFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIGFuZCAobWluLXdpZHRoOmVtKDE5MDApKSB7XHJcbiAgICBuYXYgLmdsb2JhbCAuaW52ZXN0b3JzIC5nbG9iYWwtc3ViLWludHJvIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IC01cHg7XHJcbiAgICB9XHJcbn0iLCIvLyBVcGRhdGVkIFN0eWxlcyBmb3IgTW9iaWxlIE5hdmlnYXRpb25cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDplbSgxMjc5KSkge1xyXG4gICAgLm5hdi13cmFwcGVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAwcHg7XHJcbiAgICB9XHJcbiAgICBuYXYge1xyXG4gICAgICAgIC5tZW51LXRpdGxlIHtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMXB4IHNvbGlkICRjb2xvci1ncmV5NDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdsb2JhbCxcclxuICAgICAgICAudXRpbCB7XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAtNXB4O1xyXG4gICAgICAgICAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC4zKTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyAvL3VuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwMDA7IC8vJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViIHtcclxuICAgICAgICAgICAgICAgICAgICAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjZweCAxNXB4IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogMTVweCA3LjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmlzLWFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWItdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApIHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJisuY29sdW1ucyAuc3ViLXRpdGxlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLm1lbnUtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmdsb2JhbC1zdWItbmF2IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1Yi1uYXYuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViLFxyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDsgLy8kY29sb3ItZ3JleTM7ICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIHRlcnRpYXJ5IG5hdmlnaW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1Yi1uYXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBsaTpub3QoLnN1Yi1uYXYpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5nbG9iYWwge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBsaS5pbnZlc3RvcnMge1xyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLmludi1jZW50cmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTQpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCAkaWNvbi1hcnJvdy1iaWctcmlnaHQsIDIycHgsICRjb2xvci1ncmVlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3ItZ3JlZW4sIDEwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgaGVhZGVyIHtcclxuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgei1pbmRleDogOTk5OTk7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgICBoZWFkZXIsXHJcbiAgICBoZWFkZXIgLmNvbnRhaW5lciwgICAgXHJcbiAgICAubG9nbyB7XHJcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyBcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0OyBcclxuICAgIH1cclxuICAgIGhlYWRlciAuY29udGFpbmVyIHtcclxuICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgIC51dGlsIHtcclxuICAgICAgICAgICAgPiBsaTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YixcclxuICAgICAgICAgICAgICAgID4gc3BhbjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7IC8vIHNhZmFyaVxyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuNXMgZWFzZS1pbi1vdXQ7IFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNtYWluIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMjZweDtcclxuICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbWFyZ2luLXRvcCAuNXMgZWFzZS1pbi1vdXQ7XHJcbiAgICB9XHJcbiAgICAuc3RpY2t5LWhlYWRlciB7IFxyXG4gICAgICAgICNtYWluIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGhlYWRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjBweCk7XHJcbiAgICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDExcHgpO1xyXG4gICAgICAgICAgICAgICAgLmxvZ28ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMnB4KSBzY2FsZSguNik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMXB4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgICAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGE6YWZ0ZXIsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW46YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMXB4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAjaG9tZSB7XHJcbiAgICAgICAgI21haW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxNjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5zdGlja3ktaGVhZGVyIHtcclxuICAgICAgICAgICAgI21haW4ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaGVhZGVyIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOTRweCk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNHB4KTtcclxuICAgICAgICAgICAgICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNXB4KSBzY2FsZSguNzUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgICAgICAgICAgICAgIC51dGlsIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYTphZnRlciwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW46YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTJweCkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICNtYWluIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxNTBweDtcclxuICAgIH1cclxuICAgIC5zdGlja3ktaGVhZGVyIGhlYWRlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04MHB4KTtcclxuICAgICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1cHgpO1xyXG4gICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgICAgICAudXRpbCB7XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGE6YWZ0ZXIsIFxyXG4gICAgICAgICAgICAgICAgICAgID4gc3BhbjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNob21lIHtcclxuICAgICAgICAjbWFpbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE4MnB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnN0aWNreS1oZWFkZXIge1xyXG4gICAgICAgICAgICBoZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC05N3B4KTtcclxuICAgICAgICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgICAgICAgICAgICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNXB4KSBzY2FsZSguNTUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgIC5nbG9iYWwtc3ViIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yM3B4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5nbG9iYWwsXHJcbiAgICAgICAgICAgICAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYTphZnRlciwgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn0iLCIvLyBzdG9wcyB0cmFuc2l0aW9ucyBvbiBoZWFkZXIgYW5kIG5hdiBkdXJpbmcgYSByZXNpemUgZXZlbnRcclxuLnJlc2l6ZSB7XHJcbiAgICBoZWFkZXIsXHJcbiAgICBoZWFkZXIgLmNvbnRhaW5lcixcclxuICAgIGhlYWRlciAuY29udGFpbmVyIC5nbG9iYWwtc3ViLFxyXG4gICAgLmxvZ28sXHJcbiAgICAjbWFpbixcclxuICAgIC5uYXYtd3JhcHBlciB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgIH1cclxufVxyXG4iLCIuY29udGVudC1uYXYge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgLy9tYXJnaW46IDAgLTEuMjVyZW07XHJcbiAgICAubWJsLWJhY2sge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjJzO1xyXG4gICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMDRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgLy9tYXJnaW4tbGVmdDoyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5tYmwtY29udGVudC1uYXYge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC42KTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgIG1hcmdpbjogMjBweCAwIDA7XHJcbiAgICAgICAgLy9ib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzBweCAyMHB4IDIwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCRpY29uLWRvd24tb3Blbi1iaWcsIDE0cHgsICRjb2xvci1ncmV5Myk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgLy9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLXBsdXMucG5nJyluby1yZXBlYXQgMCAwO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAxNTBtcyBlYXNlLWluLW91dCk7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0tb3JpZ2luLCA1MCUgMzclIDApO1xyXG4gICAgICAgICAgICAvL2JhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCByb3RhdGUoMTgwZGVnKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJit1bCB7XHJcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjEwMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmLmlzLWFjdGl2ZSArIHVsID4gbGk6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBAZXh0ZW5kICV1bDtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgbWF4LWhlaWdodDowO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7Ly8yNnB4IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgIGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNC41KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGVtKDIwLCAxNyk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTZweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTUuNSk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogZW0oMjQsIDE4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgICAgICYudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjb2xvci1ncmV5NjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4Oy8vMzVweDsgXHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IGVtKDMwLCAxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC42KTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4Oy8vMzVweDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBlbSgxNSwgMTIpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIyMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI3NnB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uY29udGVudC1uYXYge1xyXG4gICAgJi5tb2JpbGUtbmF2IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgICYuZGVza3RvcC1uYXYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICYubW9iaWxlLW5hdiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZGVza3RvcC1uYXYge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGNvbnRlbnQgZGVza3RvcCBcclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIC5jb250ZW50LW5hdi5kZXNrdG9wLW5hdiB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDsgXHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xMHB4O1xyXG4gICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0Om5vbmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDI2cHggMjZweCAyNnB4IDA7XHJcbiAgICAgICAgICAgID4gbGkuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAgICAgPiAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTMpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC42KTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgZGlyZWN0aW9uLWFycm93ICgxNCwgJGNvbG9yLWdyZXkzKTtcclxuICAgICAgICAgICAgICAgICAgICAgIFx0bGluZS1oZWlnaHQ6MDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNnMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAvLyAgZm9udC1zaXplOiBlbSgxNC41KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGE6aG92ZXIsIGE6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWN0aXZlIGEge1xyXG5cdFx0XHRcdFx0XHRcdCB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE1LjUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFkZGluZy10b3A6MTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhOmhvdmVyLCBhOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVx0XHJcblx0XHQgICAgICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSBhIHtcclxuXHRcdFx0XHRcdFx0XHRcdFx0IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdFx0ICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiBsaS5kcm9wZG93bi5pcy1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6dHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICA+IC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBcdGNvbG9yOiRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgXHRjb2xvcjokY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLCByb3RhdGUoMTgwZGVnKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgID4gbGkuaXMtYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIGNvbnRlbnQgZGVza3RvcCBcclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAuY29udGVudC1uYXYuZGVza3RvcC1uYXYge1xyXG4gICAgICAgID4gdWwge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYuNSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG59XHJcbi8vIGNvbnRlbnQgZGVza3RvcCBcclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgLmNvbnRlbnQtbmF2LmRlc2t0b3AtbmF2IHtcclxuICAgICAgICA+IHVsIHtcclxuICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcbn1cclxuXHJcblxyXG4iLCJAbWl4aW4gcHJlZml4KCRwcm9wZXJ0eTogbm9uZSwgJHZhbHVlOiBub25lKSB7XHJcbiAgLXdlYmtpdC0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlO1xyXG4gIC1tcy0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAtby0jeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcclxufSIsIi5oZXJvIHtcclxuXHQuY29udGFpbmVyIHtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHRpbWcge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdH1cclxuXHRcdC5oZXJvLWNvcHkge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRwYWRkaW5nOiAyMHB4IDIwcHggNDBweCAyMHB4OyBcclxuXHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nOiAyMHB4IDMwcHggNDBweCAzMHB4OyBcclxuXHRcdFx0fVxyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChlbSg5MDEpKSB7IC8vIG9mZnNldCBicmVha3BvaW50XHJcblx0XHRcdFx0cGFkZGluZzogMDtcdFx0XHRcdFxyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0bGVmdDogMjBweDtcclxuXHRcdFx0XHRib3R0b206IDA7XHJcblx0XHRcdFx0bWF4LXdpZHRoOiAyOTBweDtcclxuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0XHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0XHRcdFx0Pioge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdFx0bGVmdDogNDBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG5cdFx0XHRcdG1heC13aWR0aDogMzUwcHg7XHJcblx0XHRcdFx0cGFkZGluZzogMDtcclxuXHRcdFx0XHQvL2xlZnQ6IDQwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0bGVmdDogODBweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRoMSB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmVlbjtcclxuXHRcdFx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0XHRmb250LXNpemU6IGVtKDIwKTtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMS4xO1x0XHRcdFx0XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA0OCU7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDI4KTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChlbSg5MDEpKSB7IFx0XHRcdFx0XHRcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xyXG5cdFx0XHRcdFx0Ly9saW5lLWhlaWdodDogZW0oMzAsIDI2KTtcclxuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA4MCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDI4KTtcclxuXHRcdFx0XHRcdC8vbGluZS1oZWlnaHQ6IGVtKDMyLCAyOCk7XHJcblx0XHRcdFx0XHRmbG9hdDogbm9uZTtcclxuXHRcdFx0XHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0cCB7XHJcblx0XHRcdFx0c3Ryb25nIHtcclxuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cdFx0XHRcdH1cclxuXHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTcpO1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSgyNCwgMTcpO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDQ4JTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChlbSg5MDEpKSB7IC8vIG9mZnNldCBicmVha3BvaW50XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDc1JTtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xyXG5cdFx0XHRcdFx0Ly9mb250LXNpemU6IGVtKDI2KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHRcdFx0XHRmb250LXNpemU6IGVtKDE3KTtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogZW0oMjQsIDE3KTtcclxuXHRcdFx0XHRcdGZsb2F0OiBub25lO1xyXG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA4MCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDIwKTtcclxuXHRcdFx0XHRcdGxpbmUtaGVpZ2h0OiBlbSgzMCwgMjApO1xyXG5cdFx0XHRcdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRcdFx0XHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59IiwiLy9yZW1vdmUgSU9TIHJvdW5kZWQgY29ybmVyIG1lc3NcclxuaW5wdXRbdHlwZT0ndGV4dCddLCBpbnB1dFt0eXBlPSdwYXNzd29yZCddLCBpbnB1dFt0eXBlPSdkYXRlJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIGlucHV0W3R5cGU9J21vbnRoJ10sIGlucHV0W3R5cGU9J3dlZWsnXSwgaW5wdXRbdHlwZT0nZW1haWwnXSwgaW5wdXRbdHlwZT0nbnVtYmVyJ10sIGlucHV0W3R5cGU9J3NlYXJjaCddLCBpbnB1dFt0eXBlPSd0ZWwnXSwgaW5wdXRbdHlwZT0ndGltZSddLCBpbnB1dFt0eXBlPSd1cmwnXSwgaW5wdXRbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEge1xyXG5cdC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XHJcbiAgICBsaW5lLWhlaWdodDogMS4zZW07XHJcbn1cclxuZmllbGRzZXQge1xyXG5cdGxlZ2VuZCB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OiAtOTk5OWVtO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdTdG9semwgVzAwIEJvbGQnLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0bGV0dGVyLXNwYWNpbmc6ZW0oMSk7XHJcblx0fVxyXG5cdC5mb3JtLXJvdyB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0bWFyZ2luOiAwIDAgMjBweCAwO1xyXG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcblx0fVxyXG5cdGxhYmVsIHtcclxuXHRcdGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb2xkJywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcblx0XHRsZXR0ZXItc3BhY2luZzplbSgxKTtcclxuXHR9XHJcblx0c2VsZWN0IHtcclxuXHQgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG5cdCAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XHJcblx0ICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcclxuXHQgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHQgICAgYm9yZGVyOiBzb2xpZCAxcHggJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG5cdCAgICBwYWRkaW5nOiA4cHggMzBweCAxMHB4IDEwcHg7XHJcblx0ICAgIG1hcmdpbjogMDtcclxuXHQgICAgZm9udC1mYW1pbHk6ICdTdG9semwgVzAwIEJvb2snLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHQgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuXHQgICAgZm9udC1zaXplOiBlbSgxNik7XHJcblx0ICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgICAgICAgICAgICAvKlJlbW92ZXMgZGVmYXVsdCBjaHJvbWUgYW5kIHNhZmFyaSBzdHlsZSovXHJcblx0ICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgICAgICAgICAgICAgLyogUmVtb3ZlcyBEZWZhdWx0IEZpcmVmb3ggc3R5bGUqL1xyXG5cdCAgICBiYWNrZ3JvdW5kOiAjZmZmIHVybCguLi9pbWcvaWNvbnMvaWNvbi1kZC1hcnJvdy5wbmcpIG5vLXJlcGVhdDsgICAgICAgICAgLypBZGRzIGJhY2tncm91bmQtaW1hZ2UqL1xyXG5cdCAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAxN3B4OyAgICAgICAgICAgLypQb3NpdGlvbiBvZiB0aGUgYmFja2dyb3VuZC1pbWFnZSovXHJcblx0ICAgIHRleHQtaW5kZW50OiAwLjAxcHg7ICAgICAgICAgIC8qIFJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1xyXG5cdCAgICB0ZXh0LW92ZXJmbG93OiBcIlwiOyAgICAgICAgICAgICAgIC8qUmVtb3ZlcyBkZWZhdWx0IGFycm93IGZyb20gZmlyZWZveCovXHJcblx0ICAgIGhlaWdodDogNDBweDtcclxuXHQgICAgbWluLXdpZHRoOiAwO1xyXG5cdCAgICAmOmZvY3VzIHtcclxuXHRcdFx0b3V0bGluZTogbm9uZTsvL1xyXG5cdFx0XHRib3JkZXItYm90dG9tOnNvbGlkIDFweCAjZmZmOy8vJGNvbG9yLWdyZWVuOyBcclxuXHQgICAgfVxyXG5cdH1cclxuXHRzZWxlY3Q6Oi1tcy1leHBhbmQgeyAvKmllMTEgZ2V0IHJpZCBvZiBkZWZhdWx0IGRkIGFycm93Ki9cclxuXHQgICAgZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0aW5wdXRbdHlwZT0ndGV4dCddLCBpbnB1dFt0eXBlPSdwYXNzd29yZCddLCBpbnB1dFt0eXBlPSdkYXRlJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIGlucHV0W3R5cGU9J21vbnRoJ10sIGlucHV0W3R5cGU9J3dlZWsnXSwgaW5wdXRbdHlwZT0nZW1haWwnXSwgaW5wdXRbdHlwZT0nbnVtYmVyJ10sIGlucHV0W3R5cGU9J3NlYXJjaCddLCBpbnB1dFt0eXBlPSd0ZWwnXSwgaW5wdXRbdHlwZT0ndGltZSddLCBpbnB1dFt0eXBlPSd1cmwnXSwgaW5wdXRbdHlwZT0nY29sb3InXSwgdGV4dGFyZWF7XHJcblx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0ICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuXHQgICAgYm9yZGVyLXJhZGl1czogMDtcclxuXHQgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xyXG5cdCAgICBib3JkZXI6IHNvbGlkIDFweCAkY29sb3ItZ3JleS1zdHJva2U7XHJcblx0ICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcblx0ICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcblx0ICAgIG1hcmdpbjogMDtcclxuXHQgICAgcGFkZGluZzogMTBweDtcclxuXHQgICAgbGV0dGVyLXNwYWNpbmc6ZW0oMSk7XHJcblx0ICAgICY6Zm9jdXMge1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cdFx0XHQvL291dGxpbmU6IHNvbGlkIDFweCAkY29sb3ItZ3JlZW47XHJcblx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0ICAgIH1cclxuXHR9XHJcblx0Ly8gcmVtb3ZlIGJvdHRvbSBtYXJnaW4gZm9yIGxhc3QgaXRlbSBpbiB0aGUgZm9ybVxyXG5cdD4qOmxhc3QtY2hpbGQge1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdH1cclxuXHQuc2VhcmNoLWlucHV0IHtcclxuXHRcdGlucHV0W3R5cGU9J3RleHQnXSB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRtYXJnaW46IDAgMTVweCAwIDA7XHJcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSA2NnB4KTtcclxuXHRcdH1cclxuXHRcdC5idG4ge1xyXG5cdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLW9yYW5nZSB1cmwoJy4uL2ltZy9pY29ucy9pY29uLXNlYXJjaC5wbmcnKW5vLXJlcGVhdCAxNXB4IDlweDtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdHdpZHRoOiA1MXB4O1xyXG5cdFx0XHRoZWlnaHQ6IDQwcHg7XHJcblx0XHRcdHRleHQtaW5kZW50OiA5OTk5ZW07XHJcblx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxuXHQuc2VhcmNoLWZpbHRlcnMge1xyXG5cdFx0bGVnZW5kIHtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRsZWZ0OiBhdXRvO1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgyNCk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0XHRcdG1hcmdpbjogMCAwIDEwcHggMDtcclxuXHRcdH1cclxuXHRcdHNlbGVjdCB7XHJcblx0XHRcdG1hcmdpbjogMCAwIDEwcHggMDtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdFx0d2lkdGg6IDIwMHB4O1xyXG5cdFx0XHRcdG1hcmdpbjogMCAxNXB4IDAgMDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmJ0biB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uaG9yLWZpbHRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHRsZWdlbmQge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0bGVmdDogYXV0bztcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0Zm9udC1zaXplOiBlbSgyNCk7XHJcblx0XHRmb250LXdlaWdodDogNzAwO1xyXG5cdFx0bWFyZ2luOiAwIDAgMTBweCAwO1x0XHRcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0fVxyXG5cclxuXHR9XHJcblx0LmZpZWxkcyB7XHJcblx0XHRvdmVyZmxvdzogaGlkZGVuOyAvKiBDcmVhdGVzIGEgbmV3IGJsb2NrIGZvcm1hdCBjb250ZXh0LCB3aGljaCB3aWxsIG1ha2UgdGhpcyB0YWcgZmlsbCB0aGUgcmVtYWluaW5nIHdpZHRoICovXHJcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHR9XHJcblx0LmZpZWxkLWdyb3VwLCAgLmZpZWxkLWdyb3VwLXdpZGUge1xyXG5cdFx0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRwYWRkaW5nOiAwIDE1cHggMCAwO1xyXG5cdFx0XHR3aWR0aDogMjgycHg7XHJcblx0XHR9XHJcblx0XHRzZWxlY3Qge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHQvL3dpZHRoOiAyMThweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0bGFiZWwge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdGxlZnQ6IC05OTk5ZW07XHJcblx0XHR9XHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHR9XHJcblx0XHQmLXdpZGUge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdG1hcmdpbjogMDtcclxuXHRcdFx0XHRwYWRkaW5nOiAwIDE1cHggMCAwO1xyXG5cdFx0XHRcdHdpZHRoOiA4NDZweDtcclxuXHRcdFx0fVx0XHRcdFxyXG5cdFx0fVxyXG5cdH1cclxuXHRpbnB1dFt0eXBlPSdzdWJtaXQnXSB7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdCYuaGlkZS1sZWdlbmQge1xyXG5cdFx0bGVnZW5kIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRsZWZ0OiAtOTk5OWVtO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4uc2ltcGxlLXNlbGVjdCB7XHJcblx0bGFiZWwge1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxNik7XHJcblx0XHRtYXJnaW46IDAgMCAxMHB4IDA7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDE5KTtcclxuXHRcdH1cclxuXHR9XHJcblx0c2VsZWN0IHtcclxuXHRcdG1hcmdpbjogMCAwIDEwcHggMDtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0bWFyZ2luOiAwIDEwcHggMCAwO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ubm8tY3NzY29sdW1ucyBzZWxlY3Qge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0cGFkZGluZy1yaWdodDogMTBweDtcclxufSIsIi5jb250ZW50LXBhZ2UgLnd5c2l3eWcge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gICAgZGl2Lnd5c2l3eWctaW5uZXIgPiAqOmZpcnN0LWNoaWxkLFxyXG4gICAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAvLyBtYXJnaW4gb24gZmlyc3QgZWxlbWVudFxyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwOyAvLzMwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgLy8zMHB4OyBcclxuICAgICAgICBkaXYud3lzaXd5Zy1pbm5lciA+ICo6Zmlyc3QtY2hpbGQsXHJcbiAgICAgICAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgLy8gbWFyZ2luIG9uIGZpcnN0IGVsZW1lbnRcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xyXG4gICAgICAgIGRpdi53eXNpd3lnLWlubmVyID4gaDI6Zmlyc3QtY2hpbGQsIFxyXG4gICAgICAgID4gaDI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAvLyBtYXJnaW4gb24gZmlyc3QgZWxlbWVudFxyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eGxhcmdlKSB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgICBzdHJvbmcsIGIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB9XHJcbiAgICBociB7IFxyXG4gICAgICAgIG1hcmdpbjogMjBweCAwO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgIH1cclxuICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoMyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaDQsXHJcbiAgICBoNSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICB9XHJcbiAgICBzdXAsXHJcbiAgICBzdWIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMTUsIDE5KTtcclxuICAgICAgICBwYWRkaW5nOiAwIDNweDtcclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IDA7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweCAyNXB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIuKAoiBcIjtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBvbCB7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAyMHB4IDIwcHg7XHJcbiAgICAgICAgbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMTBweCA1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZmlndXJlIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggMCAxNXB4IDA7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IDAgMTVweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpZ2NhcHRpb24ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5MztcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweCAwIDAgMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAmLmxpc3Qtc3RhY2tlZCB7XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgICAgICAgICAgICAtbW96LWNvbHVtbi1nYXA6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcclxuICAgICAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNDBweDtcclxuICAgICAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcclxuICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgIGJyZWFrLWluc2lkZTogYXZvaWQtY29sdW1uO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG9sIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xyXG4gICAgICAgICAgICAgICAgLW1vei1jb2x1bW4tZ2FwOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LWNvbHVtbi1nYXA6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XHJcbiAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiA1MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZC1jb2x1bW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcblx0XHRcdHVsLCBvbCB7XHJcblx0XHRcdCAgICAtbW96LWNvbHVtbi1nYXA6IDYwcHg7XHJcblx0ICAgICAgICAgICAgLXdlYmtpdC1jb2x1bW4tZ2FwOiA2MHB4O1xyXG5cdCAgICAgICAgICAgIGNvbHVtbi1nYXA6IDYwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblxyXG4gICAgfVxyXG4gICAgLy8gU21hbGwgdGV4dCBcclxuICAgIHNtYWxsIHtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xyXG4gICAgfVxyXG4gICAgLy8gTGVhZCBwYXJhZ3JhcGggaW4gYXJ0aWNsZVxyXG4gICAgLmxlYWQge1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxOCk7IFxyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xyXG5cdCAgICAubGVhZCB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjApO1xyXG5cdCAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgLmxlYWQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDIyKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTgpO1xyXG5cdFx0aDI6Zmlyc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbi10b3A6NnB4O1xyXG5cdFx0fVxyXG5cdFx0aDMge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA2MHB4O1xyXG5cdFx0fVxyXG5cdFx0dWwsIG9sIHtcclxuXHRcdCAgICAtbW96LWNvbHVtbi1nYXA6IDYwcHg7XHJcbiAgICAgICAgICAgIC13ZWJraXQtY29sdW1uLWdhcDogNjBweDtcclxuICAgICAgICAgICAgY29sdW1uLWdhcDogNjBweDtcclxuXHRcdH1cclxuXHRcdGJsb2NrcXVvdGUge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiA2MHB4O1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cdFx0XHRtYXgtd2lkdGg6NzUlO1xyXG5cdFx0fVxyXG5cclxuXHJcbiAgICB9XHJcblxyXG59XHJcbiIsIi8qIFBsdWdpbiBzdHlsZXMgKi9cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQuaGlkZGVue1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZWQgIWltcG9ydGFudDsgLy8gPz8/XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLnB1bGwtbGVmdHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLnB1bGwtcmlnaHQge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgaW1nIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgd2lkdGg6IGF1dG9cXDk7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBib3JkZXI6IDA7ICBcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5hdHRhY2htZW50IHtcclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xyXG59XHJcblxyXG4vKiBMaW5rIHN0eWxlcyAqL1xyXG4uc29jaWFsLWZlZWQtZWxlbWVudCBhIHtcclxuICAgIGNvbG9yOiAjMDA4OGNjO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IGE6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogdGhpbiBkb3R0ZWQgIzMzMztcclxuICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvcjtcclxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IGE6aG92ZXIsXHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IGE6YWN0aXZlIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBjb2xvcjogIzAwNTU4MDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG59XHJcblxyXG4vKiBUZXh0IHN0eWxlcyAqL1xyXG4uc29jaWFsLWZlZWQtZWxlbWVudCBzbWFsbCB7XHJcbiAgICBmb250LXNpemU6IDg1JTtcclxufVxyXG4uc29jaWFsLWZlZWQtZWxlbWVudCBzdHJvbmcge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgZW0ge1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IHAge1xyXG4gICAgbWFyZ2luOiAwIDAgMTBweDtcclxufVxyXG4uc29jaWFsLWZlZWQtZWxlbWVudCAubWVkaWEtYm9keSA+IHB7XHJcbiAgICBtYXJnaW4tYm90dG9tOjRweDtcclxuICAgIG1pbi1oZWlnaHQ6MjBweDtcclxufVxyXG4uc29jaWFsLWZlZWQtZWxlbWVudCBwLnNvY2lhbC1mZWVkLXRleHQge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgLXdlYmtpdC1saW5lLWNsYW1wOiA1O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxufVxyXG5cclxuLyogTWVzc2FnZSBzdHlsZXMgKi9cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQsXHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1ib2R5IHtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB6b29tOiAxO1xyXG4gICAgKm92ZXJmbG93OiB2aXNpYmxlO1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1ib2R5IC5zb2NpYWwtbmV0d29yay1pY29ue1xyXG4gICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAgIG1hcmdpbi1yaWdodDo1cHg7XHJcbiAgICB3aWR0aDoxNnB4O1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1ib2R5IGRpdntcclxuICAgIGNvbG9yOiM2NjY7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxufVxyXG4uc29jaWFsLWZlZWQtZWxlbWVudDpmaXJzdC1jaGlsZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1vYmplY3Qge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDo0OHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLm1lZGlhLWhlYWRpbmcge1xyXG4gICAgbWFyZ2luOiAwIDAgNXB4O1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5tZWRpYS1saXN0IHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLm11dGVkIHtcclxuICAgIGNvbG9yOiAjOTk5O1xyXG59XHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IGEubXV0ZWQ6aG92ZXIsXHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IGEubXV0ZWQ6Zm9jdXMge1xyXG4gICAgY29sb3I6ICM4MDgwODA7XHJcbn1cclxuXHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50e1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggMCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjI1cztcclxuICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgbWFyZ2luOi0xcHg7XHJcbiAgICBtYXJnaW4tdG9wOjI1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgY29sb3I6ICMzMzM7XHJcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQ6aG92ZXJ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCAwIHJnYmEoMTAsIDEwLCAxMCwgMC40KTtcclxufVxyXG5cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLmNvbnRlbnR7XHJcbiAgICBwYWRkaW5nOjE1cHg7XHJcbn1cclxuLnNvY2lhbC1mZWVkLWVsZW1lbnQgLnNvY2lhbC1uZXR3b3JrLWljb257XHJcbiAgICBvcGFjaXR5OjAuNztcclxufVxyXG5cclxuXHJcbi5zb2NpYWwtZmVlZC1lbGVtZW50IC5hdXRob3ItdGl0bGV7XHJcbiAgICBjb2xvcjogIzQ0NDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7ICBcclxufVxyXG4udHdpdHRlci1mZWVkIHtcclxuICAgIG1hcmdpbi1ib3R0b206NDBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICB9ICAgIFxyXG4gICAgaDIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICBmb250LXNpemU6IGVtKDE2KTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6J0AnO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgd2YtaWNvbigkaWNvbi10d2l0dGVyLCAxN3B4LCAkY29sb3ItZ3JleS1ib2R5KTtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6MnB4O1xyXG4gICAgICAgICAgICBsZWZ0OjA7ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4udHdpdHRlci1mZWVkLWVsZW1lbnQge1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyLXRvcDogc29saWQgMnB4ICRjb2xvci1ncmVlbjtcclxuICAgIC5tZWRpYS1ib2R5IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIH1cclxuICAgIC5kYXRlLXRpbWUge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICBmb250LXNpemU6IGVtKDEyKTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW46IDAgMCAyMHB4IDA7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICY6aG92ZXIsIFxyXG4gICAgICAgICY6Zm9jdXMsIFxyXG4gICAgICAgICY6YWN0aXZlLCBcclxuICAgICAgICAmOnZpc2l0ZWQge1xyXG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyLCBcclxuICAgICY6Zm9jdXMsIFxyXG4gICAgJjphY3RpdmUsIFxyXG4gICAgJjp2aXNpdGVkIHsgXHJcbiAgICAgICAgY29sb3I6ICMwMDA7IFxyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIH0gXHJcbn1cclxuXHJcbi53eXNpd3lnIHtcclxuICAgIC50d2l0dGVyLWZlZWQgPiBhIHsgXHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cywgXHJcbiAgICAgICAgJjphY3RpdmUsIFxyXG4gICAgICAgICY6dmlzaXRlZCB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ZW0oMTAyNCkpIGFuZCAobWF4LXdpZHRoOmVtKDEyNzkpKSB7XHJcbiAgICAudHdpdHRlci1mZWVkcyB7XHJcbiAgICAgICAgLnd5c2l3eWcge1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4gICAgICAgICBcclxuXHJcbiIsIi5yZWxhdGVkLWNvbnRlbnQge1xyXG5cdFxyXG5cdEBtZWRpYSAobWF4LXdpZHRoOmVtKDEyNzkpICkge1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlIWltcG9ydGFudDtcdFxyXG5cdH0gXHJcblxyXG5cdG1heC13aWR0aDogMTAwJSFpbXBvcnRhbnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ly93aWR0aDogY2FsYygxMDAlIC0gNDBweCk7IFxyXG5cdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgXHJcblx0XHRtaW4td2lkdGg6IDEwMCU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDAgMTAwcHggNTBweDtcclxuXHR9XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7IFxyXG5cdFx0d2lkdGg6IGVtKDI0MHB4KTtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHQvL3Bvc2l0aW9uOiBpbmhlcml0IWltcG9ydGFudDsgXHJcblx0XHR3aWR0aDogYXV0bztcclxuXHRcdG1pbi13aWR0aDogMjQwcHghaW1wb3J0YW50O1xyXG5cdFx0cmlnaHQ6IDAhaW1wb3J0YW50O1xyXG5cdFx0bGVmdDogYXV0byFpbXBvcnRhbnQ7IC8vIGhhZCB0byBvdmVycmlkZSBmb3VuZGF0aW9uIHN0aWNreSBiZWhhdmlvdXJcclxuXHR9XHJcblxyXG5cclxuXHRoMiB7XHJcblx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxMik7XHJcblx0XHRsaW5lLWhlaWdodDogZW0oMTUsIDEyKTtcclxuXHRcdGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0Y29sb3I6ICRjb2xvci1ncmV5MzsvLy8kY29sb3ItY29udGVudC1uYXYtaG92ZXI7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDA7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRib3JkZXItdG9wOiBzb2xpZCAxcHggJGNvbG9yLWdyZXk2Oy8vJGNvbG9yLWdyZXktcmVsYXRlZC1zdHJva2U7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG5cdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdHBhZGRpbmc6IDAgMCA0MHB4IDA7XHJcblx0XHRcdG1hcmdpbi10b3A6MTJweDtcclxuXHRcdH1cclxuXHR9XHJcblx0dWwge1xyXG5cdFx0QGV4dGVuZCAldWw7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nOiAwIDAgMzBweCAwO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0b3ZlcmZsb3c6aGlkZGVuO1xyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzdHJpcGVzLWdyZWVuKCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IGF1dG87XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogLTEwJTtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMjAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6Ljc1O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06c2tld1goMTVkZWcpO1xyXG5cclxuICAgICAgICAgICAgLy9wYWRkaW5nLWJvdHRvbToxMHB4O1xyXG4gICAgICAgIH1cclxuXHJcblx0XHQvL0BpbmNsdWRlIHN0cmlwZXMtZ3JlZW4oKTtcclxuXHRcdC8vYmFja2dyb3VuZC1wb3NpdGlvbjpsZWZ0IGJvdHRvbTtcclxuXHRcdFxyXG5cdFx0Ly9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9yZWxhdGVkLWJnLnBuZycpcmVwZWF0LXggbGVmdCBib3R0b207XHJcblxyXG5cclxuXHRcdGxpIHtcclxuXHRcdFx0Zm9udC1mYW1pbHk6XCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDE0LjUpO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogZW0oMTYsIDE0KTtcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IGVtKC4zKTtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0Ym9yZGVyLXRvcDogc29saWQgMXB4ICRjb2xvci1ncmV5NjsgLy8kY29sb3ItZ3JlZW47XHJcblx0XHRcdHBhZGRpbmc6IDVweCAwIDE1cHggMDsgXHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdGZsb2F0OiBub25lO1x0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcdFxyXG5cdFx0XHRcdHdpZHRoOiAzMy4zMyU7XHRcdFx0XHJcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XHJcblx0XHRcdFx0d2lkdGg6IGF1dG87XHJcblx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5MzsgLy8kY29sb3ItZ3JlZW47XHJcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMTUwbXMgZWFzZS1pbi1vdXQpO1xyXG5cdFx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDZweDtcclxuXHRcdFx0XHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBCb29rXCI7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDEyLCAxNSk7XHJcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogZW0oMTYsIDEyKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Jjpob3ZlciwgJjpmb2N1cyB7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0JjpudGgtY2hpbGQoM24rNCkge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0XHRjbGVhcjogbGVmdDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuXHRcdFx0XHRhIHNwYW4ge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCJmb290ZXIge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXktYm9keTtcclxuICAgIHBhZGRpbmc6IDQwcHggMDtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNTYwcHg7XHJcbiAgICB9XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDk0NXB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzRweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNzBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC53eXNpd3lnID4gZGl2OmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBuYXYge1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldWw7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZnRyLWdsb2JhbCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwIDMwcHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogODBweCAwIDUwcHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKDEpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC00MnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW4tZm9vdGVyLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC4xcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTQuNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICsgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNWY2MTYxO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIHVsID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7IC8vIGVtKDQwKTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWZ0ci1zdHJva2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCAkY29sb3ItZ3JleS1mdHItc3Ryb2tlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQ6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgdWwgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNTJweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5mdHItdXRpbCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTIuNSk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIGVtKDEwKSAwO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIGVtKDMwKSAwIDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmOyAvLyRjb2xvci1ncmVlbi1iZztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xlYXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZ0ci11dGlsLXdyYXBwZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgIC5mdHItc29jaWFsIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAldWw7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogODAlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICYuZnRyLXR3dHIsXHJcbiAgICAgICAgICAgICAgICAgICAgJi5mdHItdmltLFxyXG4gICAgICAgICAgICAgICAgICAgICYuZnRyLWxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL2JhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCcnLCAxOXB4LCAkY29sb3ItZ3JleTMpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYuZnRyLXR3dHI6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi10d2l0dGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmZ0ci12aW06YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi12aW1lbztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5mdHItbGk6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAkaWNvbi1saW5rZWRpbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZnRyLW5hdi13cmFwcGVyIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDk0NXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZnRyLXN0b2NrIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZXk1O1xyXG4gICAgICAgIEBpbmNsdWRlIHJvdW5kZWRfY29ybmVycyg4MCUpO1xyXG4gICAgICAgIHdpZHRoOiAxNDVweDtcclxuICAgICAgICBoZWlnaHQ6IDE0NXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICA+ICoge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSByb3VuZGVkX2Nvcm5lcnMoMCk7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mdHItc3RvY2stcHJpY2Uge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgzMCk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBlbSg0MCwgMzApO1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZnRyLXN0b2NrLWluZGV4IHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb29rXCI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTMpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICBsZWZ0OiA2MHB4O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ncmV5NTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcm91bmRlZF9jb3JuZXJzKDgwJSk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNDVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNDVweDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgPiAqIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gU3RpY2t5IEZvb3RlclxyXG4vKlxyXG4ucHVzaCB7XHJcbiAgICBkaXNwbGF5OiBub25lOyAgICBcclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIGh0bWwsIGJvZHkge1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICAgICN3cmFwcGVyIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yMTVweDtcclxuICAgIH1cclxuICAgIC5wdXNoIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBoZWlnaHQ6IDIxNXB4O1xyXG4gICAgfVxyXG59XHJcbiovXHJcbiIsIi8vIHVuaXF1ZSBzdHlsZXMgZm9yIGhvbWUgcGFnZVxyXG4vLyBBbHNvIGFkanVzdHMgaG9tZSBwYWdlIGlmIHNjcmVlbiBpcyBiZWxvdyAxMDI0cHhcclxuI2hvbWUgI21haW4ge1xyXG5cclxuICAgIHNlY3Rpb24uc3BhY2VkIHtcclxuICAgIFx0dHJhbnNpdGlvbjptYXJnaW4gLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgXHRtYXgtd2lkdGg6bm9uZTtcclxuICAgIH1cclxuICAgIHNlY3Rpb24uZ3JleS5wYW5lbHMge1xyXG4gICAgXHR0cmFuc2l0aW9uOnBhZGRpbmcgLjRzIGVhc2UtaW4tb3V0O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XHJcbiAgICAgICAgc2VjdGlvbi5zcGFjZWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgIHNlY3Rpb24uZ3JleS5wYW5lbHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgICBtYXgtd2lkdGg6MjU2MHB4O1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OmF1dG87XHJcbiAgICB9XHJcbn1cclxuXHJcbiNob21lIC50d2l0dGVyLWZlZWRzIHtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xyXG4gICAgICAgIHdpZHRoOjgwJTtcclxuICAgICAgICA+IC5yb3cge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDo4MCU7XHJcblxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4bGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDo3NSU7XHJcbiAgICAgICAgPiAucm93IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgICB3aWR0aDo1MCU7XHJcbiAgICAgICAgPiAucm93IHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogODBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogODBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOmVtKDEyODApKSBhbmQgKG1heC1oZWlnaHQ6ZW0oMTAyNCkpIHtcclxuICAgICNob21lOm5vdCguc3RpY2t5LWhlYWRlcikge1xyXG4gICAgICAgIC5ob21lIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICA+IC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE0cHgpO1xyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTNweCkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmdsb2JhbCxcclxuICAgICAgICAgICAgICAgIC51dGlsIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYTphZnRlciwgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgI21haW4ge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMDFweCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgI2hvbWUgI21haW4ge1xyXG4gICAgICAgIHNlY3Rpb24uc3BhY2VkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgc2VjdGlvbi5ncmV5LnBhbmVscyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ZW0oMTQ0MCkpIGFuZCAobWF4LWhlaWdodDplbSgxMDI0KSkge1xyXG4gICAgI2hvbWU6bm90KC5zdGlja3ktaGVhZGVyKSB7XHJcbiAgICAgICAgLmhvbWUge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMCFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIC5jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgLmdsb2JhbC1zdWIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLFxyXG4gICAgICAgICAgICAgICAgLnV0aWwge1xyXG4gICAgICAgICAgICAgICAgICAgID4gbGkgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhOmFmdGVyLCBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAjbWFpbiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEzM3B4IWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAjaG9tZSAjbWFpbiB7XHJcbiAgICAgICAgc2VjdGlvbi5zcGFjZWQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBzZWN0aW9uLmdyZXkucGFuZWxzIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSgxOTIwKSkgYW5kIChtYXgtaGVpZ2h0OmVtKDEyMDApKSB7XHJcbiAgICAjaG9tZTpub3QoLnN0aWNreS1oZWFkZXIpIHtcclxuICAgICAgICAuaG9tZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTRweCk7XHJcbiAgICAgICAgICAgICAgICAuZ2xvYmFsLXN1YiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5nbG9iYWwsXHJcbiAgICAgICAgICAgICAgICAudXRpbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBsaSB7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGE6YWZ0ZXIsIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW46YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICNtYWluIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTMzcHghaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICNob21lICNtYWluIHtcclxuICAgICAgICBzZWN0aW9uLnNwYWNlZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNlY3Rpb24uZ3JleS5wYW5lbHMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59IiwiXHJcbi50YWJsZSB7XHJcbiAgICBvdmVyZmxvdy14OiB2aXNpYmxlO1xyXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsOyBcclxuICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBvdmVyZmxvdy14OiBpbmhlcml0O1xyXG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG9cclxuICAgIH0gICBcclxufVxyXG5cclxudGFibGUge1xyXG4gICAgdGFibGUtbGF5b3V0OiBhdXRvO1xyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcclxuICAgIH1cclxuXHJcbiAgICB0Ym9keSwgdGhlYWQgeyBcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuXHJcbiAgICAgICAgPiB0cjpudGgtY2hpbGQob2RkKTpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoZWFkIHsgXHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCAkY29sb3ItZ3JleS13aGl0ZTtcclxuXHJcbiAgICAgICAgIHRoIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjVweCAxMHB4IDEwcHggMTBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7IFxyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDEyKTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgXHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgIH0gICBcclxuICAgIH1cclxuXHJcbiAgICB0Ym9keSB7XHJcbiAgICAgICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgdGQge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxN3B4IDEwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHRcclxuXHQmOmFmdGVye1xyXG5cdFx0Y29udGVudDpcIlwiO1xyXG5cdFx0aGVpZ2h0OiAxMnB4O1xyXG5cdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0fVxyXG59IiwiIC5ob21lLW5ld3MtbGlzdCB7XHJcbiAgICBwYWRkaW5nOiAwIDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgaDIge1xyXG4gICAgICAgIEBpbmNsdWRlIHdpZGdldC10aXRsZSgpOyAvLyAgc2VlIG1peGluZ1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsbWVkaXVtKSB7XHJcbiAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcclxuICAgIH1cclxuICAgIHVsIHtcclxuICAgICAgICBAZXh0ZW5kICV1bDtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogZW0oMjAsIDE2KTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBzb2xpZCAycHggJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBzb2xpZCAycHggJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4IDAgMTVweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAyMDBtcyBlYXNlLWluLW91dCk7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICBmbGV4OiAzOCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzOCU7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZmxleDogNTguMzMzMzMlO1xyXG4gICAgICAgIG1heC13aWR0aDogNTguMzMzMzMlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogZW0oMzAsIDIyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgZmxleDogNjAlO1xyXG4gICAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICB1bCA+IGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChlbSgxNjAwKSkge1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgICAgIGZsZXg6IDY1JTtcclxuICAgICAgICBtYXgtd2lkdGg6IDYwJTtcclxuICAgICAgICB1bCA+IGxpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubmV3cy1saXN0LXBhZ2UgeyBcclxuICAgIGg1IHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHVsIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogZW0oMzBweCk7IFxyXG4gICAgfSBcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IGVtKDEwcHgpO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBlbSgyNXB4KTsgXHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgfVxyXG59IiwiLnNoYXJlLXByb21vIHtcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgbWF4LXdpZHRoOiAzMjBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMzYwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMzAlO1xyXG4gICAgICAgIGZsZXg6IDQwJTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDM1JTtcclxuICAgICAgICBmbGV4OiAzNSU7XHJcbiAgICB9XHJcblxyXG4gICAgLnd5c2l3eWcge1xyXG4gICAgICAgIC5pbnZlc3Rvci1idG4sIFxyXG4gICAgICAgIC5zaGFyZS1wcmljZSB7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgJjpob3ZlciwgXHJcbiAgICAgICAgICAgICY6Zm9jdXMsIFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSwgXHJcbiAgICAgICAgICAgICY6dmlzaXRlZCB7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmludmVzdG9yLWJ0biB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgQGluY2x1ZGUgcm91bmRlZF9jb3JuZXJzKDgwJSk7XHJcbiAgICAgICAgaGVpZ2h0OiAxMzBweDtcclxuICAgICAgICB3aWR0aDogMTMwcHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbiAoYmFja2dyb3VuZC1jb2xvciAuM3MpO1xyXG4gICAgICAgIGRpdiwgZGl2IHNwYW4ge1xyXG4gICAgICAgIFx0QGluY2x1ZGUgdHJhbnNpdGlvbiAoY29sb3IgLjNzKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRkaXYge1xyXG5cdFx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRcdHNwYW4ge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmVlbjtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuICAgICAgICB9XHJcblx0XHRcclxuICAgICAgICBkaXYge1xyXG5cclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhIEl0YWxpY1wiO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDJweCAwO1xyXG4gICAgICAgICAgICAgICAgLy9mb250LXN0eWxlOiBJdGFsaWM7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC01cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlKTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxNDBweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE1NXB4O1xyXG4gICAgICAgICAgICB3aWR0aDogMTU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxOTVweDtcclxuICAgICAgICAgICAgd2lkdGg6IDE5NXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICAvKlxyXG5cdC5sYXRlc3QtbmV3cyB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0fVxyXG5cdFx0aDIge1xyXG5cdFx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDEzKTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IC45O1xyXG5cdFx0XHRsZXR0ZXItc3BhY2luZzogZW0oMik7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleTM7XHJcblx0XHR9XHJcblx0fVxyXG5cdCovXHJcbiAgICAuc2hhcmUtcHJpY2Uge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDAgMjBweDtcclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHdpZGdldC10aXRsZSgpOyAvLyBzZWUgbWl4aW5nc1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdG9jay11cGRhdGVkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMjYwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA2LjI1JTtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgIC5zdG9jay11cGRhdGVkIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICBcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMy4zMzMzJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBvbmx5IGhvdmUgaWYgbGlua1xyXG4gICAgYS5zaGFyZS1wcmljZSB7XHJcbiAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgLnN0b2NrLXByaWNlIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN0b2NrLWluZGV4ICoge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjpub25lO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6JGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xyXG4gICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBoMixcclxuICAgICAgICAgICAgICAgIHNwYW4sXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgIC8vIGNvbG9yOiByZWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOmVtKDEwMjQpKSBhbmQgKG1heC13aWR0aDplbSgxMjc5KSkge1xyXG4gICAgICBhcnRpY2xlIHtcclxuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnN0b2NrLXByaWNlIHtcclxuXHRcclxuXHRzcGFuIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHJcblx0XHRmb250LXNpemU6IGVtKDMwKTtcclxuXHRcdGxpbmUtaGVpZ2h0OiBub3JtYWw7XHJcblx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG5cdFx0cGFkZGluZzogMCAxMHB4IDVweCAxMHB4O1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogc29saWQgN3B4ICRjb2xvci1ncmVlbjtcdFxyXG5cdFx0Ly9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRtYXJnaW4tYm90dG9tOiAtN3B4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSg0NSk7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHR9XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMzgpO1xyXG5cdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSg0Mik7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSg1NCk7XHJcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdH1cclxuXHJcblxyXG5cdH1cclxufVxyXG4uc3RvY2std3JhcHBlciB7XHJcblx0Ym9yZGVyLXRvcDogc29saWQgN3B4ICRjb2xvci1ncmVlbjtcdFxyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcbi5zdG9jay1pbmRleCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGxlZnQ6NTAlO1xyXG5cdHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSk7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1x0XHJcblx0Ly9iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLWFycm93LXVwLnBuZycpbm8tcmVwZWF0IDE1cHggMTBweDtcclxuXHRwYWRkaW5nOiAxMHB4IDAgMTBweCAwOyBcclxuXHQ+IGkge1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0d2lkdGg6MjBweDtcclxuXHRcdGhlaWdodDoyMHB4O1xyXG5cdFx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdH1cclxuXHQvKlxyXG5cdCY6YmVmb3JlIHtcclxuXHRcdEBpbmNsdWRlIHdmLWljb24oJGljb24tYXJyb3ctdXAsIDEzcHgsICRjb2xvci1ncmV5LWJvZHkpOyAvLyRpY29uLWFycm93LWRvd25cclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0bGVmdDowO1xyXG5cdFx0dG9wOjUwJTtcclxuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSAodHJhbnNsYXRlWSgtNTAlKSk7XHJcblx0XHR3aWR0aDoyMHB4O1xyXG5cdFx0aGVpZ2h0OjEycHg7XHRcdFxyXG5cdH1cclxuXHQqL1xyXG5cdD4gc3BhbiB7XHJcblx0XHRmb250LXNpemU6IGVtKDEyKTtcclxuXHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBCb29rXCI7XHJcblx0XHRwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuXHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XHJcblx0XHRcdHBhZGRpbmc6IDAgMTBweCAwIDA7XHJcblx0XHRcdGJvcmRlci1yaWdodDogc29saWQgMXB4ICRjb2xvci1ncmVlbjtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTYpO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTkpO1xyXG5cdFx0fVxyXG5cclxuXHR9XHJcbn1cclxuLnN0b2NrLXVwZGF0ZWQge1xyXG5cdGZvbnQtc2l6ZTogZW0oMTApO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0Zm9udC1mYW1pbHk6XCJTdG9semwgVzAwIEJvb2tcIjtcclxuXHRjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG5cdHN0cm9uZyB7XHJcblx0XHRkaXNwbGF5Om5vbmU7XHJcblx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcblx0XHRjb2xvcjokY29sb3ItZ3JleS1ib2R5O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xyXG5cdFx0dGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0fVxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4bGFyZ2UpIHtcclxuXHRcdC8vdGV4dC1hbGlnbjpjZW50ZXI7XHJcblx0XHRmb250LXNpemU6IGVtKDExKTtcclxuXHRcdHN0cm9uZyB7XHJcblx0XHRcdGRpc3BsYXk6aW5saW5lLWJsb2NrO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50ICh4eHhsYXJnZSkge1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxMik7XHJcblx0fVxyXG59IiwiIC5wYW5lbCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4OyBcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyIDIwMG1zIGVhc2Utb3V0KTsgXHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiBlbSgzMDBweCk7XHJcbiAgICB9XHJcbiAgICBhIHtcclxuICAgICAgICBtYXJnaW46IDAgLTIwcHg7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuaW1hZ2UsXHJcbiAgICAgICAgLmltYWdlOmJlZm9yZSxcclxuICAgICAgICAuaW1hZ2U6YWZ0ZXIsXHJcbiAgICAgICAgLmltYWdlID4gaW1nIHtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmltYWdlLCAudmlkZW8tcGxheSB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwO1xyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogOTk5O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMjBweCAwO1xyXG4gICAgICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMDIpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDsgLy8wIDAgMTBweCAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDA7XHJcbiAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogZW0oMjYsIDIwKTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGgyLCBwIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwOyAvLyRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmltYWdlLCAudmlkZW8tcGxheSB7XHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjMzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMzMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLy8gb3BhY2l0eTouMjU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLypcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICAgICAgaDIsXHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuLWFuYztcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKi9cclxuICAgICAgICB9XHJcbiAgICAgICAgJi52aWRlby1wbGF5IHtcclxuICAgICAgICAgICAgLy8gY2VudGVyZWQgZ3JlZW4gdmlkZW8gaWNvbiAoY3VzdG9tIG1peGluPylcclxuICAgICAgICAgICAgLnZpZGVvLWljb24ge1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NnB4O1xyXG4gICAgICAgICAgICAgICAgLy9tYXJnaW4tdG9wOiAtKDQ1cHggLyA0KTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLWdyZWVuLCAuODUpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjNzO1xyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgd2YtaWNvbigkaWNvbi1yaWdodC1kaXIsIDMwcHgsICNmZmYpO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiA1MyU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjNzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLnZpZGVvLWljb24ge1xyXG4gICAgICAgICAgICAgICAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsvLyRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTk5OTtcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAvL2NvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgID4gYTpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICA+IGE6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5jb3B5IHtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgLy8gPiBoMiB7XHJcbiAgICAgICAgLy8gICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICAgICAgLy8gfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMjBweCAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGEsIGEgcCwgYTpob3ZlciBwLCBhOmZvY3VzIHAge1xyXG4gICAgICAgIHRyYW5zaXRpb246bm9uZTsgICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG4ubGVhZGVyc2hpcC1wYW5lbCB7XHJcbiAgICBcclxuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIC5pbWFnZSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiA0MCU7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICA+IGE6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgPiBhOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29weSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHdpZHRoOiA2MCU7XHJcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTY7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gc3BsaXQgcGFuZWwgb3ZlcnJpZGVzXHJcbi5zcGxpdC1jb3B5LXBhbmVscyB7XHJcbiAgICAucGFuZWwge1xyXG4gICAgICAgIC5jb3B5IHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2EgQm9sZFwiO1xyXG4gICAgICAgICAgICAgICAgLy9mb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDQ5JTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDIwKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2FcIjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDguNSU7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNzRweDtcclxuICAgICAgICAgICAgICAgICAgICAvL292ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLy8gQGluY2x1ZGUgbXVsdGlsaW5lLWVsbGlwc2lzICg3NHB4LCAyNHB4LCA0OSUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnJlbGF0ZWQtcGFuZWxzIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMzBweDtcclxuICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICBwYWRkaW5nOiAwIDEwMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICBtYXgtd2lkdGg6IG5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICAgIC5yZWxhdGVkLXBhbmVsIHtcclxuICAgICAgICBib3JkZXItdG9wOiBzb2xpZCA3cHggJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE3KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTQsIDE3KTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYSBJdGFsaWNcIjtcclxuICAgICAgICAgICAgLy9mb250LXN0eWxlOiBJdGFsaWM7XHJcbiAgICAgICAgICAgIC8vZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xyXG4gICAgLmZlYXR1cmVkIHtcclxuICAgICAgICA+IC5yb3cge1xyXG4gICAgICAgICAgICBmbGV4LWZsb3c6IHJvdztcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjc1cmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC0wLjc1cmVtO1xyXG4gICAgICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5cclxuLy8gb25seSBkYXJrZW4gb24gaG92ZXIgaWYgdGhpcyBjbGFzcyAoLmdyZXkpIGlzIGluY2x1ZGVkXHJcbi5ncmV5IC5wYW5lbCBhIHtcclxuICAgIC5pbWFnZSxcclxuICAgIC52aWRlby1wbGF5IHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbi8vIG9yIGV4Y2x1ZGUgdGhlIGdyZXkgaG92ZXIgb24gaW5kaXZpZHVhbCBwYW5lbHMgXHJcbi5wYW5lbC5leGMtZ3JleSBhIHtcclxuICAgIC5pbWFnZSxcclxuICAgIC52aWRlby1wbGF5IHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxufSIsIi8vIGh0dHA6Ly9waGlsaXB3YWx0b24uY29tL2FydGljbGVzL25vcm1hbGl6aW5nLWNyb3NzLWJyb3dzZXItZmxleGJveC1idWdzL1xyXG4vLyBFeHRlbmFibGUgc3R5bGVzXHJcbiVtYWluLXRpdGxlLXN0eWxlIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICBsaW5lLWhlaWdodDogLjk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDsgLy9lbSguNik7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7IFxyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLy8gbGF5b3V0XHJcbi5pbnZlc3Rvci1jZW50cmUge1xyXG4gICAgLndyYXBwZXIge1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkIHtcclxuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgtZmxvdywgcm93IHdyYXApO1xyXG4gICAgICAgICAgICA+IC5zaGFyZS1wcm9tbyxcclxuICAgICAgICAgICAgPiAuZGVidC1pbnZlc3RvcnMsICAgICAgICBcclxuICAgICAgICAgICAgPiAubmV3cy1saXN0IHsgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAxIDEwMCUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLnRpbGUtbGlua3Mge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAxIDUwJSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZ3JpZCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeChmbGV4LWZsb3csIHJvdyk7XHJcbiAgICAgICAgICAgID4gLnNoYXJlLXByb21vIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeChmbGV4LCAxIDIwJSk7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IC50aWxlLWxpbmtzIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeChmbGV4LCAwIDM4JSk7XHJcbiAgICAgICAgICAgICAgICBvcmRlcjogNDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IC5kZWJ0LWludmVzdG9ycyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4JTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjQ2cHg7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLm5ld3MtbGlzdCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDI4NnB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTVweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI0NnB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1NXB4IDU1cHggMCA1NXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gaW52ZXN0b3IgY2VudHJlIHRlbXBsYXRlXHJcbiNpbnZlc3Rvci1jZW50cmUge1xyXG4gICAgI21haW4ge1xyXG4gICAgICAgIC5pbnZlc3Rvci1jZW50cmUgLnJvdyxcclxuICAgICAgICAuaW52ZXN0b3JzIC5yb3cge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IGVtKDE2MDApO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICB9XHJcbiAgICAjbWFpbiAuaW52ZXN0b3JzIHtcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyAvLzgwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgLnBhZ2UtaW50cm8ge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnZlc3Rvci1jZW50cmUge1xyXG4gICAgLy8gc2hhcmUgcHJpY2VcclxuICAgIC5zaGFyZS1wcm9tbyB7XHJcbiAgICAgICAgbWFyZ2luOiAyMHB4IGF1dG87XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MjBweDtcclxuICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAuc3RvY2stcHJpY2UgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjokY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDEzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IC45O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogZW0oLjYpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNoYXJlLXByaWNlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwOyAvLyAyMHB4O1xyXG4gICAgICAgICAgICAuc3RvY2stcHJpY2UgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNjVweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN0b2NrLWluZGV4IHtcclxuICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyNik7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiRjb2xvci1ncmV5LWJvZHkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjIpO1xyXG4gICAgICAgICAgICAgICAgICAgICBjb2xvcjokY29sb3ItZ3JleS1ib2R5IWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3RvY2stdXBkYXRlZC1saXN0IHtcclxuICAgICAgICAgICAgICAgIEBleHRlbmQgJXVsO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDVweDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgd2lkZ2V0LXRpdGxlICgxMik7XHJcbiAgICAgICAgICAgICAgICAgICAgLy9mb250LXNpemU6IGVtKDEyKTsgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDg1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zdG9jay13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQyMHB4O1xyXG4gICAgICAgICAgICAuc2hhcmUtcHJpY2UgLnN0b2NrLXVwZGF0ZWQtbGlzdCA+IGxpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTIuNSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gY2FuJ3QgZ2V0IGJyZWFrcG9pbnQgdG8gZG8gaW5iZXR3ZWVuIG1lZGlhIHF1ZXJpZXNcclxuICAgICAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0geGxhcmdlICkgeyA/Pz8gIG5vdCB3b3JraW5nXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogZW0oNzY4KSkgYW5kIChtYXgtd2lkdGg6IGVtKDEyNzkpKSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xyXG4gICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgIC8vIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDAgMTAwJSk7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7IC8vMjBweDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzY4cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2hhcmUtcHJpY2Uge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDc2OHB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06LXdlYmtpdC10cmFuc2xhdGUoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKHRyYW5zZm9ybSwgdHJhbnNsYXRlKC01MCUpKTtcclxuICAgICAgICAgICAgICAgIC8vd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LWZsb3csIHJvdyk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMjBweCAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vNzdweDtcclxuICAgICAgICAgICAgICAgIC5zdG9jay1wcmljZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAxIDMzLjMzMzMzJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAuOTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RvY2std3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAwIDY2LjY2NjY2JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4ICggZmxleC1mbG93LCByb3cpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICA+IC5zdG9jay1pbmRleCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleCwgMCAzNSUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLWxlZnQ6IDA7ICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gLnN0b2NrLWluZGV4IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMCAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbixcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vZmxvYXQ6cmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL3BhZGRpbmctcmlnaHQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IC5zdG9jay11cGRhdGVkLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDY1JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIC5zaGFyZS1wcmljZSB7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI0NnB4O1xyXG4gICAgICAgICAgICAgICAgLnN0b2NrLXByaWNlID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSg1NSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RvY2std3JhcHBlciA+IC5zdG9jay1pbmRleCB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTEpO1xyXG4gICAgICAgICAgICAgICAgICAgID4gc3BhbjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNzVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEFubm91bmNlbWVudCBiYXJcclxuLmFubm91bmNlbWVudC1iYXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgcCxcclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDRweDtcclxuICAgIH1cclxuICAgIGEge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIFx0Y29sb3I6IzAwMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLypcclxuICAgICAgICB0cmFuc2l0aW9uOmNvbG9yIC4zcztcclxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcclxuICAgICAgICBcdGNvbG9yOiNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICovXHJcbiAgICB9IFxyXG5cclxuICAgIC8qIGFkZCBvdmVycmlkZSB0byBwcmV2ZW50IG1hcmdpbiBidWZmZXIgKi9cclxuICAgIC53eXNpd3lnID4gLnd5c2l3eWctaW5uZXI6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XHJcbiAgICBcdGJvcmRlci1ib3R0b206IDEwcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDEwcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDhweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICAgICAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNS41KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAmOmFmdGVyLCAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIFx0Y29udGVudDogJyc7XHJcbiAgICAgICAgICAgXHQgXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgXHQgXHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIFx0dG9wOjA7XHJcbiAgICAgICAgICAgIFx0bGVmdDotNTBweDtcclxuICAgICAgICAgICAgXHR3aWR0aDogMDtcclxuXHRcdFx0XHRoZWlnaHQ6IDA7XHJcblx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdFx0XHRib3JkZXItd2lkdGg6IDAgMCA3MnB4IDU0cHg7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkY29sb3ItZ3JlZW4gdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIFx0Ym90dG9tOjA7XHJcbiAgICAgICAgICAgIFx0cmlnaHQ6LTUycHg7XHJcbiAgICAgICAgICAgIFx0d2lkdGg6IDA7XHJcblx0XHRcdFx0aGVpZ2h0OiAwO1xyXG5cdFx0XHRcdGJvcmRlci1zdHlsZTogc29saWQ7XHJcblx0XHRcdFx0Ym9yZGVyLXdpZHRoOiA3MnB4IDU0cHggMCAwO1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWdyZWVuIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBzdHJpcGVzLXdoaXRlKCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNnB4IGF1dG87XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogM3B4O1xyXG4gICAgICAgICAgICBsZWZ0OiAtMTAlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IDEyMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb3BhY2l0eTouNzU7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTpza2V3WCgxNWRlZyk7XHJcblxyXG4gICAgICAgICAgICAvL3BhZGRpbmctYm90dG9tOjEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uaW52ZXN0b3ItY2VudHJlIHtcclxuICAgIC8vIGludmVzdG9yIGxpbmtzXHJcbiAgICAudGlsZS1saW5rcyB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVtYWluLXRpdGxlLXN0eWxlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIH1cclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgIEBleHRlbmQgJXVsO1xyXG4gICAgICAgICAgICA+IGxpLFxyXG4gICAgICAgICAgICA+IGxpID4gYSB7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTYpO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwOyAvL2VtKC42KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgIC8vXHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDAwOyAvLyRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjsgLy8kY29sb3ItZ3JlZW47IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIHVsID4gbGkgPiBhIHtcclxuICAgICAgICAgICAgXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgXHRwb3NpdGlvbjogYWJzb2x1dGU7ICAgICAgICAgICAgICAgIFx0XHJcbiAgICAgICAgICAgICAgICBcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdCAgICAgICAgICAgICAgICB0b3A6NTAlO1xyXG5cdCAgICAgICAgICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcclxuXHQgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5sdCB7XHJcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYucnQge1xyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC01cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5Oi13ZWJraXQtZmxleDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgtZmxvdywgcm93IHdyYXApO1xyXG4gICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAwIDUwJSk7ICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHdmLWljb24oICRpY29uLWFycm93LWJpZy1yaWdodCwgMjJweCwgJGNvbG9yLWdyZWVuKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuNHM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE4KTtcclxuXHRcdCAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG5cdFx0ICAgICAgICAgICAgICAgIFx0cG9zaXRpb246IHJlbGF0aXZlOyBcclxuXHRcdFx0ICAgICAgICAgICAgICAgIHRvcDphdXRvO1xyXG5cdFx0XHQgICAgICAgICAgICAgICAgdHJhbnNmb3JtOm5vbmU7XHJcblx0XHRcdCAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlcixcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvdGlsZS10cmlhbmdsZS5zdmcpIG5vLXJlcGVhdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeChiYWNrZ3JvdW5kLXNpemUsIDEwMCUgMTIwcHgpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1wb3NpdGlvbiAuOHMgZWFzZS1pbi1vdXQsIG9wYWNpdHkgLjNzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTEyMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgtMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICBcdCY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIFx0XHRjb2xvcjojZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIFx0fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuLXRpbGVzLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjJweDsgLy8tMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuMDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVsID4gbGkge1xyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDVweDtcclxuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxNDBweDtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE5KTtcclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDE0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4OyAvLzE0MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB1bCA+IGxpIHtcclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4OyAvLy0xMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgXHRtYXJnaW4tdG9wOiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMzIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHVsID4gbGkgPiBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYubHQge1xyXG4gICAgICAgICAgICBcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgXHRcclxuICAgICAgICAgICAgXHQmOmJlZm9yZSwgJjphZnRlciB7ICAgICAgICAgICAgICAgICAgICBcdFxyXG4gICAgICAgICAgICAgICAgICAgIFx0Y29udGVudDonJztcclxuICAgICAgICAgICAgICAgICAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTsgICAgICAgICAgICAgICAgICAgIFx0XHJcbiAgICAgICAgICAgICAgICAgICAgXHRkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBcdHdpZHRoOjFweDtcclxuICAgICAgICAgICAgICAgICAgICBcdGhlaWdodDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIFx0aGVpZ2h0OmNhbGMoMTAwJSAtIDVweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgICAgICAgICAgICAgICAgICAgXHR0b3A6MDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgXHRsZWZ0Oi0zMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICBcdHJpZ2h0Oi0xMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XHJcbiAgICAgICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMnB4O1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnJ0IHtcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eHhsYXJnZSkge1xyXG4gICAgICAgICAgICAgdWwgPiBsaSA+IGEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSgxMDI0KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTI3OSkpIHtcclxuICAgICAgICAgIGFydGljbGUge1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuZGVidC1pbnZlc3RvcnMge1xyXG4gICAgICAgIC53eXNpd3lnID4gZGl2XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICBtYXJnaW46MDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlbWFpbi10aXRsZS1zdHlsZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgd2YtaWNvbiggJGljb24tYXJyb3ctYmlnLXJpZ2h0LCAyMnB4LCAkY29sb3ItZ3JlZW4pO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkY29sb3ItZ3JlZW4sIDUlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBjYW4ndCBnZXQgYnJlYWtwb2ludCB0byBkbyBpbmJldHdlZW4gbWVkaWEgcXVlcmllc1xyXG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSB4bGFyZ2UgKSB7ID8/PyAgbm90IHdvcmtpbmdcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBlbSg0ODApKSBhbmQgKG1heC13aWR0aDogZW0oMTI3OSkpIHtcclxuICAgICAgICAgICAgLy9AaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICBoMjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICByaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IC8vNDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubmV3cy1saXN0IHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAvL21hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDEzKTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IC45O1xyXG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogZW0oLjYpO1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmRhdGUtdGltZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHdpZGdldC10aXRsZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgID4gLndyYXBwZXIge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgLmRhdGUtdGltZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcDpub3QoOmZpcnN0LWNoaWxkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLy8gY2FuJ3QgZ2V0IGJyZWFrcG9pbnQgdG8gZG8gaW5iZXR3ZWVuIG1lZGlhIHF1ZXJpZXNcclxuICAgICAgICAvLyBAaW5jbHVkZSBicmVha3BvaW50KCBtZWRpdW0geGxhcmdlICkgeyA/Pz8gIG5vdCB3b3JraW5nXHJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogZW0oNzY4KSkgYW5kIChtYXgtd2lkdGg6IGVtKDEyNzkpKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6LXdlYmtpdC1mbGV4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleC1mbG93LCByb3cpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC0xLjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwZW07XHJcbiAgICAgICAgICAgICAgICA+IC5pdGVtIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsMSAzMy4zMzMzJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7IC8vNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgID4gLml0ZW0ge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDYycHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgPiBoMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgd2lkZ2V0LXRpdGxlKCk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICA+IGgyIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGllID4gMTAgYnVnIGZpeGVzIFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcclxuICAgIC5mZWF0dXJlZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gaWUgPiAxMCBidWcgZml4ZXMgXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4td2lkdGg6ZW0oNDgwKSkge1xyXG4gICAgLmludmVzdG9yLWNlbnRyZSB7XHJcbiAgICAgICAgLmdyaWQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYW5ub3VuY2VtZW50LWJhciBwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG4vLyBpZSA+IDEwIGJ1ZyBmaXhlcyBcclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSBhbmQgKG1pbi13aWR0aDplbSg3NjgpKSBhbmQgKG1heC13aWR0aDplbSgxMjc5KSkge1xyXG4gICAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXgge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHghaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi8vIGllID4gMTAgYnVnIGZpeGVzIFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIGFuZCAobWluLXdpZHRoOmVtKDEyODApKSB7XHJcbiAgICAuaW52ZXN0b3ItY2VudHJlIHtcclxuICAgICAgICAuZ3JpZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICA+IC5zaGFyZS1wcm9tbyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLnRpbGUtbGlua3Mge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM4JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mZWF0dXJlZCAucm93IHtcclxuICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMzJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiYm9keS5jYXJlZXJzIHtcclxuICAgICNtYWlue1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBmb250LWZhbWlseTogXCJBdmVuaXJcIjtcclxuXHJcbiAgICAgICAgLnRvLXRvcC1idXR0b24ge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICBib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMjA7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5tb2JpbGUge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNlY3Rpb24ge1xyXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJlZXJzLXNlY3QtMSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQtc2VjdC0xIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6MTAyM3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDoxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzUlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IC0zMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNThweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLmNhcmVlcnMtc2VjdC0yIHtcclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvc2VjdC0yLWJnLTEuanBnKSBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICAvLyBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDkwMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnNlY3QtMi1tYWluLWltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3NTBweDtcclxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDE0MzlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRlc2t0b3AtdmlldyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5zZWN0LTItY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblxyXG4gICAgICAgICAgICAgICAgLmdsYXNzLWJnIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDcwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjQpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAucXVvdGUtdGV4dCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDJyZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL3F1b3RlLWljb24ucG5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC00NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtMTVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9lbmQtcXVvdGUtaWNvbi5wbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMzdweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzBFMEUwRTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNhcmVlcnMtc2VjdC0zIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTAwcHggMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI0Y4RjhGODtcclxuXHJcbiAgICAgICAgICAgIC5jYXJkIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDoxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FyZWVycy1zZWN0LTQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XHJcblxyXG4gICAgICAgICAgICAudmlkZW8td3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICAuYmctaW1hZ2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAudmlkZW8tZGVzYyB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDMwcHggMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNhcmVlcnMtc2VjdC01IHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZzogMTAwcHggMDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDo3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNTBweCAwO1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNvbnRlbnQtc2VjdC01IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPmltZyB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4IDAgMCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NTBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NiU7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcclxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJlZXJzLXNlY3QtNiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyRDJGMkY7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMCA1MHB4O1xyXG5cclxuICAgICAgICAgICAgLnRhbGVudC1zd2lwZXIge1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDUwcHg7XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIC5zd2lwZXItYnV0dG9uLW5leHQsIC5zd2lwZXItYnV0dG9uLXByZXYge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzQ3NEE0QTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzFCMUMxQztcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGFiLWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC8vIC5zd2lwZXItc2xpZGUtYWN0aXZlIHtcclxuICAgICAgICAgICAgLy8gICAgIC50YWxlbnQtY29udGVudCB7XHJcbiAgICAgICAgICAgIC8vICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIC8vICAgICB9XHJcbiAgICAgICAgICAgIC8vIH1cclxuXHJcbiAgICAgICAgICAgIC5jYXJkIHtcclxuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICAmLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC50YWxlbnQtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgJi5zd2lwZXItc2xpZGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLnRhbGVudC1pbWcge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC50YWxlbnQtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ExQTJBMjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAudGFsZW50LXBvc2l0aW9uIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNjc2ODY4O1xyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyAudGFsZW50LWNvbnRlbnQge1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIGJvdHRvbTogLTUwcHg7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgd2lkdGg6IDQwJTtcclxuXHJcbiAgICAgICAgICAgICAgICAvLyAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmNhcmVlcnMtc2VjdC03IHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTAwcHggMDtcclxuXHJcbiAgICAgICAgICAgIC5jb250ZW50LXNlY3QtNyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5jYXJkIHtcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFREVERUQ7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMjc1cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzUwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxMHB4IHNvbGlkICMwNzlCM0E7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJlZXJzLXNlY3QtOCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGOEY4Rjg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMDtcclxuXHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgPmltZyAge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAzMHB4IDMwcHggMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC01MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NDhweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0NiU7XHJcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDkwJTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FyZWVycy1zZWN0LTkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1MHB4IDA7XHJcblxyXG4gICAgICAgICAgICAuY2FyZCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRURFREVEO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI3NXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxMHB4IHJnYmEoMCwwLDAsMC41KTtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjMDc5QjNBO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuY2FyZWVycy1zZWN0LTEwIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI0Y4RjhGODtcclxuICAgICAgICAgICAgcGFkZGluZzogNTBweCAwO1xyXG5cclxuICAgICAgICAgICAgLmJsb2ctc3dpcGVyIHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDIwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAuYmxvZy1zd2lwZXItYnV0dG9uLXByZXYsXHJcbiAgICAgICAgICAgICAgICAuYmxvZy1zd2lwZXItYnV0dG9uLW5leHRcclxuICAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vY2FyZWVycyBkZXRhaWxzXHJcbiAgICAmLmNhcmVlcnMtZGV0YWlsLXN0aWNreSB7XHJcblxyXG4gICAgICAgIGhlYWRlciB7XHJcbiAgICAgICAgICAgIC5oZXJvIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMTUwcHg7XHJcbiAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA0MyU7XHJcblxyXG4gICAgICAgICAgICAgICAgLnByaW1hcnktYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgLnByaW1hcnktYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDE1MG1zIGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYub3ZlcmxheSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMC4zNTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLnByaW1hcnktYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0I0QjVCNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjQjRCNUI1ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5tYWluLWltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcclxuICAgICAgICAgICAgICAgICAgICAvLyBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMjc5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0gXHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTQzOXB4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMzRweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMjc5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDkwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzZWN0aW9uIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmZpeGVkLWJ1dHRvbiB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogI0Y4RjhGODtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pclwiO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxMDtcclxuXHJcbiAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9hcnJvdy5wbmcpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogLTIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAubWFpbi1pbWctbW9iaWxlIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hdXRob3Itd3JhcHBlciB7XHJcbiAgICAgICAgICAgIC5hdXRob3ItbmFtZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmNhcmVlcnMtZGV0YWlsLWZ1bGx3aWR0aC1pbWcge1xyXG4gICAgICAgIC5oZXJvIHtcclxuICAgICAgICAgICAgLm1haW4taW1nIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA3NTBweDtcclxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJlZXJzLWRldGFpbC1jb250ZW50IHtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jYXJkIHtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0VERURFRDtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDEwcHggcmdiYSgwLDAsMCwwLjUpO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMTBweCBzb2xpZCAjMDc5QjNBO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuY2FyZWVycy1kZXRhaWwtdGFiIHtcclxuICAgICAgICAuaGVybyB7XHJcbiAgICAgICAgICAgIC5tYWluLWltZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNzUwcHg7XHJcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5jb250ZW50LXRhYnMtd3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwMHB4IDA7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNGOEY4Rjg7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgIC50YWItb3B0aW9ucyB7XHJcbiAgICAgICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3RTdFN0U7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogOTAlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOjptYXJrZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzA3OUIzQTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwRjBFMEU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvYXJyb3ctaG92ZXItYmlnLnBuZyk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAudGFiLXN3aXBlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC50YWIge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBoNCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLnN3aXBlci1zbGlkZS1hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC50YWItY29udGVudHMge1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtNTBweDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ5JTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDc1cHggNTBweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4IDAgMCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAudGFiLWNvbnRlbnQtaWNvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8vZ2xvYmFsXHJcbiAgICAucHJpbWFyeS1idXR0b24ge1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFQkVCRUI7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcclxuICAgICAgICBjb2xvcjogIzA3OUIzQTtcclxuICAgICAgICBwYWRkaW5nOiAxMnB4IDQwcHggMTBweCAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiQXZlbmlyXCI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL2Fycm93LnBuZyk7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzA3OUIzQTtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDc5QjNBO1xyXG5cclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1cmwoL1Jlc291cmNlUGFja2FnZXMvV2VzZmFybWVycy9hc3NldHMvZGlzdC9pbWcvY2FyZWVycy9hcnJvdy1ob3Zlci5wbmcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOjc2N3B4KSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYmxvZy10aWxlIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxM3B4IDMwcHggcmdiYSgwLDAsMCwwLjE2KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5ibG9nLWltZyB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggMzBweCAwIDA7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyODBweDtcclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDEwMjNweCkge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJsb2ctdGlsZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMjBweDtcclxuXHJcbiAgICAgICAgICAgIHVsIGxpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAjMDc5QjNBO1xyXG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJsb2ctdGlsZS1ib3R0b20td3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYXV0aG9yLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIC5hdXRob3ItbmFtZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmF1dGhvci1wb3NpdGlvbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjMwcHggIWltcG9ydGFudDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxNDM5cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE4NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuYmxvZy11cmwge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDc5QjNBO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiAxMDIzcHgpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogdXJsKC9SZXNvdXJjZVBhY2thZ2VzL1dlc2Zhcm1lcnMvYXNzZXRzL2Rpc3QvaW1nL2NhcmVlcnMvYXJyb3cucG5nKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pclwiO1xyXG4gICAgfVxyXG5cclxuICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcclxuICAgIH1cclxuXHJcbiAgICBwLCBzcGFuIHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJBdmVuaXIgTGlnaHRcIjtcclxuICAgIH1cclxuXHJcbiAgICAudmlkZW8td3JhcHBlciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuXHJcbiAgICAgICAgJi5zbWFsbCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiA3MHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcblxyXG4gICAgICAgICAgICAucGxheS1idXR0b24td3JhcHBlciB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogNzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBsYXktYnV0dG9uLXdyYXBwZXIge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgLyogcGFkZGluZzogMjBweDsgKi9cclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsMjU1LDI1NSwwLjI4KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjJzO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZmZmZmO1xyXG5cclxuICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLnRhYmxldC12aWV3IHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgICAgICAgICAgICAgQG1lZGlhKG1heC13aWR0aDogMTAyM3B4KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMDc5QjNBICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMwNzlCM0EgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDNweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnZpZGVvLWRlc2Mge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwJTtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiQXZlbmlyXCI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwLCByZ2JhKDAsMCwwLDAuOCksIHRyYW5zcGFyZW50KTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMzBweCAwIDUwcHg7XHJcbiAgICAgICAgICAgIGNvbG9yOiAjZDhkOGQ4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuXHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL3ZpZGVvLWluZm8ucG5nKTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5iZy1pbWFnZSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYXV0aG9yLXdyYXBwZXIge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHJcbiAgICAgICAgLmF1dGhvci1pbWcge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHdoaXRlO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDNweCA2cHggcmdiYSgwLDAsMCwwLjE2KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hdXRob3ItbmFtZS13cmFwcGVyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgICAgIC5hdXRob3ItbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYXV0aG9yLXBvc2l0aW9uIHtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wb2ludGVyIHtcclxuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmF0LXNoYXJlLWJ0bi1lbGVtZW50cyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5hdC1zaGFyZS1idG4ge1xyXG4gICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjRUJFQkVCO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAucmV2ZWFsLW92ZXJsYXkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICAgICAgICB6LWluZGV4OiA5OTk5OSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICBjb250ZW50OnVybCgvUmVzb3VyY2VQYWNrYWdlcy9XZXNmYXJtZXJzL2Fzc2V0cy9kaXN0L2ltZy9jYXJlZXJzL2Nsb3NlLWljb24ucG5nKTtcclxuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgICAgICAgIHJpZ2h0OiA1MHB4O1xyXG4gICAgICAgICAgICB0b3A6IDUwcHg7XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucmV2ZWFsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGJvcmRlcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA0NzlweCkge1xyXG4gICAgICAgICAgICB0b3A6IDEzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5jbG9zZS1idXR0b24ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogM2VtICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XHJcbiAgICAgICAgY29sb3I6ICM4YThhOGEgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuc3VidGl0bGUge1xyXG4gICAgICAgIHdpZHRoOiA3NSU7XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6NzY3cHgpIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC53LTEwMCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5zaGFyZS1idXR0b24td3JhcHBlciB7XHJcblxyXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNoYXJlLWJ1dHRvbi13cmFwcGVyLW1vYmlsZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAudGV4dC1jZW50ZXIge1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAudGV4dC1ib2xkIHtcclxuICAgICAgICBmb250LWZhbWlseTogXCJBdmVuaXIgQm9sZFwiICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQtbGlnaHQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkF2ZW5pciBMaWdodFwiICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLmQtZmxleCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuXHJcbiAgICAuZmxleC1jb2x1bW4ge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLmFsaWduLWl0ZW1zLWJhc2Uge1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcclxuICAgIH1cclxuXHJcbiAgICAuZmxleC1jb2x1bW4tbW9iaWxlIHtcclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAub3JkZXItMSB7XHJcbiAgICAgICAgb3JkZXI6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLm9yZGVyLTIge1xyXG4gICAgICAgIG9yZGVyOiAyO1xyXG4gICAgfVxyXG5cclxuICAgIC5qdXN0aWZ5LWNlbnRlciB7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmFsaWduLWl0ZW1zLWNlbnRlciB7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuanVzdGlmeS1iZXR3ZWVuIHtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICB9XHJcblxyXG4gICAgLmQtYmxvY2sge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIC5tci1ub25lLW1vYmlsZSB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5tci0xMCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tci0yMCB7XHJcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tYi0xMCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAubWItMTAtbW9iaWxlIHtcclxuICAgICAgICBAbWVkaWEobWF4LXdpZHRoOiA3NjdweCkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWItMjAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1iLTMwIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tYi00MCB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAubWItNTAge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm10LTEwIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5tdC0yMCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAubXQtMzAge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnB0LTMwIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIH1cclxuXHJcbiAgICAudGV4dC13aGl0ZSB7XHJcbiAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICB9XHJcblxyXG4gICAgLnRleHQtZ3JlZW4ge1xyXG4gICAgICAgIGNvbG9yOiAjMDc5QjNBO1xyXG4gICAgfVxyXG5cclxuICAgIC50ZXh0LXVwcGVyY2FzZSB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuXHJcbiAgICAuY2FyZCB7XHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG5cclxuICAgICAgICAgICAgICAgICY6Om1hcmtlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwNzlCM0E7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnVzZWZ1bC1wYWdlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vc3dpcGVyXHJcblxyXG4gICAgLy9zd2lwZXIgcGFnaW5hdGlvblxyXG4gICAgLnN3aXBlci1jb250YWluZXItaG9yaXpvbnRhbD4uc3dpcGVyLXBhZ2luYXRpb24tYnVsbGV0cywgLnN3aXBlci1wYWdpbmF0aW9uLWN1c3RvbSwgLnN3aXBlci1wYWdpbmF0aW9uLWZyYWN0aW9uIHtcclxuICAgICAgICBib3R0b206IDIzcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnN3aXBlci1jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vc3dpcGVyIGJ1bGxldFxyXG4gICAgLnN3aXBlci1idXR0b24tbmV4dCwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICAgICAgY29sb3I6ICMwNzlCM0EgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICB0b3A6IGF1dG87XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFQkVCRUI7XHJcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1wcmV2LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tbmV4dCB7XHJcbiAgICAgICAgcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0LCAuc3dpcGVyLWNvbnRhaW5lci1ydGwgLnN3aXBlci1idXR0b24tcHJldiB7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgbGVmdDogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuc3dpcGVyLWJ1dHRvbi1uZXh0OmFmdGVyLCAuc3dpcGVyLWJ1dHRvbi1wcmV2OmFmdGVyIHtcclxuICAgICAgICBmb250LXNpemU6IDEycHggIWltcG9ydGFudDtcclxuICAgICAgICBmb250LXdlaWdodDogYm9sZCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLWJ1bGxldC1hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMwNzlCM0EgIWltcG9ydGFudDtcclxuICAgIH1cclxufSIsIiNjYXJlZXJzLWNvcnBvcmF0ZSB7XHJcbiAgICAuZ3JleS1wYW5lbCB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTU7XHJcbiAgICAgICAgPiAubGFyZ2UtY29sbGFwc2Uge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLnF1b3RlLWludHJvIHtcclxuICAgIG1hcmdpbjogMCBhdXRvOyBcclxuICAgIHBhZGRpbmctYm90dG9tOiAyNXB4OyBcclxufVxyXG5cclxuLmNhcmVlci1wYW5lbHMge1xyXG4gICAgLmFycm93LWxpbmstcmlnaHQge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICBjb2xvcjogI2ZmZjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNCk7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC4zKTtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgd2YtaWNvbiggJGljb24tYXJyb3ctYmlnLXJpZ2h0LCAyMHB4LCAkY29sb3ItZ3JlZW4pO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBhIHtcclxuICAgICAgICAmOmhvdmVyLCBcclxuICAgICAgICAmOmZvY3VzIHtcclxuICAgICAgICAgICAgLmFycm93LWxpbmstcmlnaHQge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmNhcmVlci1wYW5lbHMge1xyXG4gICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIC5jYXJlZXItcGFuZWwge1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDIwcHggMDtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYSA+IC50aXRsZSA+IGgyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE4KTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgLmNhcmVlci1wYW5lbHMge1xyXG4gICAgICAgIC5jYXJlZXItcGFuZWwge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICBhID4gLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwJTtcclxuICAgICAgICAgICAgICAgID4gaDIge1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyNCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IC5hcnJvdy1saW5rLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMjBweDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIC5jYXJlZXItcGFuZWxzIHtcclxuICAgICAgICAuY2FyZWVyLXBhbmVsIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICBhID4gLnRpdGxlIHsgXHJcbiAgICAgICAgICAgICAgICA+IGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAzNnB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMzApO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPiAuYXJyb3ctbGluay1yaWdodCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgIC5jYXJlZXItcGFuZWxzIHtcclxuICAgICAgICAuY2FyZWVyLXBhbmVsIHtcclxuICAgICAgICAgICAgYSA+IC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDIlO1xyXG4gICAgICAgICAgICAgICAgPiBoMiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgzNik7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICA+IC5hcnJvdy1saW5rLXJpZ2h0IHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE2KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgLmNhcmVlci1wYW5lbHMge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDgwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgIH1cclxufVxyXG4iLCIubWFpbiAuY2FyZWVycyAuY29sdW1ucyB7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufSBcclxuXHJcbi5jYXJlZXJzICsgLmdyZXktcGFuZWwge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmNhcmVlcnMtcGFuZWwge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgIHBhZGRpbmctdG9wOiAzNXB4O1xyXG59XHJcblxyXG4uaGlnaGxpZ2h0LXBhbmVsLmdyZXktcGFuZWwge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIC8vIG1hcmdpbi1ib3R0b206IDQwcHg7IFxyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgIGNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogZW0oNTBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgaDI6Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG4gICAgaDMsXHJcbiAgICBoNCxcclxuICAgIGg1LFxyXG4gICAgaDYge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS13aGl0ZTtcclxuICAgIH1cclxuICAgIC5jb2x1bW5zIHtcclxuICAgICAgICB6LWluZGV4OiAyMDA7XHJcbiAgICB9XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgIHdpZHRoOiA1MCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL3N0cm9rZS1zdmcuc3ZnKSBuby1yZXBlYXQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDplbSg3NjgpKSB7XHJcblx0LmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsIHtcclxuXHQgICAgLnJvdzpmaXJzdC1vZi10eXBlIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMDtcclxuXHRcdH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogZW0oMTAyNHB4KSkge1xyXG4gICAgLmNvbnRlbnQtcGFnZSAud3lzaXd5ZyB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICB9IFxyXG5cclxuICAgIGFydGljbGUge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCAoeHhsYXJnZSkge1xyXG5cdC5oaWdobGlnaHQtcGFuZWwuZ3JleS1wYW5lbCB7XHJcblx0ICAgIGgyOmZpcnN0LW9mLXR5cGUge1xyXG5cdCAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcclxuXHQgICAgfVxyXG4gICAgfVxyXG59IiwiLy8gUGFnZXMgd2l0aCBoYWxmIGltYWdlIGFuZCBoYWxmIHRleHQgaW4gYSBsaXN0IChzZWUgbGVhZGVyc2hpcCBwYWdlKVxyXG4ubGlzdC1pbWFnZS1jb3B5IHtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDYuMjVlbTtcclxuICB9XHJcbiAgLnBhbmVsIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIG1hcmdpbjogNDBweCBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiA0NTBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZmxvdzogcm93O1xyXG4gICAgICBtYXgtd2lkdGg6IDExMDBweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDA7IC8vMy4xMjVlbTtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwOyAvLzMuMTI1ZW07XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbjogNDBweCAzLjEyNWVtO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgICAuaW1hZ2Uge1xyXG4gICAgICA+IGltZyB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgIC8vIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgLy8gaGVpZ2h0OiAzMDBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICBmbGV4OiAxIDEgNTAlO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVlbTtcclxuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29weSB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogMjBweCAwIDEuMjVyZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogZW0oMTUuNSk7XHJcbiAgICAgIGEubW9yZS1saW5rIHtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5NDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgIH1cclxuICAgICAgaDIge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIH1cclxuICAgICAgaDMge1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiAnSGV1cmlzdGljYSc7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICBmb250LXNpemU6IGVtKDE4KTtcclxuICAgICAgfVxyXG4gICAgICBwIHtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk0O1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgIH1cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleDogMSAxIDUwJTtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcclxuICAgICAgICBib3JkZXItYm90dG9tOiAkY29sb3ItZ3JleTYgMXB4IHNvbGlkO1xyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC1zaXplOiBlbSgxOSk7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IC53cmFwcGVyIHtcclxuICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAwO1xyXG4gICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICAgICAgICBtYXJnaW46IGluaXRpYWw7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgPiAud3JhcHBlciB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1ZW07XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDMge1xyXG4gICAgICAgICAgZm9udC1zaXplOiBlbSgyMCk7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucHJvZmlsZSB7XHJcbiAgJi5kZXRhaWwge1xyXG4gICAgLmltYWdlIHtcclxuICAgICAgbWFyZ2luOiAwIGF1dG8gMjVweDtcclxuICAgICAgd2lkdGg6IDIzNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIvLyBsYXlvdXRcclxuLm91ci1idXNpbmVzc2VzIHtcclxuXHJcbiAgICAucGFnZS1pbnRybyA+IC53eXNpd3lnIHtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAud3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMCAyMHB4IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTVweDsgXHJcbiAgICAgICAgLnJvdy1ncm91cCB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogNDBweCAtMTBweCAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTEwcHg7IFxyXG5cclxuICAgICAgICAgICAgPiAud3lzaXd5ZyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgTWVkaXVtJztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTcpOyBcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCRpY29uLXJpZ2h0LW9wZW4sIGVtKDE3KSwgJGNvbG9yLWdyZWVuKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH0gXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyxcclxuICAgICAgICAgICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmVlbi1hbmM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcblxyXG4gICAgICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgICAgICAgICAgICA+IC5wYW5lbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJvdy1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAucGFuZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bzsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC53cmFwcGVyOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkgeyBcclxuICAgICAgICAucGFnZS1pbnRybyA+IC53eXNpd3lnIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC53cmFwcGVyIC5yb3ctZ3JvdXAge1xyXG4gICAgICAgICAgICAvLyBwYWRkaW5nOiAzMHB4O1xyXG4gICAgICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMzMuMzMzMyU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMzLjMzMzMlO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucm93LWhlYWRlciB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxIDEgMTAwJSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAucGFuZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHsgXHJcbiAgICAgICAgLnBhZ2UtaW50cm8gPiAud3lzaXd5ZyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAud3JhcHBlciAucm93LWdyb3VwIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xyXG4gICAgICAgICAgICAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAwIDAgMjUlO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyBcclxuXHJcbiAgICAgICAgICAgICAgICAud3lzaXd5ZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnJvdy1oZWFkZXIge1xyXG4gICAgICAgICAgICAgICAgZmxleDogMSAxIDEwMCUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIC5wYW5lbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMjBweDsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGluaGVyaXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoMyxcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCBoMyB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAyMHB4IDEwcHggMjBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgaDMge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHsgXHJcbiAgICAgICAgLnJvdy1ncm91cCAud3lzaXd5ZyB7IFxyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwOyBcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLndyYXBwZXIgLnJvdy1ncm91cCB7XHJcbiAgICAgICAgICAgIC5jb2x1bW5zIHtcclxuICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAyMCU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIwJTtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7IFxyXG5cclxuICAgICAgICAgICAgICAgIC53eXNpd3lnIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoMyB7ICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDU1cHggNTVweCAwIDU1cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xyXG4gICAgICAgICAgICAucm93LWdyb3VwIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgLmNvbHVtbnMge1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXg6IDAgMCAxNi42NjY2JTtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDE2LjY2NjYlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC53cmFwcGVyOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4bGFyZ2UpIHtcclxuICAgICAgICAud3JhcHBlciAucm93LWdyb3VwIHtcclxuICAgICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eGxhcmdlKSB7XHJcbiAgICAgICAgLndyYXBwZXIgLnJvdy1ncm91cCB7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDI0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4eGxhcmdlKSB7XHJcbiAgICAgICAgLndyYXBwZXIgLnJvdy1ncm91cCB7XHJcbiAgICAgICAgICAgIGgzIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4ub3VyLWJ1c2luZXNzZXMge1xyXG4gICAgaDMge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAzNXB4IDAgNTVweCAwO1xyXG4gICAgfVxyXG4gICAgLnBhbmVsIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9IFxyXG5cclxuICAgIC5mZWF0dXJlZCB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgd2lkZ2V0LXRpdGxlKCk7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGxtZWRpdW0pIHtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSg0ODApKSBhbmQgKG1heC13aWR0aDplbSg3NjcpKSB7XHJcbiAgICAub3VyLWJ1c2luZXNzZXMge1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBpZSA+IDEwIGJ1ZyBmaXhlcyBcclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSB7XHJcbiAgICAuZmVhdHVyZWQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIC5yb3cge1xyXG4gICAgICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIGFuZCAobWluLXdpZHRoOmVtKDQ4MCkpIHtcclxuICAgIC5vdXItYnVzaW5lc3NlcyB7XHJcbiAgICAgICAgLmdyaWQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4td2lkdGg6ZW0oNzY4KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTI3OSkpIHtcclxuICAgIC5zaGFyZS1wcm9tbyAuc2hhcmUtcHJpY2UgLnN0b2NrLWluZGV4IHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4IWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSBhbmQgKG1pbi13aWR0aDplbSgxMjgwKSkge1xyXG4gICAgLm91ci1idXNpbmVzc2VzIHtcclxuICAgICAgICAuZ3JpZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAuc2hhcmUtcHJvbW8ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGlsZS1saW5rcyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMzglO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmZlYXR1cmVkIC5yb3cge1xyXG4gICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICB3aWR0aDogMzMlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuXHJcbiIsIi5vdXItZGl2aXNpb25zIHtcclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdGFydGljbGUud3lzaXd5ZyB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdH1cclxuXHR9IFxyXG5cclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOmVtKDEwMjQpKSBhbmQgKG1heC13aWR0aDplbSgxMjc5KSkge1xyXG5cdFx0YXJ0aWNsZS53eXNpd3lnIHtcclxuXHRcdCAgbWFyZ2luLWxlZnQ6IDA7XHJcblx0XHQgIG1hcmdpbi1yaWdodDogMDtcclxuXHRcdH1cclxuXHR9XHJcblx0XHJcblxyXG5cdC5wYWdlLWludHJvIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0fVxyXG5cclxuXHQuaW50cm8tcGFyYSB7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDAgMCAwOyBcclxuXHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRwYWRkaW5nOiA1MHB4IDAgMCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC8qIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHRcdFx0Ly9wYWRkaW5nOiA1MHB4IDEwMHB4IDAgMTAwcHg7XHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMCAwIDA7XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgXHJcblx0XHRcdHBhZGRpbmc6IDUwcHggMCAwIDA7XHRcdFx0XHJcblx0XHR9ICovXHJcblx0fVxyXG5cclxuXHQuYml6LWdyb3VwIHtcclxuXHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cclxuXHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHRib3JkZXItdG9wOiAxMnB4IHNvbGlkICRjb2xvci1ncmV5LXdoaXRlO1xyXG5cclxuXHRcdC5wYW5lbCB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDA7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiA5MHB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMTMwcHg7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9IC8vIGVuZDogLmJpei1ncm91cCBcclxuXHJcblx0LmJpei1pdGVtIHtcclxuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0cGFkZGluZzogMTBweCAwIDQ1cHggMDtcclxuXHJcblx0XHRoMyB7IFxyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHR9IFxyXG5cclxuXHRcdHAgeyBcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xyXG5cdFx0XHRcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHR3aWR0aDogNTAlO1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0OyBcclxuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuYml6LWxvZ28ge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpbWcge1xyXG5cdFx0XHRcdHRyYW5zZm9ybTogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdGEge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWdyZXkzO1xyXG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7IFxyXG5cdFx0XHRmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCk7XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkgeyBcclxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMjVweDtcclxuXHRcdFx0XHRmb250LXNpemU6IGVtKDEyKTtcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0QGluY2x1ZGUgd2YtaWNvbigkaWNvbi1hcnJvdy1iaWctcmlnaHQsIGVtKDIwKSwgJGNvbG9yLWdyZWVuKTtcclxuXHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkgeyBcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHdmLWljb24oJGljb24tYXJyb3ctYmlnLXJpZ2h0LCBlbSgxOCksICRjb2xvci1ncmVlbik7XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOmhvdmVyLCBcclxuXHRcdFx0JjphY3RpdmUgeyBcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7IFxyXG5cdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmVlbi1hbmM7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHsgXHJcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9IC8vIGVuZDogYml6LWl0ZW0gXHJcblxyXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4td2lkdGg6ZW0oNzY4KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTAyMykpIHtcclxuXHQgICAgLmludHJvLXBhcmEge1xyXG5cdCAgICAgICAgcGFkZGluZzogNTBweCAwIDAgMDtcclxuXHQgICAgfVxyXG5cdH1cclxuXHJcbn0gLy8gZW5kOiAub3VyLWRpdmlzaW9uIiwiLmFzeC1hbm5vdW5jZSB7XHJcbiAgICAucGFnZS1pbnRybyB7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5jb2x1bW5zIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICBcclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFzeC1oZWFkZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDY1cHg7XHJcblxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgd2lkdGg6ICA1MCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcclxuICAgICAgICAgICAgbWFyZ2luOiAwOyBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYXN4LXJlc3VsdHMge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgLmRhdGUtZ3JvdXAgbGkge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGF0ZS1ncm91cCBsaSA+IHNwYW4ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBlbSgzNXB4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5kYXRlLWdyb3VwIGxpID4gYSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcbiAgICAgICAgfVxyXG4gICAgfSAgICBcclxuXHJcbiAgICBidXR0b24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgcGFkZGluZzogMTVweCA3cHg7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgICAgICB3aWR0aDogMTUwcHg7IFxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDdweDtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBkaXJlY3Rpb24tYXJyb3cgKDE0LCAkY29sb3ItZ3JleS1ib2R5KTsgXHJcbiAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjowLjVzIGFsbDtcclxuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOjAuNXMgYWxsO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOjAuNXMgYWxsO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDowOyBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgJjphZnRlciB7IFxyXG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcbiAgICAgICAgICAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciwgXHJcbiAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRyb3Bkb3duLXBhbmUge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgICAgYm9yZGVyOiBub25lO1xyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICB3aWR0aDogMTUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMXB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE0KTtcclxuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyZXktbmF2O1xyXG5cclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5LW5hdjtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggN3B4O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1uYXY7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIsICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IGVtKDQ4MHB4KSkgXHJcbiAgICB7XHJcbiAgICAgIC5kcm9wZG93bi1wYW5lIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG59IC8vIGVuZDogLmFzeC1hbm5vdW5jZVxyXG5cdFxyXG5cclxuXHJcblxyXG4iLCJhcnRpY2xlIHtcclxuXHJcblx0Lmxpc3QtbGlua3Mge1xyXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdG1hcmdpbjogMCAwIDMwcHggMDtcclxuXHRcdD4gbGkge1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDhweCAwO1xyXG5cdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHRmb250LXNpemU6ZW0oMTMpO1xyXG5cdFx0XHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5NDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdFx0XHRcdGNvbG9yOiMwMDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcbmFydGljbGUgPiAubGlzdC1saW5rczpmaXJzdC1vZi10eXBlIHtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgIzJjMmYyZjtcclxufVxyXG5hcnRpY2xlID4gLmFjY29yZGlvbiAubGlzdC1saXN0IHtcclxuXHQmOmxpc3QtbGlua3Mge1xyXG5cdFx0Ym9yZGVyLXRvcDpub25lO1xyXG5cdH1cclxufSIsIi5jb250YWN0IHtcclxuXHQ+IC5yb3cge1xyXG5cdFx0cGFkZGluZy10b3A6IDM1cHg7IFxyXG5cdH1cclxuXHJcblx0LmhxLWRldGFpbHMge1xyXG5cdFx0Ly8gYXJ0aWNsZSwgZGl2IHtcclxuXHRcdC8vIFx0cGFkZGluZzowO1xyXG5cdFx0Ly8gXHRtYXJnaW46MDtcclxuXHRcdC8vIH1cclxuXHRcdFxyXG5cdFx0cCB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjZlbTtcclxuXHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjQ1ZW07XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0XHRsaW5lLWhlaWdodDogMS40NWVtO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjZlbTtcclxuXHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQucm93IC5jb2x1bW4gLnd5c2l3eWcgeyBcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuXHRcdCAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0ICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwOyBcclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0QG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSgxMDI0KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTI3OSkpIHtcclxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcclxuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQud3lzaXd5ZyB7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiAwOyBcclxuXHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5oZXJvIHtcclxuXHRcdG1hcmdpbjogNDVweCAwIDAgMDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkgeyBcclxuXHRcdFx0bWFyZ2luOiAyMHB4IDAgMCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdG1hcmdpbjogNDVweCAwIDAgMDtcclxuXHRcdH1cclxuXHJcblx0XHQuanVtcC1saW5rIHtcclxuXHRcdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDUwcHg7IFxyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTsgXHJcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lOyBcclxuXHJcblx0XHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0bGVmdDogY2FsYyg1MCUgLSAxNHB4KTtcclxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDIwcHg7XHJcblx0XHRcdFx0XHRmb250LXNpemU6IGVtKDI4KTtcclxuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRcdFx0XHRcdEBpbmNsdWRlIHdmLWljb24oJGljb24tYXJyb3ctYmlnLWRvd24sIDE0LCAkY29sb3ItZ3JlZW4pOyBcclxuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdD4gc3BhbiB7XHJcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgXHJcblx0XHRcdFx0XHQmOmhvdmVyLFxyXG5cdFx0XHRcdFx0Jjpmb2N1cywgXHJcblx0XHRcdFx0XHQmOmFjdGl2ZSB7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9IFxyXG5cdFx0XHR9XHJcblx0XHR9XHRcdFxyXG5cdH1cclxuXHJcblx0LnNlbmQtbWVzc2FnZSB7XHJcblx0XHRmaWVsZHNldCA+IGRpdixcclxuXHRcdC5zZl9jb2xzSW4gPiBkaXYge1xyXG5cdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHR9XHJcblxyXG5cdFx0bGFiZWwge1xyXG5cdFx0XHRmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvb2tcIjtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgxMSk7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IFxyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWdyZXk0O1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMTVweDtcclxuXHRcdH1cclxuXHJcblx0XHRpbnB1dCwgXHJcblx0XHRzZWxlY3QgeyBcclxuXHRcdFx0Zm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG5cdFx0XHRvdXRsaW5lOiAwO1xyXG5cdFx0XHRib3JkZXI6IDA7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleS1ib2R5OyBcclxuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IDA7XHJcblx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdG1hcmdpbjogMDtcdFxyXG5cclxuXHRcdFx0Jjpmb2N1cyBcclxuXHRcdFx0e1xyXG5cdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItZ3JleTQ7IFxyXG5cdFx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHBpbms7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQmOm5vdCg6Zm9jdXMpOmludmFsaWQgeyBcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLWdyZXk0O1xyXG5cdFx0XHRcdGJvcmRlci1jb2xvcjogJGNvbG9yLWdyZXk0O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0c2VsZWN0IHtcclxuXHRcdFx0YmFja2dyb3VuZDogbm9uZTsgXHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHRcdEBpbmNsdWRlIHdmLWljb24oJGljb24tYXJyb3ctZG93biwgMTQsICRjb2xvci1ncmV5NCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuZXJyb3IgeyBcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1vcmFuZ2U7XHJcblxyXG5cdFx0XHRsYWJlbCB7XHJcblx0XHRcdFx0Y29sb3I6ICRjb2xvci1vcmFuZ2U7XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGlucHV0IHtcclxuXHRcdFx0XHRjb2xvcjogJGNvbG9yLW9yYW5nZTtcclxuXHRcdFx0XHRib3JkZXItY29sb3I6ICRjb2xvci1vcmFuZ2U7IFxyXG5cclxuXHRcdFx0XHQmOm5vdCg6Zm9jdXMpIHtcclxuXHRcdFx0XHRcdGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3Itb3JhbmdlOyBcdFx0XHRcdFx0XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0aW5wdXRbdHlwZT0ndGV4dCddLCBpbnB1dFt0eXBlPSdwYXNzd29yZCddLCBpbnB1dFt0eXBlPSdkYXRlJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lJ10sIGlucHV0W3R5cGU9J2RhdGV0aW1lLWxvY2FsJ10sIGlucHV0W3R5cGU9J21vbnRoJ10sIGlucHV0W3R5cGU9J3dlZWsnXSwgaW5wdXRbdHlwZT0nZW1haWwnXSwgaW5wdXRbdHlwZT0nbnVtYmVyJ10sIGlucHV0W3R5cGU9J3NlYXJjaCddLCBpbnB1dFt0eXBlPSd0ZWwnXSwgaW5wdXRbdHlwZT0ndGltZSddLCBpbnB1dFt0eXBlPSd1cmwnXSwgaW5wdXRbdHlwZT0nY29sb3InXSwgdGV4dGFyZWEge1xyXG5cdFx0XHRwYWRkaW5nOiAwO1xyXG5cdFx0XHRib3gtc2hhZG93Om5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0dGV4dGFyZWEge1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAzOTVweDtcclxuXHRcdFx0cGFkZGluZzogMjBweDtcclxuXHRcdFx0bWFyZ2luOiAwOyBcclxuXHRcdFx0bWFyZ2luLXRvcDogMzVweDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuM2VtO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRtYXJnaW4tdG9wOiAwO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHRcclxuXHRcdC5idG4tc3VibWl0IHtcclxuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdGZsb2F0OiByaWdodDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC50bmMge1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDE0KTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDVlbTtcclxuXHRcdFx0cGFkZGluZzogMzVweCAwOyBcclxuXHJcblx0XHRcdGEge1xyXG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdFx0XHRcdCY6aG92ZXIsIFxyXG5cdFx0XHRcdCY6Zm9jdXMge1xyXG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRpbnB1dFt0eXBlPSdjaGVja2JveCddIHsgXHJcblx0XHRcdFx0ZGlzcGxheTogbm9uZTsgXHJcblxyXG5cdFx0XHRcdH5zcGFuIHtcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzNXB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHR+c3BhbjpiZWZvcmUgeyBcclxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0bGVmdDogMDtcclxuXHRcdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IC45ZW07IFxyXG5cdFx0XHRcdFx0QGluY2x1ZGUgd2YtaWNvbigkaWNvbi1pY29uLWNoZWNrYm94LCBlbSgyNSksICRjb2xvci1ncmV5Myk7IFxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cclxuXHRcdFx0aW5wdXRbdHlwZT0nY2hlY2tib3gnXTpjaGVja2VkIHsgXHJcblx0XHRcdFx0fnNwYW46YmVmb3JlIHtcclxuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IC45ZW07XHJcblx0XHRcdFx0XHRjb250ZW50OiAkaWNvbi1pY29uLWNoZWNrYm94LXNlbGVjdGVkO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmJ1c2luZXNzLWNvbnRhY3Qge1xyXG5cdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuXHRcdG1hcmdpbi10b3A6IDM1cHg7XHJcblx0fVxyXG5cclxuXHQuY29udGFjdC1pdGVtIHtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTIpO1xyXG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTY7XHRcclxuXHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xyXG5cdFx0fVxyXG5cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTIpO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6bGFzdC1jaGlsZCB7XHJcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRcdH1cclxuXHJcblx0XHRwIHtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNGVtO1xyXG5cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNmVtO1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XHJcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNGVtO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0LmNvbHVtbnMge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRhIHtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuYWNjb3JkaW9uIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblx0fVxyXG5cclxuXHQuYWNjb3JkaW9uLWNvbnRlbnQgPiAucm93IHtcclxuXHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdH1cclxuXHJcbn0gLy8gZW5kOiAuY29udGFjdCIsIi5hY2NvcmRpb24ge1xyXG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XHRcclxuXHRib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XHJcblx0LmFjY29yZGlvbi1pdGVtIHtcdFxyXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdHBhZGRpbmctbGVmdDogMDtcclxuXHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0ZGlzcGxheTogbm9uZTtcdFx0XHRcclxuXHRcdH1cdFx0XHRcclxuXHRcdC5hY2NvcmRpb24tdGl0bGUge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yLWdyZXk2O1xyXG5cdFx0XHRjb2xvcjokY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRwYWRkaW5nOjhweCAwO1xyXG5cdFx0XHRtYXJnaW46MDtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHRcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1x0XHRcdFx0XHJcblx0XHRcdCY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGRpcmVjdGlvbi1hcnJvdyAoMTQsICRjb2xvci1ncmV5Myk7ICAgICAgICAgICAgICBcdFxyXG5cdCAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDE1MG1zIGVhc2UtaW4tb3V0KTtcclxuXHQgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXgodHJhbnNmb3JtLW9yaWdpbiwgNTAlIDM3JSAwKTtcclxuXHQgICAgICAgICAgICBsaW5lLWhlaWdodDowO1x0ICBcclxuXHQgICAgICAgICAgICBtYXJnaW4tdG9wOiAwOyAgICAgICAgICBcclxuXHQgICAgICAgICAgIC8vIG1pbi1oZWlnaHQ6MTAwJTtcclxuXHRcdFx0fVx0XHJcblx0XHRcdD4gaDIsID4gaDMge1x0XHRcdFx0XHJcblx0XHRcdFx0cGFkZGluZzowO1xyXG5cdFx0XHRcdG1hcmdpbjowO1xyXG5cdFx0XHRcdGZvbnQtZmFtaWx5OidIZXVyaXN0aWNhJztcclxuXHRcdFx0XHRmb250LXNpemU6IGVtKDI0KTtcclxuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHRcdCY6aG92ZXIsICY6Zm9jdXMge1xyXG5cdFx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdGNvbG9yOiRjb2xvci1ncmV5LWJvZHk7XHJcblx0XHRcdFx0PiBoMiwgPiBoMyB7XHJcblx0XHRcdFx0XHRjb2xvcjokY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5pcy1hY3RpdmUge1xyXG5cdFx0XHQuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdCY6YmVmb3JlIHtcclxuXHQgICAgICAgICAgICAgICAgY29sb3I6JGNvbG9yLWdyZXktYm9keTtcclxuXHQgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCh0cmFuc2Zvcm0sIHJvdGF0ZSgxODBkZWcpKTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0PiBoMiwgPiBoMyB7XHJcblx0XHRcdFx0XHRjb2xvcjokY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0XHJcblx0XHQuYWNjb3JkaW9uLWNvbnRlbnQge1xyXG5cdFx0XHRcclxuXHRcdFx0Lmxpc3QtY29sdW1ucyB7XHJcblx0XHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdFx0XHQ+IGxpIHtcclxuXHRcdFx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xyXG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xyXG5cdFx0XHRcdFx0cGFkZGluZzogMTBweCAwO1xyXG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0XHRcdFx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdFx0XHR3aWR0aDogNDkuNTU1NSU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAzMi4yMjIyJTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAzMi4yMjIyJTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5hY2NvcmRpb24tY29udGVudCB7IFxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRmb250LXNpemU6IDEuMGVtO1x0XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdGZvbnQtc2l6ZTogMS4wZW07XHJcblx0XHR9XHJcblxyXG5cdFx0bGkge1xyXG5cdFx0XHRmb250LXNpemU6IDEuMGVtO1x0XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuXHQuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcclxuXHRcdD4gaDIsID4gaDMge1x0XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMjUpO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50ICh4eGxhcmdlKSB7XHJcblx0LmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XHJcblx0XHQ+IGgyLCA+IGgzIHtcdFxyXG5cdFx0XHRmb250LXNpemU6IGVtKDI2KTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcblxyXG5cclxuIiwiLm5ld3MtbWVkaWEge1xyXG4gICAgLnBhbmVsIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7XHJcbiAgICAgICAgJi50ZXh0LW9ubHksXHJcbiAgICAgICAgJi50d2l0dGVyIHtcclxuICAgICAgICAgICAgPiBhOmhvdmVyLFxyXG4gICAgICAgICAgICBhOmZvY3VzIHtcclxuICAgICAgICAgICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICA+IGgyLFxyXG4gICAgICAgICAgICA+IGgzIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBCb2xkXCI7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC0uMDUpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgPiBpbWcge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvcHkge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XHJcbiAgICAgICAgICAgICAgICAvL3BhZGRpbmc6MTBweCAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLnRvcC1sZXZlbCB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAvL2JhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgICAgID4gaDIsXHJcbiAgICAgICAgICAgID4gaDMge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICNmZmY7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnBhbmVsLnR3aXR0ZXIge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50d2l0dGVyLXBhbmVsIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgLy90b3A6MTAwcHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAuZGF0ZS10aW1lIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHdpZGdldC10aXRsZSgpO1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdTdG9semwgVzAwIE1lZGl1bSc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTUpO1xyXG4gICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAubmV3cy1tZWRpYSB7XHJcbiAgICAgICAgLmxhcmdlLWV4cGFuZCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZmxleDogMSAxIDUwJTtcclxuICAgICAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhbmVsIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwOyAvLzIwcHg7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgPiBoMixcclxuICAgICAgICAgICAgICAgID4gaDMge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudG9wLWxldmVsIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICYudHdpdHRlciB7XHJcbiAgICAgICAgICAgIFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAudHdpdHRlci1wYW5lbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY29weSB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAycHggJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAubmV3cy1tZWRpYSB7XHJcbiAgICAgICAgLmxhcmdlLWV4cGFuZCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgZmxleDogMSAxIDMzLjMzMzMlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAucGFuZWwge1xyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTMwcHg7XHJcbiAgICAgICAgICAgICAgICA+IGgyLFxyXG4gICAgICAgICAgICAgICAgPiBoMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAubmV3cy1tZWRpYSB7XHJcbiAgICAgICAgLnBhbmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNzVweDtcclxuICAgICAgICAgICAgJi50ZXh0LW9ubHksXHJcbiAgICAgICAgICAgICYudHdpdHRlciB7XHJcbiAgICAgICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vMzcuNyU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYudHdpdHRlciB7XHJcbiAgICAgICAgICAgICAgICAudHdpdHRlci1wYW5lbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgLm5ld3MtbWVkaWEge1xyXG4gICAgICAgIC5wYW5lbCB7XHJcbiAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxNjBweDtcclxuICAgICAgICAgICAgICAgID4gaDIsXHJcbiAgICAgICAgICAgICAgICA+IGgzIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDI1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAucGFuZWwge1xyXG4gICAgICAgICAgICAmLnRleHQtb25seSxcclxuICAgICAgICAgICAgJi50d2l0dGVyIHtcclxuICAgICAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLnR3aXR0ZXIgLnR3aXR0ZXItcGFuZWwgcCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTVweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE2KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgLm5ld3MtbWVkaWEge1xyXG4gICAgICAgIC5wYW5lbCB7XHJcbiAgICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxOTBweDtcclxuICAgICAgICAgICAgICAgID4gaDIsXHJcbiAgICAgICAgICAgICAgICA+IGgzIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDI4KTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI5cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjlweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIFxyXG4gICAgICAgICAgICAmLnR3aXR0ZXIgLnR3aXR0ZXItcGFuZWwgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE3KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDplbSg0ODApKSB7XHJcbiAgICAubGFyZ2UtZXhwYW5kIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAucGFuZWwgPiBhIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSg3NjgpKSBhbmQgKG1heC13aWR0aDplbSgxMDIzKSkge1xyXG4gICAgLm5ld3MtbWVkaWEgLnBhbmVsLnR3aXR0ZXIgLnRpdGxlIHtcclxuICAgICAgICA+IHAge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDplbSgxMDI0KSkgYW5kIChtYXgtd2lkdGg6ZW0oMTI3OSkpIHtcclxuICAgIC5uZXdzLW1lZGlhIHtcclxuICAgIFx0LnBhbmVsLnR3aXR0ZXIge1xyXG4gICAgXHRcdC50aXRsZSB7XHJcblx0XHQgICAgXHQvL21pbi1oZWlnaHQ6IGF1dG87XHJcblx0XHQgICAgXHQ+IGgyIHsgICAgXHRcdFxyXG5cdFx0ICAgIFx0XHQvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdCAgICBcdFx0Ym90dG9tOmF1dG87XHJcblx0XHQgICAgXHR9XHJcblx0XHQgICAgfVxyXG5cdFx0ICAgIC50d2l0dGVyLXBhbmVsIHtcclxuXHRcdCAgICAgICAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHQgICAgICAgIFx0dG9wOjgwcHg7XHJcblx0XHQgICAgICAgID4gcCB7XHJcblx0XHQgICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuXHRcdCAgICAgICAgfVxyXG5cdFx0ICAgIH1cclxuXHQgICAgXHQuaW1hZ2Uge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdCAgICBcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIucXVvdGUtaW50cm8sXHJcbi5xdW90ZS1pbnRybyA+IHAge1xyXG4gICAgZm9udC1mYW1pbHk6ICdIZXVyaXN0aWNhJztcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICBmb250LXNpemU6IGVtKDE4KTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcbn1cclxuXHJcbi5xdW90ZS1pbnRybyB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgICA+IHAge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDk4MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHNwYW46Zmlyc3Qtb2YtdHlwZSxcclxuICAgICAgICA+IHNwYW46bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgPiBzcGFuOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjglLCAxNCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgICA+IHNwYW46bGFzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5NDtcclxuICAgICAgICB9XHJcbiAgICB9IFxyXG5cclxuICAgID4gYiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1heC13aWR0aDogOTgwcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICA+IGI6YmVmb3JlIHsgXHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA3NXB4O1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSg1NXB4KTtcclxuICAgICAgICBmb250LWZhbWlseTogXCJTdG9semwgVzAwIEJvbGRcIjtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNSUsIDIwJSk7XHJcbiAgICAgICAgY29udGVudDogXCJcXDIwMUNcIjtcclxuICAgICAgICBcclxuICAgIH1cclxuICAgID4gYjphZnRlciB7IFxyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICBjb2xvcjogJGNvbG9yLWdyZXk0O1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXFwyMDFEXCI7XHJcbiAgICB9XHJcbiAgICA+IGNpdGUge1xyXG4gICAgICAgIEBpbmNsdWRlIHdpZGdldC10aXRsZSgxMyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsbWVkaXVtKSB7XHJcbiAgICAucXVvdGUtaW50cm8ge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgLnF1b3RlLWludHJvIHtcclxuICAgICAgICBmb250LXNpemU6IGVtKDIxKTtcclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIC5xdW90ZS1pbnRybyB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICBmb250LXNpemU6IGVtKDIyLjUpO1xyXG4gICAgICAgID4gY2l0ZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xyXG4gICAgLnF1b3RlLWludHJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMzApO1xyXG4gICAgICAgID4gcCA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNzVweDtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMzAlLCAxNCUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG4gICAgLnF1b3RlLWludHJvIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogZW0oMzApO1xyXG4gICAgICAgID4gcCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XHJcbiAgICAgICAgICAgID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTEwcHg7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgzMiUsIDE4JSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiBjaXRlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCIvLyBVc2UgZm9yIGFsbCBkYXRlIGxpc3QgcGFnZXNcclxuLmRhdGUtZ3JvdXAge1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICBwYWRkaW5nOiA3cHggMCAzMHB4IDA7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNCk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuXHJcbiAgICB1bCB7XHJcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcblxyXG4gICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xyXG5cclxuICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyAvL2lubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxNSU7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5MztcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgICAgICAgICAgICAgIC8vZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgICAgICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTM7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgPiBzbWFsbCxcclxuICAgICAgICAgICAgICAgID4gc3BhbiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5NDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIC5kYXRlLWdyb3VwIHtcclxuICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgLmV2ZW50LXRleHQge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gc3BhbjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgLmRhdGUtZ3JvdXAge1xyXG4gICAgXHRoMyB7XHJcbiAgICBcdFx0bWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIFx0fVxyXG4gICAgXHR1bCB7XHJcblx0ICAgICAgICA+IGxpIHtcclxuXHQgICAgICAgICAgICA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgICAgICAgICAgfVxyXG5cdCAgICAgICAgfVxyXG5cdCAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAuZGF0ZS1ncm91cCB7XHJcbiAgICBcdGgzIHtcclxuICAgIFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgXHR9XHJcbiAgICBcdHVsIHtcclxuXHQgICAgICAgID4gbGkge1xyXG5cdCAgICAgICAgXHRmb250LXNpemU6IGVtKDIwKTtcclxuXHQgICAgICAgICAgICA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0ICAgICAgICAgICAgfVxyXG5cdCAgICAgICAgfVxyXG5cdCAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gRm9yIGV4YW1wbGUgb2YgdXNlIHNlZSBPdXIgQnVzaW5lc3MgcGFnZSBvciAgXHJcbi5yb3ctaW50cm8ge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHh4bGFyZ2UpIHtcclxuICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICBwIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgICBwYWRkaW5nOiAwIDQwcHg7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufSIsIi8vIEZlYXR1cmUgcG9kcyBzZWUgcmVwb3J0cyBwYWdlXHJcbi5mZWF0dXJlLXBvZHMge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRtYXJnaW46IDYwcHggMDsvLzIwcHg7XHJcblx0Ym9yZGVyLXRvcDoxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG5cclxuXHQ+IGgyLCA+IGgzIHtcdFx0XHJcblx0XHRAaW5jbHVkZSB3aWRnZXQtdGl0bGUoKTtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0bWFyZ2luOiAwO1xyXG5cdFx0cGFkZGluZzoyMHB4IDA7XHJcblx0fVxyXG5cclxuXHQ+IGgyIHsgXHJcblx0XHRmb250LWZhbWlseTogXCJTdG9semwgVzAwIExpZ2h0XCI7XHJcbiAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHR9XHJcblx0XHJcblx0PiAucm93IHtcclxuXHRcdG1heC13aWR0aDpub25lO1xyXG5cdH1cclxuXHQucGFuZWwgPiBhOmZpcnN0LWNoaWxkIHtcclxuXHRcdG1hcmdpbi10b3A6IDA7XHJcblx0fVxyXG59XHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0LmZlYXR1cmUtcG9kcyB7XHJcblx0XHRtYXJnaW46IDYwcHggMCAwO1xyXG5cdH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0LmZlYXR1cmUtcG9kcyB7XHJcblx0XHRtYXJnaW46IDYwcHggZW0oMTAwKSAwO1xyXG5cdH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG5cdC5mZWF0dXJlLXBvZHMge1xyXG5cdFx0Ly9tYXgtd2lkdGg6IDUwJTtcclxuXHRcdG1hcmdpbjogOTBweCBhdXRvIDA7XHJcblx0fVxyXG59IiwiLy8gVXNlIGZvciBhbGwgZGF0ZSBsaXN0IHBhZ2VzXHJcbi5rZXktZGF0ZXMge1xyXG5cclxuICAgIC5kYXRlLWdyb3VwIHsgXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMDtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JleTY7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYS5zZXQtaWNzIHsgXHJcbiAgICAgICAgXHJcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICBmb250LXNpemU6IGVtKDEyKTtcclxuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LXN0cm9rZTtcclxuICAgICAgICBmbG9hdDogbm9uZTtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JlZW4tYW5jO1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfSBcclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIH0gXHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgIC5kYXRlLWdyb3VwIHtcclxuICAgICAgICAgICAgYS5zZXQtaWNzIHsgXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDEwKTtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAgIC5kYXRlLWdyb3VwIHtcclxuICAgICAgICAgICAgYS5zZXQtaWNzIHsgXHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDEwKTtcclxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XHJcbiAgICAgICAgLmRhdGUtZ3JvdXAge1xyXG4gICAgICAgICAgICBhLnNldC1pY3MgeyBcclxuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn0gLy9lbmQ6IGtleS1kYXRlc1xyXG5cclxuXHJcbiIsIi5zdWJzY3JpYmUgeyBcclxuXHJcblx0LmludHJvIHtcclxuXHRcdHBhZGRpbmctdG9wOiAzNXB4OyBcclxuXHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkgeyBcclxuXHRcdFx0cGFkZGluZy10b3A6IDA7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRpbnB1dCB7IFxyXG5cdFx0Zm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG5cdFx0b3V0bGluZTogMDtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JleTY7IFxyXG5cdFx0cGFkZGluZzogMDtcclxuXHRcdG1hcmdpbjogMDtcclxuXHJcblx0XHQmOmhvdmVyLCBcclxuXHRcdCY6Zm9jdXMge1xyXG5cdFx0XHRvdXRsaW5lOiAwO1xyXG5cdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0aW5wdXRbdHlwZT0ndGV4dCddLCBpbnB1dFt0eXBlPSdlbWFpbCddIHtcclxuXHRcdHBhZGRpbmc6IDMwcHggMjBweDtcclxuXHR9IFxyXG5cclxuXHRpbnB1dDppbnZhbGlkIHtcclxuXHRcdGNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3Itb3JhbmdlO1xyXG5cdH1cclxuXHJcblx0aW5wdXQ6Zm9jdXM6aW52YWxpZCB7XHJcblx0XHRjb2xvcjogJGNvbG9yLWdyZXk0O1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcblx0fVxyXG5cclxuXHRpbnB1dDpub3QoOmZvY3VzKTppbnZhbGlkIHtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleTQ7XHJcblx0XHRib3JkZXItY29sb3I6ICRjb2xvci1ncmV5NDtcclxuXHR9IFxyXG5cclxuXHQuYnRuLXN1Ym1pdCB7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHR9XHJcblx0fVxyXG5cdFxyXG5cdC8qIHN1cGVyIHNwZWNpZmljIG1lZGlhIHF1ZXJ5IHRvIGFkZCBwYWRkaW5nIHRvIGNvbnRlbnQgY29sdW1uIGluIGxhbmRzY2FwZSBtb2RlICovXHJcblx0QG1lZGlhIGFsbCBhbmQgKG1pbi13aWR0aDogZW0oMTAyNHB4KSkgYW5kIChtYXgtd2lkdGg6IGVtKDEyNzlweCkpIHtcclxuXHRcdC5sYXJnZS1jb2xsYXBzZSAuY29sdW1ucyB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogMy4xMjVyZW07XHJcblx0XHRcdHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtO1x0XHJcblx0XHR9XHJcblx0fVxyXG5cclxufSAvLyBlbmQ6IC5zdWJzY3JpYmUiLCIuY29udGVudC1wYWdlLmludmVzdG9yLXNlY3Rpb24ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmctdG9wOiAzNXB4O1xyXG5cdHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG5cdFxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7IFxyXG5cdFx0cGFkZGluZy10b3A6IDA7XHJcblx0fVx0XHJcblx0XHJcblx0c3VwLCBzdWIge1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxMik7XHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGNvbnRlbnQ6IFwiIFwiO1xyXG5cdFx0fVxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQ6IFwiIFwiO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LnJpZ2h0IHtcclxuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xyXG5cdH1cclxuXHJcblx0Lm5vdGVzIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0cGFkZGluZy10b3A6IDMwcHg7XHJcblx0XHQ+IHAge1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDE0KSAhaW1wb3J0YW50OyBcclxuXHRcdFx0bWFyZ2luOiA3cHg7XHJcblx0XHR9XHJcblxyXG5cdFx0YSB7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmV5LWJvZHk7XHJcblxyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmVlbi1hbmM7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qIHN1cGVyIHNwZWNpZmljIG1lZGlhIHF1ZXJ5IHRvIGFkZCBwYWRkaW5nIHRvIGNvbnRlbnQgY29sdW1uIGluIGxhbmRzY2FwZSBtb2RlICovXHJcbiAgICBAbWVkaWEgYWxsIGFuZCAobWluLXdpZHRoOiBlbSgxMDI0cHgpKSBhbmQgKG1heC13aWR0aDogZW0oMTI3OXB4KSkge1xyXG4gICAgICAgIC5sYXJnZS1jb2xsYXBzZSAuY29sdW1ucyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMy4xMjVyZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyAgICBcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5yZWxhdGVkLWNvbnRlbnQge1xyXG4gICAgICAgIFx0cGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIFx0cGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblx0XHJcblx0Lnd5c2l3eWd7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50ICh4eHhsYXJnZSkge1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDE2KTtcclxuXHRcdH1cclxuXHQgfVxyXG59IC8vZW5kOiBkaXZpZGVuZCIsIi50aW1lbGluZS1wYW5lbCB7XHJcblx0XHRiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy9iZy10b3AtbGVmdC5wbmcnKSBsZWZ0IHRvcCBuby1yZXBlYXQsICB1cmwoJy4uL2ltZy9iZy1idG0tcmlnaHQtMDEuc3ZnJykgYm90dG9tIHJpZ2h0IG5vLXJlcGVhdDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcblx0ICAgIGNvbG9yOiAkY29sb3ItZ3JleTY7XHJcblx0ICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4jd2VzVGltZWxpbmUge1x0XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luOjAgYXV0bztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cdC50aW1lbGluZSB7XHJcblxyXG5cdH1cclxuXHQvL3llYXIgYmxvY2tcclxuXHQueWVhciB7XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRwYWRkaW5nLXRvcDogMTQwcHg7XHJcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcblx0XHRcdG1hcmdpbjogMCAtMzBweDtcclxuXHRcdH1cclxuXHRcdC5taWRsaW5lIHsgXHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0d2lkdGg6IDZweDtcclxuXHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRsZWZ0OjUwJTtcclxuXHRcdFx0dG9wOjA7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci10aW1lbGluZS1zdHJva2U7XHJcblx0XHRcdG1hcmdpbi1sZWZ0OiAtM3B4O1xyXG5cdFx0XHR6LWluZGV4OiAwO1xyXG5cdFx0fVxyXG5cdFx0LnlsYWJlbCB7XHJcblx0XHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgyMyk7XHJcblx0XHRcdGNvbG9yOiAjZmZmO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogMTIwcHg7XHJcblx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ncmVlbi1mb290ZXItaG92ZXI7XHJcblx0XHRcdHdpZHRoOiAxMjBweDtcclxuXHRcdFx0aGVpZ2h0OiBhdXRvO1xyXG5cdFx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDgwJTtcclxuXHRcdFx0LW1vei1ib3JkZXItcmFkaXVzOiA4MCU7XHJcblx0XHRcdGJvcmRlci1yYWRpdXM6IDgwJTtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDA7XHJcblx0XHRcdGxlZnQ6IGNhbGMoNTAlIC0gNjBweCk7XHJcblx0XHRcdHotaW5kZXg6IDU7XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0Zm9udC1zaXplOiBlbSgyMCk7XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5maXhlZCB7XHJcblx0XHRcdFx0cG9zaXRpb246IGZpeGVkO1xyXG5cdFx0XHRcdHRvcDogMDtcclxuXHRcdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdFx0XHRcdHotaW5kZXg6IDU7XHRcdFx0XHRcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0LmRheSB7XHJcblx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdFx0d2lkdGg6IDUwJTtcclxuXHRcdFx0XHRmbG9hdDogbGVmdDtcclxuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHRcdFx0XHR3aWR0aDogMjUlO1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDUwcHg7XHJcblx0XHRcdH1cclxuXHRcdFx0LndyYXBwZXIge1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMCAzMHB4O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0JjpiZWZvcmUge1xyXG5cdFx0XHRcdFx0LW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xyXG5cdFx0XHRcdFx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xyXG5cdFx0XHRcdFx0LW1vei1vcGFjaXR5OiAwO1xyXG5cdFx0XHRcdFx0LWtodG1sLW9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHQtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcclxuXHRcdFx0XHRcdC1tcy10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHQtby10cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5pbWFnZSB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdFx0XHRcdGltZyB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCYudmlkZW8ge1xyXG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0Ym90dG9tOiAxMHB4O1xyXG5cdFx0XHRcdFx0XHRcdHJpZ2h0OiAxMHB4O1xyXG5cdFx0XHRcdFx0XHRcdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vaW1nL2ljb25zL2ljb24tcGxheS5wbmcnKW5vLXJlcGVhdCAwIDA7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDQzcHg7XHJcblx0XHRcdFx0XHRcdFx0aGVpZ2h0OiA0MnB4O1xyXG5cdFx0XHRcdFx0XHRcdHotaW5kZXg6IDI7XHJcblx0XHRcdFx0XHRcdH1cdFxyXG5cdFx0XHRcdFx0fVx0XHRcdFx0XHJcblx0XHRcdFx0fVxyXG5cdFx0XHRcdC5jb3B5IHtcclxuXHRcdFx0XHRcdHBhZGRpbmc6IDE1cHggMTVweCAzMHB4IDE1cHg7XHJcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0XHQudGFnLCAuZGF0ZSB7XHJcblx0XHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0XHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxMSk7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1zdHJva2U7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQuZGF0ZSB7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0Ym90dG9tOiAxNXB4O1xyXG5cdFx0XHRcdFx0XHRsZWZ0OiAxNXB4O1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0aDIge1xyXG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAxNXB4IDAgMTBweCAwO1xyXG5cdFx0XHRcdFx0XHRtYXJnaW46IDA7XHJcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IGVtKDE4KTtcclxuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6IFwiSGV1cmlzdGljYVwiO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLm5vLWltYWdlIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICNmZmYgdXJsKCcuLi9pbWcvaWNvbnMvaWNvbi1oaXN0b3J5LWJnLnBuZycpbm8tcmVwZWF0IHJpZ2h0IGJvdHRvbTtcclxuXHRcdFx0XHRcdC5jb3B5IHtcclxuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRoMiB7XHJcblx0XHRcdFx0XHRcdFx0bWF4LXdpZHRoOiA2MCU7XHJcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogNjBweCAwO1xyXG5cdFx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdC53cmFwcGVyIHtcclxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0ei1pbmRleDogMztcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLWdyZXktYm9keTtcclxuXHRcdFx0XHRcdFx0LW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0zMylcIjtcclxuXHRcdFx0XHRcdFx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTMzKTtcclxuXHRcdFx0XHRcdFx0LW1vei1vcGFjaXR5OiAuMzM7XHJcblx0XHRcdFx0XHRcdC1raHRtbC1vcGFjaXR5OiAuMzM7XHJcblx0XHRcdFx0XHRcdG9wYWNpdHk6IC4zMztcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0JjphZnRlciB7XHJcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0XHRcdFx0Ym90dG9tOiAxNXB4O1xyXG5cdFx0XHRcdFx0XHRyaWdodDogMTVweDtcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcuLi9pbWcvaWNvbnMvaWNvbi1oaXN0b3J5LWFycm93LnBuZycpbm8tcmVwZWF0IDAgMDtcclxuXHRcdFx0XHRcdFx0d2lkdGg6IDE2cHg7XHJcblx0XHRcdFx0XHRcdGhlaWdodDogMzFweDtcclxuXHRcdFx0XHRcdFx0ei1pbmRleDogNDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5jZW50ZXItbGVmdCB7XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI1JTtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdFx0Ji5jZW50ZXItcmlnaHQge1xyXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiA1MCU7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmOmxhc3Qtb2YtdHlwZSB7XHJcblx0XHRcdG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblx0XHRcdC5taWRsaW5lIHtcclxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0XHQmLnNob3ctYWxsIHtcclxuXHRcdFx0LmRheSB7XHJcblx0XHRcdFx0Ji5jZW50ZXItbGVmdCB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQmLmNlbnRlci1yaWdodCB7XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4udGltZWxpbmUtZmlsdGVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMTVweCAwO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk4MHB4KSB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5ODBweCkge1xyXG5cdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdH1cclxuXHQvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdC8vIFx0cGFkZGluZzogNTBweCAwO1xyXG5cdC8vIFx0ZGlzcGxheTogYmxvY2s7XHJcblx0Ly8gfVxyXG5cdHNwYW4ge1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuXHRcdGZvbnQtc2l6ZTogZW0oMTMpO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogOHB4O1xyXG5cdFx0fVx0XHRcdFxyXG5cdH1cclxuXHRhIHtcclxuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHRmb250LWZhbWlseTpcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcblx0XHRmb250LXNpemU6IGVtKDEzKTtcclxuXHRcdGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG5cdFx0Y29sb3I6ICRjb2xvci10aW1lbGluZS1maWx0ZXItZm9udDtcclxuXHRcdHBhZGRpbmc6IDAgMTVweDtcclxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRcdG1hcmdpbjogMCAwIDAgNnB4O1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLXRpbWVsaW5lLWZpbHRlcjtcclxuXHRcdCYuYWN0aXZlLCAmOmhvdmVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLXRpbWVsaW5lLWZpbHRlci1vbjtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci10aW1lbGluZS1maWx0ZXItb24tZm9udDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuLm1ibC10aW1lbGluZS1maWx0ZXIge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxNXB4IDA7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHJcblx0QG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdH1cclxuXHRAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5ODBweCkge1xyXG5cdFx0cGFkZGluZzogNTBweCAwO1xyXG5cdFx0ZGlzcGxheTogbm9uZTtcclxuXHR9XHJcblx0c3BhbiB7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0Zm9udC1mYW1pbHk6XCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxMyk7XHJcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRtYXJnaW46IDAgMCAxMHB4IDA7XHRcdFxyXG5cdH1cclxuXHRzZWxlY3Qge1xyXG5cdCAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0ICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMDtcclxuXHQgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xyXG5cdCAgICBib3JkZXItcmFkaXVzOiAwO1xyXG5cdCAgICBib3JkZXI6IDA7XHJcblx0ICAgIHBhZGRpbmc6IDhweCAzMHB4IDEwcHggMTBweDtcclxuXHQgICAgbWFyZ2luOiAwO1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdGZvbnQtZmFtaWx5OlwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuXHRcdGNvbG9yOiAjMWQxZDFkO1xyXG5cdCAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7ICAgICAgICAgICAgLypSZW1vdmVzIGRlZmF1bHQgY2hyb21lIGFuZCBzYWZhcmkgc3R5bGUqL1xyXG5cdCAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7ICAgICAgICAgICAgIC8qIFJlbW92ZXMgRGVmYXVsdCBGaXJlZm94IHN0eWxlKi9cclxuXHQgICAgYmFja2dyb3VuZDogJGNvbG9yLXRpbWVsaW5lLWZpbHRlci1vbiB1cmwoLi4vaW1nL2ljb25zL2ljb24tZGQtYXJyb3cucG5nKSBuby1yZXBlYXQ7ICAgICAgICAgIC8qQWRkcyBiYWNrZ3JvdW5kLWltYWdlKi9cclxuXHQgICAgYmFja2dyb3VuZC1zaXplOiAxM3B4IDhweDtcclxuXHQgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTZweCB0b3AgMTZweDsgICAgICAgICAgIC8qUG9zaXRpb24gb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UqL1xyXG5cdCAgICB0ZXh0LWluZGVudDogMC4wMXB4OyAgICAgICAgICAvKiBSZW1vdmVzIGRlZmF1bHQgYXJyb3cgZnJvbSBmaXJlZm94Ki9cclxuXHQgICAgdGV4dC1vdmVyZmxvdzogXCJcIjsgICAgICAgICAgICAgICAvKlJlbW92ZXMgZGVmYXVsdCBhcnJvdyBmcm9tIGZpcmVmb3gqL1xyXG5cdCAgICBoZWlnaHQ6IDQwcHg7XHJcblx0ICAgIG1pbi13aWR0aDogMDtcclxuXHRcdG1heC13aWR0aDogMzIwcHg7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1hcmdpbjogMCBhdXRvO1xyXG5cdCAgICBmb250LXNpemU6IGVtKDE2KTtcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQpO1xyXG5cdFx0fVx0ICAgIFxyXG5cdCAgICAmOmZvY3VzIHtcclxuXHRcdFx0b3V0bGluZTogMDtcclxuXHQgICAgfVxyXG5cdH1cclxuXHRzZWxlY3Q6Oi1tcy1leHBhbmQgeyAvKmllMTEgZ2V0IHJpZCBvZiBkZWZhdWx0IGRkIGFycm93Ki9cclxuXHQgICAgZGlzcGxheTogbm9uZTtcclxuXHR9XHJcbn1cclxuLnRpbWVsaW5lLWludHJvIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdG1heC13aWR0aDogNzUlO1xyXG5cdH1cdFxyXG5cdHAge1xyXG5cdFx0Zm9udC1zaXplOiBlbSgxNyk7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRmb250LXNpemU6IGVtKDI0KTtcclxuXHRcdH1cclxuXHR9XHJcbn0iLCIubWVkaWEtZ2FsbGVyeSB7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0cGFkZGluZy1ib3R0b206IDMwcHg7XHJcblx0d2lkdGg6IDkwJTtcclxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcbi5nYWxsZXJ5LXdyYXBwZXIge1xyXG5cdGJvcmRlci10b3A6IHNvbGlkIDFweCAkY29sb3ItZ3JleS1zdHJva2U7XHJcblx0cGFkZGluZy10b3A6IDE1cHg7XHJcblx0d2lkdGg6IGF1dG87XHJcblxyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRtYXJnaW46IDAgMTVweDtcclxuXHRcdHBhZGRpbmctdG9wOiAzMHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7IFxyXG5cdFx0bWFyZ2luOiAwIGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDEwMjRweDtcclxuXHR9XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHsgXHJcblx0XHRtYXJnaW46IDAgYXV0bztcclxuXHRcdG1heC13aWR0aDogMTQ1MHB4O1xyXG5cdH1cclxuXHRoMiwgaDMge1xyXG5cdFx0cGFkZGluZy1sZWZ0OiAwO1xyXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRoMiB7XHJcblx0XHQmICsgaDMge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogMTVweDtcclxuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nLXRvcDogMzBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQubWctZ3JpZCB7XHJcblx0ICAgIEBleHRlbmQgJXVsO1xyXG5cdCAgICBtYXJnaW46IDAgLTVweCAyMHB4IC01cHg7XHJcblx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdG1hcmdpbjogMCAwIDYwcHggMDtcclxuXHRcdH1cclxuXHQgICAgbGkge1xyXG4gICAgXHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcblx0XHRcdHdpZHRoOiA1MCU7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHQmOm50aC1jaGlsZCgybisxKSB7XHJcblx0XHRcdFx0Y2xlYXI6IGxlZnQ7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG5cdFx0XHRcdHdpZHRoOiAyMCU7XHJcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRcdCY6bnRoLWNoaWxkKDJuKzEpIHtcclxuXHRcdFx0XHRjbGVhcjogbm9uZTtcclxuXHRcdFx0fVxyXG5cdFx0XHRcdCY6bnRoLWNoaWxkKDVuKzEpIHtcclxuXHRcdFx0XHRcdGNsZWFyOiBsZWZ0O1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHQ+IGEge1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdHBhZGRpbmc6IDA7XHJcblx0XHRcdFx0bWFyZ2luOiAxNXB4IDVweCAwIDVweDtcclxuXHRcdFx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRcdFx0b3V0bGluZTogbm9uZTtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRcdG1hcmdpbjogMzBweCAxNXB4IDAgMTVweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdFx0LmltYWdlIHtcclxuXHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRcdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0XHR0b3A6IDA7XHJcblx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0ei1pbmRleDogMztcclxuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJGNvbG9yLWdyZXktYm9keTtcclxuXHRcdFx0XHRcdFx0LW1zLWZpbHRlcjogXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQWxwaGEoT3BhY2l0eT0wKVwiO1xyXG5cdFx0XHRcdFx0XHRmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XHJcblx0XHRcdFx0XHRcdC1tb3otb3BhY2l0eTogMDtcclxuXHRcdFx0XHRcdFx0LWtodG1sLW9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XHJcblx0XHRcdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdFx0XHRcdFx0XHQtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcclxuXHRcdFx0XHRcdFx0LW1zLXRyYW5zaXRpb246IG9wYWNpdHkgLjE1cyBlYXNlLWluLW91dDtcclxuXHRcdFx0XHRcdFx0LW8tdHJhbnNpdGlvbjogb3BhY2l0eSAuMTVzIGVhc2UtaW4tb3V0O1xyXG5cdFx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4xNXMgZWFzZS1pbi1vdXQ7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0XHQ+IGltZyB7XHJcblx0XHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdCYudmlkZW8ge1xyXG5cdFx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdFx0XHRcdFx0dG9wOiAwO1xyXG5cdFx0XHRcdFx0XHRcdGJvdHRvbTogMDtcclxuXHRcdFx0XHRcdFx0XHR6LWluZGV4OiAzO1xyXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiA1NnB4O1xyXG5cdFx0XHRcdFx0XHRcdGhlaWdodDogNTZweDtcclxuXHRcdFx0XHRcdFx0XHR0b3A6IGNhbGMoNTAlIC0gMjhweCk7XHJcblx0XHRcdFx0XHRcdFx0bGVmdDogY2FsYyg1MCUgLSAyOHB4KTtcclxuXHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLXZpZC1wbGF5LnBuZycpbm8tcmVwZWF0IDAgMDtcclxuXHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0XHQudGFnIHtcclxuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdFx0XHRmb250LWZhbWlseTogJ1N0b2x6bCBXMDAgQm9vaycsIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG5cdFx0XHRcdFx0Zm9udC1zaXplOiBlbSgxMik7XHJcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0XHRcdFx0XHRwYWRkaW5nOiA1cHggMCAwIDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblx0XHRcdCYub2ctZXhwYW5kZWQge1xyXG5cdFx0XHRcdD4gYSB7XHJcblx0XHRcdFx0XHQmOmFmdGVyIHtcclxuXHRcdFx0XHRcdHRvcDogYXV0bztcclxuXHRcdFx0XHRcdGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0XHRcdFx0XHRjb250ZW50OiBcIiBcIjtcclxuXHRcdFx0XHRcdGhlaWdodDogMDtcclxuXHRcdFx0XHRcdHdpZHRoOiAwO1xyXG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHRcdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0XHRcdFx0XHRib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXdpZHRoOiAxMnB4O1xyXG5cdFx0XHRcdFx0bGVmdDogNTAlO1xyXG5cdFx0XHRcdFx0bWFyZ2luOiAtMTJweCAwIDAgLTEycHg7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVx0XHRcdFx0XHJcblx0XHRcdH1cclxuXHRcdFx0Jjpob3ZlciB7XHJcblx0XHRcdFx0PiBhIHtcclxuXHRcdFx0XHRcdC5pbWFnZSB7XHJcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcclxuXHRcdFx0XHRcdFx0XHQtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTMzKVwiO1xyXG5cdFx0XHRcdFx0XHRcdGZpbHRlcjogYWxwaGEob3BhY2l0eT0zMyk7XHJcblx0XHRcdFx0XHRcdFx0LW1vei1vcGFjaXR5OiAuMzM7XHJcblx0XHRcdFx0XHRcdFx0LWtodG1sLW9wYWNpdHk6IC4zMztcclxuXHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAuMzM7XHJcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdFx0PiBpbWcge1xyXG5cdFx0XHRcdFx0XHRcdHRyYW5zZm9ybTpzY2FsZSgxLjEpO1xyXG5cdFx0XHRcdFx0XHR9XHRcdFx0XHRcdFxyXG5cdFx0XHRcdFx0fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdCAgICB9XHRcdFxyXG5cdH1cclxufVxyXG5cclxuLm9nLWV4cGFuZGVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0YmFja2dyb3VuZDogJGNvbG9yLWdyZXktYm9keTtcclxuXHR0b3A6IGF1dG87XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW4tdG9wOiAxMHB4O1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5vZy1leHBhbmRlci1pbm5lciB7XHJcblx0cGFkZGluZzogNTBweCAyMHB4IDIwcHggMjBweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdHBhZGRpbmc6IDUwcHggMzBweDtcclxuXHR9XHJcbn1cclxuXHJcbi5vZy1jbG9zZSB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHdpZHRoOiAyNXB4O1xyXG5cdGhlaWdodDogMjVweDtcclxuXHR0b3A6IDE1cHg7XHJcblx0cmlnaHQ6IDE1cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHR3aWR0aDogNDBweDtcclxuXHRcdGhlaWdodDogNDBweDtcclxuXHRcdHRvcDogMjBweDtcclxuXHRcdHJpZ2h0OiAyMHB4O1xyXG5cdH1cclxuXHQmOmJlZm9yZSwgJjphZnRlciB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdHRvcDogNTAlO1xyXG5cdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRiYWNrZ3JvdW5kOiAjODg4O1xyXG5cdFx0LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcblx0XHQtbW96LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDE1MG1zIGVhc2UtaW4tb3V0KTtcclxuXHR9XHJcblx0JjphZnRlciB7XHJcblx0XHQtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0XHQtbW96LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xyXG5cdH1cclxuXHQmOmhvdmVyIHtcclxuXHRcdCY6YmVmb3JlLCAmOmFmdGVyIHtcclxuXHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5vZy1mdWxsaW1nLFxyXG4ub2ctZGV0YWlscyB7XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdHdpZHRoOiA1MCU7XHJcblx0XHRmbG9hdDogbGVmdDtcclxuXHRcdGhlaWdodDogMTAwJTtcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0fVxyXG59XHJcblxyXG4ub2ctZGV0YWlscyB7XHJcblx0cGFkZGluZzogMDtcclxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0cGFkZGluZzogMCA0MHB4O1xyXG5cdH1cclxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcblx0XHRwYWRkaW5nOiAwIDgwcHg7XHJcblx0fVxyXG59XHJcblxyXG4ub2ctZnVsbGltZyB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGltZyB7XHJcblx0XHRAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdFx0XHRtYXgtd2lkdGg6IDc1JTtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHRcdFx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdFx0XHJcblx0fVxyXG59XHJcbi5vZy1kZXRhaWxzIHtcclxuXHRAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHRoMyB7XHJcblx0XHRmb250LXdlaWdodDogNDAwO1xyXG5cdFx0Zm9udC1zaXplOiBlbSgzMCwgMTgpO1xyXG5cdFx0Zm9udC1mYW1pbHk6IEhldXJpc3RpY2E7XHJcblx0XHRwYWRkaW5nOiAyMHB4IDAgMTBweDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRcdHBhZGRpbmc6IDQwcHggMCAxMHB4O1xyXG5cdFx0fVxyXG5cdH1cclxuXHRwIHtcclxuXHRmb250LXdlaWdodDogNDAwO1xyXG5cdGZvbnQtc2l6ZTogZW0oMTgsIDE4KTtcclxuXHRmb250LWZhbWlseTogSGV1cmlzdGljYTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHRcdCYuZGVzY3JpcHRpb24ge1xyXG5cdFx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogNjBweDtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0Ji5maWxlbmFtZSB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1zdHJva2U7XHJcblx0XHRcdGZvbnQtZmFtaWx5OiAnU3RvbHpsIFcwMCBCb29rJywgQXJpYWwsIHNhbnMtc2VyaWY7XHJcblx0XHRcdGZvbnQtc2l6ZTogZW0oMTQsIDE4KTtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IGVtKDE0LCAxOCk7XHJcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XHJcblx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0XHRcdHBhZGRpbmctdG9wOiAxMHB4O1xyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdHBhZGRpbmctdG9wOiAwO1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdG1heC13aWR0aDogNDklO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdH1cclxuXHRhIHtcclxuXHRcdCYuZmlsZXNpemUge1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdFx0Zm9udC1mYW1pbHk6ICdTdG9semwgVzAwIEJvb2snLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuXHRcdFx0Zm9udC1zaXplOiBlbSgxNCwgMTgpO1xyXG5cdFx0XHRsaW5lLWhlaWdodDogZW0oMTQsIDE4KTtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcclxuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMTUwbXMgZWFzZS1pbi1vdXQpO1xyXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0XHRcdGZsb2F0OiByaWdodDtcclxuXHRcdFx0XHRtYXgtd2lkdGg6IDQ5JTtcclxuXHRcdFx0fVxyXG5cdFx0ICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG5cdFx0ICAgICAgY29sb3I6ICRjb2xvci1ncmVlbi1hbmM7XHJcblx0XHQgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0XHQgICAgfVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG4ub2ctbG9hZGluZyB7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiAjZGRkO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAxcHggI2NjYywgMTVweCAzMHB4IDFweCAjY2NjLCAtMTVweCAzMHB4IDFweCAjY2NjO1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0LXdlYmtpdC1hbmltYXRpb246IGxvYWRlciAwLjVzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XHJcblx0LW1vei1hbmltYXRpb246IGxvYWRlciAwLjVzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XHJcblx0YW5pbWF0aW9uOiBsb2FkZXIgMC41cyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xyXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDUwJTtcclxuXHRcdGxlZnQ6IDUwJTtcclxuXHRcdG1hcmdpbjogLTI1cHggMCAwIC0yNXB4O1xyXG5cdH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGxvYWRlciB7XHJcblx0MCUgeyBiYWNrZ3JvdW5kOiAjZGRkOyB9XHJcblx0MzMlIHsgYmFja2dyb3VuZDogI2NjYzsgYm94LXNoYWRvdzogMCAwIDFweCAjY2NjLCAxNXB4IDMwcHggMXB4ICNjY2MsIC0xNXB4IDMwcHggMXB4ICNkZGQ7IH1cclxuXHQ2NiUgeyBiYWNrZ3JvdW5kOiAjY2NjOyBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2RkZCwgLTE1cHggMzBweCAxcHggI2NjYzsgfVxyXG59XHJcblxyXG5ALW1vei1rZXlmcmFtZXMgbG9hZGVyIHtcclxuXHQwJSB7IGJhY2tncm91bmQ6ICNkZGQ7IH1cclxuXHQzMyUgeyBiYWNrZ3JvdW5kOiAjY2NjOyBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2NjYywgLTE1cHggMzBweCAxcHggI2RkZDsgfVxyXG5cdDY2JSB7IGJhY2tncm91bmQ6ICNjY2M7IGJveC1zaGFkb3c6IDAgMCAxcHggI2NjYywgMTVweCAzMHB4IDFweCAjZGRkLCAtMTVweCAzMHB4IDFweCAjY2NjOyB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgbG9hZGVyIHtcclxuXHQwJSB7IGJhY2tncm91bmQ6ICNkZGQ7IH1cclxuXHQzMyUgeyBiYWNrZ3JvdW5kOiAjY2NjOyBib3gtc2hhZG93OiAwIDAgMXB4ICNjY2MsIDE1cHggMzBweCAxcHggI2NjYywgLTE1cHggMzBweCAxcHggI2RkZDsgfVxyXG5cdDY2JSB7IGJhY2tncm91bmQ6ICNjY2M7IGJveC1zaGFkb3c6IDAgMCAxcHggI2NjYywgMTVweCAzMHB4IDFweCAjZGRkLCAtMTVweCAzMHB4IDFweCAjY2NjOyB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgzMHB4KSB7XHJcblxyXG5cdC8vIC5vZy1leHBhbmRlciBoMyB7IGZvbnQtc2l6ZTogMzJweDsgfVxyXG5cdC8vIC5vZy1leHBhbmRlciBwIHsgZm9udC1zaXplOiAxM3B4OyB9XHJcblx0Ly8gLm9nLWV4cGFuZGVyIGEgeyBmb250LXNpemU6IDEycHg7IH1cclxuXHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY1MHB4KSB7XHJcblx0Lm9nLWRldGFpbHMgeyBmbG9hdDogbm9uZTsgd2lkdGg6IDEwMCU7IH1cclxufVxyXG4uZ2FsbGVyeS1maWx0ZXIge1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdG1hcmdpbjogMjBweCBhdXRvIDMwcHggYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuXHRcdHdpZHRoOiAzNTBweDtcclxuXHR9XHJcblx0LnRyaWdnZXIge1xyXG5cdFx0Zm9udC1mYW1pbHk6XCJTdG9semwgVzAwIE1lZGl1bVwiO1xyXG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0YmFja2dyb3VuZDogJGNvbG9yLWdyZWVuLWZvb3Rlci1ob3ZlcjtcclxuXHRcdGxpbmUtaGVpZ2h0OiA1MHB4O1xyXG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcblxyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiAyMnB4O1xyXG5cdFx0XHRyaWdodDogMjBweDtcclxuXHRcdFx0d2lkdGg6IDEycHg7XHJcblx0XHRcdGhlaWdodDogN3B4O1xyXG5cdFx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCB1cmwoJy4uL2ltZy9pY29ucy9pY29uLWRkLWFycm93LXdoaXRlLnBuZycpbm8tcmVwZWF0IDAgMDtcclxuXHRcdFx0LW1vei10cmFuc2l0aW9uOjAuNXMgYWxsO1xyXG5cdFx0XHQtd2Via2l0LXRyYW5zaXRpb246MC41cyBhbGw7XHJcblx0XHRcdHRyYW5zaXRpb246MC41cyBhbGw7XHJcblx0XHR9XHJcblx0XHQmLmFjdGl2ZSB7XHJcblx0XHRcdCY6YWZ0ZXIge1xyXG5cdFx0XHQgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0XHQgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0XHQgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XHJcblx0XHRcdCAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG5cdFx0XHQgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHQub3B0aW9ucyB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDEwMCU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0ei1pbmRleDogNjtcclxuXHRcdEBleHRlbmQgJXVsO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdG1heC1oZWlnaHQ6IDA7XHJcblx0XHRvdmVyZmxvdy15OiBoaWRkZW47XHJcblx0XHQtd2Via2l0LXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzOyBcclxuXHRcdC1tb3otdHJhbnNpdGlvbjogbWF4LWhlaWdodCAuNXM7IFxyXG5cdFx0LW1zLXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzOyBcclxuXHRcdC1vLXRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzOyBcclxuXHRcdHRyYW5zaXRpb246IG1heC1oZWlnaHQgLjVzOyBcclxuXHRcdG92ZXJmbG93OiBoaWRkZW47XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRsaSB7XHJcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XHJcblx0XHRcdGJvcmRlcjogc29saWQgMXB4ICRjb2xvci1ncmV5LXN0cm9rZTtcclxuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMDtcclxuXHRcdFx0bGluZS1oZWlnaHQ6IDUwcHg7XHJcblx0XHRcdHBhZGRpbmc6IDAgMjBweDtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5LXN0cm9rZTtcclxuXHRcdFx0YSB7XHJcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XHJcblx0XHRcdFx0cGFkZGluZzogMCAyMHB4O1xyXG5cdFx0XHRcdG1hcmdpbjogMCAtMjBweDtcclxuXHRcdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRcdGJhY2tncm91bmQ6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG5cdFx0XHRcdH1cclxuXHRcdFx0fVxyXG5cdFx0XHR1bCB7XHJcblx0XHRcdFx0QGV4dGVuZCAldWw7XHJcblx0XHRcdFx0bGkge1xyXG5cdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xyXG5cdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDA7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgLTIwcHg7XHJcblx0XHRcdFx0XHRhIHtcclxuXHRcdFx0XHRcdFx0cGFkZGluZzogMCAwIDAgNDBweDtcclxuXHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdFx0Ji5hY3RpdmUge1xyXG5cdFx0XHRib3JkZXItYm90dG9tOiBzb2xpZCAxcHggJGNvbG9yLWdyZXktc3Ryb2tlO1xyXG5cdFx0XHRtYXgtaGVpZ2h0OiA2MDBweDtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuIiwiXHJcbmFydGljbGUge1xyXG4gICAgLnNwbGl0LWxpc3Qge1xyXG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XHJcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDIwcHg7XHJcblx0XHRcdEBpbmNsdWRlIGNsZWFyZml4O1xyXG5cdFx0fVxyXG5cdFx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdFx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICMyYzJmMmY7XHJcblx0XHR9XHJcbiAgICAgICAgLmxpc3QtY29weSB7XHJcbiAgICAgICAgXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuICAgICAgICBcdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0ICAgICAgICBcdHdpZHRoOiA1MCU7XHJcblx0ICAgICAgICBcdHBhZGRpbmc6IDEwcHggMjBweCAwIDA7XHJcblx0ICAgICAgICB9XHJcblx0ICAgICAgICBzcGFuLCBoNCB7XHJcblxyXG5cdCAgICAgICAgfVxyXG4gICAgICAgIFx0c3BhbiB7XHJcblxyXG5cdFx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG5cdFx0XHRcdGZvbnQtZmFtaWx5OiBcIkhldXJpc3RpY2EgQm9sZFwiO1xyXG4gICAgICAgIFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuICAgICAgICBcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIxKTtcclxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdCAgICAgICAgXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdCAgICAgICAgXHRcdHBhZGRpbmctcmlnaHQ6IDMwcHg7XHJcblx0ICAgICAgICBcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XHJcblx0ICAgICAgICBcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI2KTtcclxuXHRcdFx0XHR9XHJcblxyXG4gICAgICAgIFx0fVxyXG4gICAgICAgIFx0aDQge1xyXG4gICAgICAgIFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE3KTtcclxuICAgICAgICBcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI1KTtcclxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcclxuXHQgICAgICAgIFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcclxuXHQgICAgICAgIFx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMjYpO1xyXG5cdFx0XHRcdH1cclxuICAgICAgICBcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBcdH1cclxuICAgICAgICB9XHJcbiAgICAgICAgPiB1bCB7XHJcbiAgICAgICAgXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcbiAgICAgICAgXHRcdGZsb2F0OiBsZWZ0O1xyXG5cdCAgICAgICAgXHR3aWR0aDogNTAlO1xyXG5cdCAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgIC8vICAgICAgPiAuZGF0ZS10aW1lIHtcclxuICAgLy8gICAgICAgICAgZmxleDogNTAlO1xyXG4gICAvLyAgICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcbiAgIC8vICAgICAgICAgIG1hcmdpbi10b3A6IDEycHg7XHJcbiAgIC8vICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcblx0XHRcdC8vIGRpc3BsYXk6IC13ZWJraXQtZmxleDsgLyogU2FmYXJpICovXHJcblx0XHRcdC8vIC13ZWJraXQtZmxleC13cmFwOiB3cmFwOyAvKiBTYWZhcmkgNi4xKyAqL1xyXG5cdFx0XHQvLyBkaXNwbGF5OiBmbGV4OyAgIFxyXG5cdFx0XHQvLyBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgIC8vICAgICAgICAgID4gc3BhbjpmaXJzdC1jaGlsZCB7XHJcbiAgIC8vICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgIC8vICAgICAgICAgICAgICBtaW4td2lkdGg6IGVtKDkwKTtcclxuICAgLy8gICAgICAgICAgfVxyXG4gICAvLyAgICAgIH1cclxuICAgLy8gICAgICA+IHVsIHtcclxuICAgLy8gICAgICAgICAgZmxleDogNTAlO1xyXG4gICAvLyAgICAgIH1cclxuICAgIH1cclxuXHQvLyAuc3BsaXQtbGlzdCB7XHJcblx0Ly8gXHRwYWRkaW5nLXRvcDogMjBweDtcclxuXHQvLyBcdCY6Zmlyc3Qtb2YtdHlwZSB7XHJcblx0Ly8gXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAjMmMyZjJmO1xyXG5cdC8vIFx0fVxyXG5cdC8vICAgICA+IC5kYXRlLXRpbWUge1xyXG5cdC8vICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xyXG5cdC8vICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHQvLyAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0Ly8gICAgICAgICA+IHNwYW46Zmlyc3QtY2hpbGQge1xyXG5cdC8vICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cdC8vICAgICAgICAgICAgIG1pbi13aWR0aDogZW0oOTApO1xyXG5cdC8vICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuXHQvLyAgICAgICAgIH1cclxuXHQvLyAgICAgICAgID4gc3BhbjpsYXN0LWNoaWxkIHtcclxuXHQvLyBcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdC8vICAgICAgICAgfVxyXG5cdC8vICAgICB9XHJcblx0Ly8gfVxyXG5cclxuXHJcblxyXG5cdC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcblx0Ly8gXHQuc3BsaXQtbGlzdCA+IC5kYXRlLXRpbWUge1xyXG5cdC8vIFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0Ly8gICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdC8vICAgICAgICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcclxuXHQvLyAgICAgICAgIFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdC8vICAgICAgICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHQvLyAgICAgICAgIH1cclxuXHQvLyAgICAgICAgID4gc3BhbjpsYXN0LWNoaWxkIHtcclxuXHQvLyBcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdC8vICAgICAgICAgfVxyXG5cdC8vIFx0fVxyXG5cdC8vIH1cclxuXHJcblx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XHJcblx0Ly8gICAgIC5zcGxpdC1saXN0IHtcclxuXHQvLyAgICAgICAgIC5saXN0LWNvcHkge1xyXG5cdC8vICAgICAgICAgXHR3aWR0aDogNTAlO1xyXG5cdC8vICAgICAgICAgXHRzcGFuIHtcclxuXHQvLyAgICAgICAgIFx0XHRmbG9hdDogbGVmdDtcclxuXHQvLyAgICAgICAgIFx0XHRwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG5cdC8vICAgICAgICAgXHR9XHJcblx0Ly8gICAgICAgICBcdGg0IHtcclxuXHQvLyAgICAgICAgIFx0XHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdC8vICAgICAgICAgXHR9XHJcblx0Ly8gICAgICAgICB9XHJcblx0Ly8gICAgLy8gICAgICA+IC5kYXRlLXRpbWUge1xyXG5cdC8vICAgIC8vICAgICAgICAgIGZsZXg6IDUwJTtcclxuXHQvLyAgICAvLyAgICAgICAgICBmb250LXNpemU6IDE3cHg7XHJcblx0Ly8gICAgLy8gICAgICAgICAgbWFyZ2luLXRvcDogMTJweDtcclxuXHQvLyAgICAvLyAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG5cdC8vIFx0XHRcdC8vIGRpc3BsYXk6IC13ZWJraXQtZmxleDsgLyogU2FmYXJpICovXHJcblx0Ly8gXHRcdFx0Ly8gLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7IC8qIFNhZmFyaSA2LjErICovXHJcblx0Ly8gXHRcdFx0Ly8gZGlzcGxheTogZmxleDsgICBcclxuXHQvLyBcdFx0XHQvLyBmbGV4LXdyYXA6IHdyYXA7XHJcblx0Ly8gICAgLy8gICAgICAgICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcclxuXHQvLyAgICAvLyAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdC8vICAgIC8vICAgICAgICAgICAgICBtaW4td2lkdGg6IGVtKDkwKTtcclxuXHQvLyAgICAvLyAgICAgICAgICB9XHJcblx0Ly8gICAgLy8gICAgICB9XHJcblx0Ly8gICAgLy8gICAgICA+IHVsIHtcclxuXHQvLyAgICAvLyAgICAgICAgICBmbGV4OiA1MCU7XHJcblx0Ly8gICAgLy8gICAgICB9XHJcblx0Ly8gICAgIH1cclxuXHQvLyB9XHJcblx0Ly8gQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xyXG5cdC8vICAgICAuc3BsaXQtbGlzdCB7XHJcblx0Ly8gICAgICAgICA+IC5kYXRlLXRpbWUge1xyXG5cdC8vIFx0XHRcdGZvbnQtc2l6ZTogMThweDtcclxuXHQvLyAgICAgICAgIH1cclxuXHQvLyAgICAgfVxyXG5cdC8vIH1cclxuXHJcbn1cclxuLmFjY29yZGlvbiAuc3BsaXQtbGlzdCB7XHJcblx0JjpmaXJzdC1vZi10eXBlIHtcclxuXHRcdGJvcmRlci10b3A6bm9uZTtcclxuXHR9XHJcbn0iLCIuc2ZIaWdobGlnaHQge1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuO1xyXG5cdGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5OyBcclxuXHRwYWRkaW5nOiAycHg7XHJcbn1cclxuXHJcbi5zZi1tZWRpYSB7XHJcblx0cGFkZGluZy1ib3R0b206IDI1cHg7XHJcbn1cclxuXHJcbi5zZi1tZWRpYS1ib2R5IHtcclxuXHRmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XHJcblx0Zm9udC1zaXplOiBlbSgxNCk7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuXHJcblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG5cdFx0cCB7XHJcblx0XHRcdHBhZGRpbmctbGVmdDogNTBweDtcclxuXHRcdH1cdFxyXG5cdH1cclxuXHJcbn1cclxuXHJcbi5zZWFyY2gtaGVhZGVyIHtcclxuXHRwYWRkaW5nLXRvcDogNTBweDsgXHJcblx0cGFkZGluZy1ib3R0b206IDM1cHg7XHJcblx0ZW0ge1xyXG5cdFx0Zm9udC1zdHlsZTogaXRhbGljOyBcclxuXHJcblx0XHQmOmJlZm9yZSB7XHJcblx0XHRcdGNvbnRlbnQ6IFwiXFwyMDFDXCI7XHJcblx0XHR9XHJcblxyXG5cdFx0JjphZnRlciB7XHJcblx0XHRcdGNvbnRlbnQ6IFwiXFwyMDFEXCI7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uc2VhcmNoLWZvb3RlciB7XHJcblx0QGluY2x1ZGUgY2xlYXJmaXg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucGFnaW5hdGlvbiB7IFxyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRmb250LWZhbWlseTogXCJIZXVyaXN0aWNhXCI7XHJcblx0Zm9udC1zaXplOiBlbSgxNik7XHJcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDsgIFxyXG5cclxuXHQuY3VycmVudCB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcblx0XHRjb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7IFxyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDsgXHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW4tYW5jO1xyXG5cdFx0XHRjb2xvcjogJGNvbG9yLWdyZXktd2hpdGU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRhLCBcclxuXHRidXR0b24geyBcclxuXHRcdGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0cGFkZGluZzogMTBweCAyNXB4O1xyXG5cdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IFxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdGNvbG9yOiAkY29sb3ItZ3JleS13aGl0ZTtcclxuXHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0XHR9XHJcblx0fVxyXG59IFxyXG5cclxudWwucGFnaW5hdGlvbiB7XHJcblx0bGkgeyBcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0XHRtYXJnaW46IDA7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS13aGl0ZTsgXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleS1uYXY7XHJcblx0XHR9IFxyXG5cdH1cclxufSIsIi5zZi1zb2NpYWwtc2hhcmUgeyBcclxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IGVtKDI1cHgpOyBcdFxyXG5cdH1cclxuXHJcblx0bGkge1xyXG5cdFx0ZmxvYXQ6IGxlZnQ7XHJcblx0XHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrOyBcclxuXHRcdGxpbmUtaGVpZ2h0OiA4cHg7XHJcblx0XHRwYWRkaW5nOiA1cHg7IFxyXG5cclxuXHRcdCY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XHJcblx0XHR9XHJcblxyXG5cdFx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdFx0cGFkZGluZy1yaWdodDogMDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdCNfX19wbHVzb25lXzAgeyBcclxuXHRcdG1heC13aWR0aDogNTVweDtcclxuXHRcdHdpZHRoOiA1NXB4O1xyXG5cdH1cclxufSIsIiNidHQgeyBcclxuXHRjb2xvcjogJGNvbG9yLWdyZXk2O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LW5hdjsgXHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiAzMHB4O1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIHotaW5kZXg6IDk5OTk7XHJcbiAgICB3aWR0aDogNDVweDtcclxuICAgIGhlaWdodDogNDVweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBcclxuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICBmb250LXNpemU6IDAuNmVtOyBcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogN3B4OyBcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcblxyXG4gICAgc3BhbiB7IFxyXG4gICAgXHRwYWRkaW5nOiA1cHggMCAzcHggMDtcclxuICAgIFx0bWFyZ2luOiAwO1xyXG4gICAgXHRkaXNwbGF5OiBibG9jaztcclxuICAgIFx0d2lkdGg6IDEwMCU7IFxyXG4gICAgXHQmOmFmdGVyIHtcclxuICBcdFx0XHRAaW5jbHVkZSB3Zi1pY29uKCRpY29uLXVwLW9wZW4tYmlnLCAyMCwgJGNvbG9yLWdyZXk2KTtcclxuICBcdFx0fVxyXG4gICAgfVxyXG59IiwiLy8gaHR0cDovL3BoaWxpcHdhbHRvbi5jb20vYXJ0aWNsZXMvbm9ybWFsaXppbmctY3Jvc3MtYnJvd3Nlci1mbGV4Ym94LWJ1Z3MvXHJcbi8vIEV4dGVuYWJsZSBzdHlsZXNcclxuLnN1c3RhaW5hYmlsaXR5LWxpbmtzIGgyIHtcclxuICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9sZFwiO1xyXG4gICAgZm9udC1zaXplOiBlbSgxOCk7XHJcbiAgICBsaW5lLWhlaWdodDogLjk7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMDsgLy9lbSguNik7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4uY29sdW1ucy5zdXN0YWluYWJpbGl0eS1wZXJmb3JtYW5jZSB7XHJcbiAgICBib3JkZXItbGVmdDogc29saWQgMnB4ICMwMGU4NjI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG59XHJcblxyXG4vLyBsYXlvdXRcclxuLmludmVzdG9yLWNlbnRyZSB7XHJcbiAgICAud3JhcHBlciB7XHJcbiAgICAgICAgcGFkZGluZzogMjBweDtcclxuICAgIH1cclxuICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsbWVkaXVtKSB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyaWQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleC1mbG93LCByb3cgd3JhcCk7XHJcbiAgICAgICAgICAgID4gLnNoYXJlLXByb21vLFxyXG4gICAgICAgICAgICA+IC5kZWJ0LWludmVzdG9ycywgICAgICAgIFxyXG4gICAgICAgICAgICA+IC5uZXdzLWxpc3QgeyAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDEgMTAwJSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiAudGlsZS1saW5rcyB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDEgNTAlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIC53cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ncmlkIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KGZsZXgtZmxvdywgcm93KTtcclxuICAgICAgICAgICAgPiAuc2hhcmUtcHJvbW8ge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KGZsZXgsIDEgMjAlKTtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLnRpbGUtbGlua3Mge1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KGZsZXgsIDAgMzglKTtcclxuICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLmRlYnQtaW52ZXN0b3JzIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDU1cHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTglO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNDZweDtcclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgPiAubmV3cy1saXN0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDogMjg2cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4JTtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjQ2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICAud3JhcHBlciB7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDU1cHggNTVweCAwIDU1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBpbnZlc3RvciBjZW50cmUgdGVtcGxhdGVcclxuI2ludmVzdG9yLWNlbnRyZSB7XHJcbiAgICAjbWFpbiB7XHJcbiAgICAgICAgLmludmVzdG9yLWNlbnRyZSAucm93LFxyXG4gICAgICAgIC5pbnZlc3RvcnMgLnJvdyB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogZW0oMTYwMCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZXktYm9keTtcclxuICAgIH1cclxuICAgICNtYWluIC5pbnZlc3RvcnMge1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IC8vODBweDtcclxuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAucGFnZS1pbnRybyB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmludmVzdG9yLWNlbnRyZSB7XHJcbiAgICAvLyBzaGFyZSBwcmljZVxyXG4gICAgLnNoYXJlLXByb21vIHtcclxuICAgICAgICBtYXJnaW46IDIwcHggYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IDQyMHB4O1xyXG4gICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgIC5zdG9jay1wcmljZSA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgTWVkaXVtXCI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTMpO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogLjk7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBlbSguNik7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2hhcmUtcHJpY2Uge1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7IC8vIDIwcHg7XHJcbiAgICAgICAgICAgIC5zdG9jay1wcmljZSA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA2NXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3RvY2staW5kZXgge1xyXG4gICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDI2KTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgY29sb3I6JGNvbG9yLWdyZXktYm9keSFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiRjb2xvci1ncmV5LWJvZHkhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zdG9jay11cGRhdGVkLWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgQGV4dGVuZCAldWw7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDAgNXB4O1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3aWRnZXQtdGl0bGUgKDEyKTtcclxuICAgICAgICAgICAgICAgICAgICAvL2ZvbnQtc2l6ZTogZW0oMTIpOyAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRweDtcclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogODVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnN0b2NrLXdyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogNDIwcHg7XHJcbiAgICAgICAgICAgIC5zaGFyZS1wcmljZSAuc3RvY2stdXBkYXRlZC1saXN0ID4gbGkge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMi41KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvLyBjYW4ndCBnZXQgYnJlYWtwb2ludCB0byBkbyBpbmJldHdlZW4gbWVkaWEgcXVlcmllc1xyXG4gICAgICAgIC8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoIG1lZGl1bSB4bGFyZ2UgKSB7ID8/PyAgbm90IHdvcmtpbmdcclxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiBlbSg3NjgpKSBhbmQgKG1heC13aWR0aDogZW0oMTI3OSkpIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcclxuICAgICAgICAgICAgLy8gd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleCwgMCAxMDAlKTsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDsgLy8yMHB4O1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3NjhweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zaGFyZS1wcmljZSB7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNzY4cHg7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTotd2Via2l0LXRyYW5zbGF0ZSgtNTAlKTtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAodHJhbnNmb3JtLCB0cmFuc2xhdGUoLTUwJSkpO1xyXG4gICAgICAgICAgICAgICAgLy93aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgtZmxvdywgcm93KTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDsgLy83N3B4O1xyXG4gICAgICAgICAgICAgICAgLnN0b2NrLXByaWNlIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDEgMzMuMzMzMzMlKTtcclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IC45O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdG9jay13cmFwcGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDAgNjYuNjY2NjYlKTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKCBmbGV4LWZsb3csIHJvdyk7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgID4gLnN0b2NrLWluZGV4IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LCAwIDM1JSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIHBhZGRpbmctbGVmdDogMDsgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgPiAuc3RvY2staW5kZXgge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW46Zmlyc3Qtb2YtdHlwZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9mbG9hdDpyaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vcGFkZGluZy1yaWdodDowO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gLnN0b2NrLXVwZGF0ZWQtbGlzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleCwgNjUlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRjb2xvci1ncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgLnNoYXJlLXByaWNlIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjQ2cHg7XHJcbiAgICAgICAgICAgICAgICAuc3RvY2stcHJpY2UgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDU1KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdG9jay13cmFwcGVyID4gLnN0b2NrLWluZGV4IHtcclxuICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE4KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zdG9jay11cGRhdGVkLWxpc3QgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMSk7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiA3NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLy8gQW5ub3VuY2VtZW50IGJhclxyXG4uYW5ub3VuY2VtZW50LWJhciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmVlbjtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBwLFxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICMwMDA7XHJcbiAgICB9XHJcbiAgICBwIHtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDIwcHggNHB4O1xyXG4gICAgfVxyXG4gICAgYSB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XHJcbiAgICAgICAgXHRjb2xvcjojMDAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAvKlxyXG4gICAgICAgIHRyYW5zaXRpb246Y29sb3IgLjNzO1xyXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xyXG4gICAgICAgIFx0Y29sb3I6I2ZmZjtcclxuICAgICAgICB9XHJcbiAgICAgICAgKi9cclxuICAgIH0gXHJcblxyXG4gICAgLyogYWRkIG92ZXJyaWRlIHRvIHByZXZlbnQgbWFyZ2luIGJ1ZmZlciAqL1xyXG4gICAgLnd5c2l3eWcgPiAud3lzaXd5Zy1pbm5lcjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcclxuICAgIFx0Ym9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMTBweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgICAgcGFkZGluZzogOHB4IDIwcHggOHB4O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IGVtKDE1LjUpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgICAgICY6YWZ0ZXIsICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgXHRjb250ZW50OiAnJztcclxuICAgICAgICAgICBcdCBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICBcdCBcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRcdFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgXHR0b3A6MDtcclxuICAgICAgICAgICAgXHRsZWZ0Oi01MHB4O1xyXG4gICAgICAgICAgICBcdHdpZHRoOiAwO1xyXG5cdFx0XHRcdGhlaWdodDogMDtcclxuXHRcdFx0XHRib3JkZXItc3R5bGU6IHNvbGlkO1xyXG5cdFx0XHRcdGJvcmRlci13aWR0aDogMCAwIDcycHggNTRweDtcclxuXHRcdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRjb2xvci1ncmVlbiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgXHRib3R0b206MDtcclxuICAgICAgICAgICAgXHRyaWdodDotNTJweDtcclxuICAgICAgICAgICAgXHR3aWR0aDogMDtcclxuXHRcdFx0XHRoZWlnaHQ6IDA7XHJcblx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRcdFx0XHRib3JkZXItd2lkdGg6IDcycHggNTRweCAwIDA7XHJcblx0XHRcdFx0Ym9yZGVyLWNvbG9yOiAkY29sb3ItZ3JlZW4gdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIHN0cmlwZXMtd2hpdGUoKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiA2cHggYXV0bztcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAzcHg7XHJcbiAgICAgICAgICAgIGxlZnQ6IC0xMCU7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICB3aWR0aDogMTIwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICBvcGFjaXR5Oi43NTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOnNrZXdYKDE1ZGVnKTtcclxuXHJcbiAgICAgICAgICAgIC8vcGFkZGluZy1ib3R0b206MTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5pbnZlc3Rvci1jZW50cmUge1xyXG4gICAgLy8gaW52ZXN0b3IgbGlua3NcclxuICAgIC50aWxlLWxpbmtzIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuXHJcbiAgICAgICAgaDIge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICVtYWluLXRpdGxlLXN0eWxlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdWwge1xyXG4gICAgICAgICAgICBAZXh0ZW5kICV1bDtcclxuXHJcbiAgICAgICAgICAgID4gbGksXHJcbiAgICAgICAgICAgID4gbGkgPiBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIlN0b2x6bCBXMDAgQm9va1wiO1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxNik7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IC8vZW0oLjYpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgIC8vXHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmV5LXdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjRzO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogIzAwMDsgLy8kY29sb3ItZ3JleS1ib2R5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JlZW47IC8vJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgICAgICB1bCA+IGxpID4gYSB7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcblxyXG4gICAgICAgICAgICAgICAgPiBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmx0IHtcclxuICAgICAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHJlZDtcclxuICAgICAgICAgICAgICAgIHVsIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucnQge1xyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMzRweDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC01cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LWZsb3csIHJvdyB3cmFwKTtcclxuXHJcbiAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmVmaXggKGZsZXgsIDAgNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB3Zi1pY29uKCAkaWNvbi1hcnJvdy1iaWctcmlnaHQsIDIycHgsICRjb2xvci1ncmVlbik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IDdweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjRzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3RyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOCk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IHNwYW4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy90aWxlLXRyaWFuZ2xlLnN2Zykgbm8tcmVwZWF0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4KGJhY2tncm91bmQtc2l6ZSwgMTAwJSAxMjBweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLXBvc2l0aW9uIC44cyBlYXNlLWluLW91dCwgb3BhY2l0eSAuM3M7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy9kaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xMjJweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyZWVuLXRpbGVzLWhvdmVyO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAtMTIycHg7IC8vLTEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IC4wNTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjgpO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICB1bCA+IGxpIHtcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxOSk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE0MHB4OyAvLzE0MnB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgdWwgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIC0xNDBweDsgLy8tMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4eGxhcmdlKSB7XHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgzMik7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIHVsID4gbGkgPiBhIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMjApO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLmx0IHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSwgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gNXB4KTtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JleTY7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICByaWdodDogLTEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogcmVkO1xyXG4gICAgICAgICAgICB1bCB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMycHg7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucnQge1xyXG4gICAgICAgICAgICAgICAgdWwge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzhweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeHh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgdWwgPiBsaSA+IGEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBlbSgyMik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ZW0oMTAyNCkpIGFuZCAobWF4LXdpZHRoOmVtKDEyNzkpKSB7XHJcbiAgICAgICAgICAgIGFydGljbGUge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN1c3RhaW5hYmlsaXR5LWxpbmtzIHtcclxuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZWVuO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JlZW47XHJcbiAgICAgICAgcGFkZGluZzogMTVweCAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XHJcblxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgQGV4dGVuZCAlbWFpbi10aXRsZS1zdHlsZTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAuM3M7XHJcblxyXG4gICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHdmLWljb24oICRpY29uLWFycm93LWJpZy1yaWdodCwgMjJweCwgJGNvbG9yLWdyZWVuKTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRjb2xvci1ncmVlbiwgNSUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIGNhbid0IGdldCBicmVha3BvaW50IHRvIGRvIGluYmV0d2VlbiBtZWRpYSBxdWVyaWVzXHJcbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCggbWVkaXVtIHhsYXJnZSApIHsgPz8/ICBub3Qgd29ya2luZ1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IGVtKDQ4MCkpIGFuZCAobWF4LXdpZHRoOiBlbSgxMjc5KSkge1xyXG4gICAgICAgICAgICAvL0BpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsbWVkaXVtKSB7XHJcbiAgICAgICAgICAgIGgyOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7IC8vNDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm5ld3MtbGlzdCB7XHJcbiAgICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiBlbSgxMyk7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAuOTtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IGVtKC42KTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgY29sb3I6ICRjb2xvci1ncmV5LWJvZHk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGF0ZS10aW1lIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgd2lkZ2V0LXRpdGxlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICA+IC53cmFwcGVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAgICAgICAgIC5pdGVtIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLmRhdGUtdGltZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiU3RvbHpsIFcwMCBNZWRpdW1cIjtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIHA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZW0oMTcpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vIGNhbid0IGdldCBicmVha3BvaW50IHRvIGRvIGluYmV0d2VlbiBtZWRpYSBxdWVyaWVzXHJcbiAgICAgICAgLy8gQGluY2x1ZGUgYnJlYWtwb2ludCggbWVkaXVtIHhsYXJnZSApIHsgPz8/ICBub3Qgd29ya2luZ1xyXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IGVtKDc2OCkpIGFuZCAobWF4LXdpZHRoOiBlbSgxMjc5KSkge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByZWZpeCAoZmxleC1mbG93LCByb3cpO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIC0xLjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwZW07XHJcblxyXG4gICAgICAgICAgICAgICAgPiAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJlZml4IChmbGV4LDEgMzMuMzMzMyUpO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgIGgyIHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7IC8vNTBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLndyYXBwZXIge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAgICAgPiAuaXRlbSB7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogNjJweDtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIHA6bm90KDpmaXJzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGVtKDE1KTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZCB7XHJcbiAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGNvbG9yLWdyZXk2O1xyXG4gICAgPiBoMiB7XHJcbiAgICAgICAgQGluY2x1ZGUgd2lkZ2V0LXRpdGxlKCk7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbG1lZGl1bSkge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICA+IGgyIHtcclxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvci1ncmV5NjtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIGllID4gMTAgYnVnIGZpeGVzIFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcclxuICAgIC5mZWF0dXJlZCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgLnJvdyB7XHJcbiAgICAgICAgICAgIC5jb2x1bW4ge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuLy8gaWUgPiAxMCBidWcgZml4ZXMgXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkgYW5kIChtaW4td2lkdGg6ZW0oNDgwKSkge1xyXG4gICAgLmludmVzdG9yLWNlbnRyZSB7XHJcbiAgICAgICAgLmdyaWQge1xyXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYW5ub3VuY2VtZW50LWJhciBwIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxufVxyXG4vLyBpZSA+IDEwIGJ1ZyBmaXhlcyBcclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDowXFwwKSBhbmQgKG1pbi13aWR0aDplbSg3NjgpKSBhbmQgKG1heC13aWR0aDplbSgxMjc5KSkge1xyXG4gICAgLnNoYXJlLXByb21vIC5zaGFyZS1wcmljZSAuc3RvY2staW5kZXgge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHghaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcbi8vIGllID4gMTAgYnVnIGZpeGVzIFxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIGFuZCAobWluLXdpZHRoOmVtKDEyODApKSB7XHJcbiAgICAuaW52ZXN0b3ItY2VudHJlIHtcclxuICAgICAgICAuZ3JpZCB7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICA+IC5zaGFyZS1wcm9tbyB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgID4gLnRpbGUtbGlua3Mge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDM4JTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5mZWF0dXJlZCAucm93IHtcclxuICAgICAgICAuY29sdW1uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMzJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLnNmUGFnZUVkaXRvcnsgXHJcbiAgICAucmRUYWJsZXtcclxuICAgICAgICB0Ym9keSwgdGhlYWQsIHRmb290IHsgICAgICAgICAgICBcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5SYWREb2NrIC5yZENlbnRlciAucmRDb21tYW5kcyBsaXsgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgYTpiZWZvcmUsIGE6YWZ0ZXIsICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTsgICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9ICAgIFxyXG4gICAgLmludmVzdG9yLWNlbnRyZSAudGlsZS1saW5rcyB1bC5yZENvbW1hbmRzID4gbGkgPiBhXHJcbiAgICB7XHJcbiAgICAgICAgbWluLWhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICB9XHJcbiAgICAgICAgXHJcbiAgICAucmVsYXRlZC1jb250ZW50IFxyXG4gICAgeyAgICAgICAgXHJcbiAgICAgICAgbWF4LXdpZHRoOiAyNzBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHVsOmFmdGVyLFxyXG4gICAgICAgIHVsOmJlZm9yZXtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgLnNmUGFnZVdyYXBwZXJ7IFxyXG4gICAgICAgaGVhZGVye1xyXG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLmhpZ2hsaWdodC1wYW5lbC5ncmV5LXBhbmVsOmFmdGVye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAuc2ZfY29sc0lue1xyXG4gICAgICAgICAgICAmLmFubm91bmNlbWVudC1iYXJ7XHJcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICYuY29sdW1ue1xyXG4gICAgICAgICAgICAgICAgLy9maXhlcyB0aGUgY29sdW1ucyBub3cgc2hvd2luZyBpbiBwbGFjZVxyXG4gICAgICAgICAgICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGZvb3RlcntcclxuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xyXG4gICAgfVxyXG59XHJcblxyXG4vLyBKSVJBOiBXRVNGLTIwIFxyXG4vLyBBZGQgY3NzIGZpeCBmb3IgcG9wdXAgZGlhbG9ncyBpbiBTaXRlZmluaXR5IGVkaXRvciBtb2RlXHJcbi5SYWRXaW5kb3cgeyBcclxuICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDsgXHJcbiAgICBsZWZ0OiAwIWltcG9ydGFudDtcclxuICAgIGhlaWdodDogMTAwJSFpbXBvcnRhbnQ7IFxyXG4gICAgb3ZlcmZsb3c6IGF1dG87IFxyXG4gICAgPiB0YWJsZS5yd1RhYmxlIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMCUhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59Il19 */
