/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

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

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

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

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

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

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

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

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

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

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

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

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

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

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

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

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

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

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

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

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

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

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

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

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

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

.col-vertical-flex {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: start;
      align-items: flex-start; }

.col-flex-wrap {
  width: 100%; }

.container {
  max-width: 90rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }
  @media only screen and (min-width: 48em) {
    .container {
      max-width: 38.375rem; } }
  @media only screen and (min-width: 60em) {
    .container {
      max-width: 64rem; } }
  @media only screen and (min-width: 80em) {
    .container {
      max-width: 90rem; } }

.col-span-s-1 {
  width: 8.33333%; }

.col-span-g-s-1 {
  width: calc(8.33333% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-2 {
  width: 16.66667%; }

.col-span-g-s-2 {
  width: calc(16.66667% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-3 {
  width: 25%; }

.col-span-g-s-3 {
  width: calc(25% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-4 {
  width: 33.33333%; }

.col-span-g-s-4 {
  width: calc(33.33333% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-5 {
  width: 41.66667%; }

.col-span-g-s-5 {
  width: calc(41.66667% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-6 {
  width: 50%; }

.col-span-g-s-6 {
  width: calc(50% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-7 {
  width: 58.33333%; }

.col-span-g-s-7 {
  width: calc(58.33333% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-8 {
  width: 66.66667%; }

.col-span-g-s-8 {
  width: calc(66.66667% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-9 {
  width: 75%; }

.col-span-g-s-9 {
  width: calc(75% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-10 {
  width: 83.33333%; }

.col-span-g-s-10 {
  width: calc(83.33333% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-11 {
  width: 91.66667%; }

.col-span-g-s-11 {
  width: calc(91.66667% - 1.875rem);
  margin: 0.9375rem; }

.col-span-s-12 {
  width: 100%; }

.col-span-g-s-12 {
  width: calc(100% - 1.875rem);
  margin: 0.9375rem; }

@media only screen and (min-width: 48em) {
  .col-span-m-1 {
    width: 8.33333%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-1 {
    width: calc(8.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-2 {
    width: 16.66667%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-2 {
    width: calc(16.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-3 {
    width: 25%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-3 {
    width: calc(25% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-4 {
    width: 33.33333%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-4 {
    width: calc(33.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-5 {
    width: 41.66667%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-5 {
    width: calc(41.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-6 {
    width: 50%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-6 {
    width: calc(50% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-7 {
    width: 58.33333%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-7 {
    width: calc(58.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-8 {
    width: 66.66667%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-8 {
    width: calc(66.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-9 {
    width: 75%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-9 {
    width: calc(75% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-10 {
    width: 83.33333%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-10 {
    width: calc(83.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-11 {
    width: 91.66667%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-11 {
    width: calc(91.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 48em) {
  .col-span-m-12 {
    width: 100%; } }

@media only screen and (min-width: 48em) {
  .col-span-g-m-12 {
    width: calc(100% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-1 {
    width: 8.33333%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-1 {
    width: calc(8.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-2 {
    width: 16.66667%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-2 {
    width: calc(16.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-3 {
    width: 25%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-3 {
    width: calc(25% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-4 {
    width: 33.33333%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-4 {
    width: calc(33.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-5 {
    width: 41.66667%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-5 {
    width: calc(41.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-6 {
    width: 50%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-6 {
    width: calc(50% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-7 {
    width: 58.33333%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-7 {
    width: calc(58.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-8 {
    width: 66.66667%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-8 {
    width: calc(66.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-9 {
    width: 75%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-9 {
    width: calc(75% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-10 {
    width: 83.33333%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-10 {
    width: calc(83.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-11 {
    width: 91.66667%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-11 {
    width: calc(91.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .col-span-l-12 {
    width: 100%; } }

@media only screen and (min-width: 60em) {
  .col-span-g-l-12 {
    width: calc(100% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-1 {
    width: 8.33333%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-1 {
    width: calc(8.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-2 {
    width: 16.66667%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-2 {
    width: calc(16.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-3 {
    width: 25%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-3 {
    width: calc(25% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-4 {
    width: 33.33333%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-4 {
    width: calc(33.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-5 {
    width: 41.66667%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-5 {
    width: calc(41.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-6 {
    width: 50%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-6 {
    width: calc(50% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-7 {
    width: 58.33333%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-7 {
    width: calc(58.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-8 {
    width: 66.66667%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-8 {
    width: calc(66.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-9 {
    width: 75%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-9 {
    width: calc(75% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-10 {
    width: 83.33333%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-10 {
    width: calc(83.33333% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-11 {
    width: 91.66667%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-11 {
    width: calc(91.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 80em) {
  .col-span-xl-12 {
    width: 100%; } }

@media only screen and (min-width: 80em) {
  .col-span-g-xl-12 {
    width: calc(100% - 1.875rem);
    margin: 0.9375rem; } }

.col-offset-s-1 {
  margin-left: calc(8.33333%); }

.col-offset-g-s-1 {
  margin-left: calc(8.33333% + 0.9375rem); }

.col-offset-s-2 {
  margin-left: calc(16.66667%); }

.col-offset-g-s-2 {
  margin-left: calc(16.66667% + 0.9375rem); }

.col-offset-s-3 {
  margin-left: calc(25%); }

.col-offset-g-s-3 {
  margin-left: calc(25% + 0.9375rem); }

.col-offset-s-4 {
  margin-left: calc(33.33333%); }

.col-offset-g-s-4 {
  margin-left: calc(33.33333% + 0.9375rem); }

.col-offset-s-5 {
  margin-left: calc(41.66667%); }

.col-offset-g-s-5 {
  margin-left: calc(41.66667% + 0.9375rem); }

.col-offset-s-6 {
  margin-left: calc(50%); }

.col-offset-g-s-6 {
  margin-left: calc(50% + 0.9375rem); }

.col-offset-s-7 {
  margin-left: calc(58.33333%); }

.col-offset-g-s-7 {
  margin-left: calc(58.33333% + 0.9375rem); }

.col-offset-s-8 {
  margin-left: calc(66.66667%); }

.col-offset-g-s-8 {
  margin-left: calc(66.66667% + 0.9375rem); }

.col-offset-s-9 {
  margin-left: calc(75%); }

.col-offset-g-s-9 {
  margin-left: calc(75% + 0.9375rem); }

.col-offset-s-10 {
  margin-left: calc(83.33333%); }

.col-offset-g-s-10 {
  margin-left: calc(83.33333% + 0.9375rem); }

.col-offset-s-11 {
  margin-left: calc(91.66667%); }

.col-offset-g-s-11 {
  margin-left: calc(91.66667% + 0.9375rem); }

.col-offset-s-12 {
  margin-left: calc(100%); }

.col-offset-g-s-12 {
  margin-left: calc(100% + 0.9375rem); }

@media only screen and (min-width: 48em) {
  .col-offset-m-1 {
    margin-left: calc(8.33333%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-1 {
    margin-left: calc(8.33333% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-2 {
    margin-left: calc(16.66667%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-2 {
    margin-left: calc(16.66667% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-3 {
    margin-left: calc(25%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-3 {
    margin-left: calc(25% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-4 {
    margin-left: calc(33.33333%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-4 {
    margin-left: calc(33.33333% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-5 {
    margin-left: calc(41.66667%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-5 {
    margin-left: calc(41.66667% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-6 {
    margin-left: calc(50%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-6 {
    margin-left: calc(50% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-7 {
    margin-left: calc(58.33333%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-7 {
    margin-left: calc(58.33333% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-8 {
    margin-left: calc(66.66667%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-8 {
    margin-left: calc(66.66667% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-9 {
    margin-left: calc(75%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-9 {
    margin-left: calc(75% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-10 {
    margin-left: calc(83.33333%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-10 {
    margin-left: calc(83.33333% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-11 {
    margin-left: calc(91.66667%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media only screen and (min-width: 48em) {
  .col-offset-m-12 {
    margin-left: calc(100%); } }

@media only screen and (min-width: 48em) {
  .col-offset-g-m-12 {
    margin-left: calc(100% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-1 {
    margin-left: calc(8.33333%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-1 {
    margin-left: calc(8.33333% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-2 {
    margin-left: calc(16.66667%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-2 {
    margin-left: calc(16.66667% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-3 {
    margin-left: calc(25%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-3 {
    margin-left: calc(25% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-4 {
    margin-left: calc(33.33333%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-4 {
    margin-left: calc(33.33333% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-5 {
    margin-left: calc(41.66667%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-5 {
    margin-left: calc(41.66667% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-6 {
    margin-left: calc(50%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-6 {
    margin-left: calc(50% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-7 {
    margin-left: calc(58.33333%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-7 {
    margin-left: calc(58.33333% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-8 {
    margin-left: calc(66.66667%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-8 {
    margin-left: calc(66.66667% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-9 {
    margin-left: calc(75%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-9 {
    margin-left: calc(75% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-10 {
    margin-left: calc(83.33333%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-10 {
    margin-left: calc(83.33333% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-11 {
    margin-left: calc(91.66667%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .col-offset-l-12 {
    margin-left: calc(100%); } }

@media only screen and (min-width: 60em) {
  .col-offset-g-l-12 {
    margin-left: calc(100% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-1 {
    margin-left: calc(8.33333%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-1 {
    margin-left: calc(8.33333% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-2 {
    margin-left: calc(16.66667%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-2 {
    margin-left: calc(16.66667% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-3 {
    margin-left: calc(25%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-3 {
    margin-left: calc(25% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-4 {
    margin-left: calc(33.33333%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-4 {
    margin-left: calc(33.33333% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-5 {
    margin-left: calc(41.66667%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-5 {
    margin-left: calc(41.66667% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-6 {
    margin-left: calc(50%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-6 {
    margin-left: calc(50% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-7 {
    margin-left: calc(58.33333%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-7 {
    margin-left: calc(58.33333% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-8 {
    margin-left: calc(66.66667%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-8 {
    margin-left: calc(66.66667% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-9 {
    margin-left: calc(75%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-9 {
    margin-left: calc(75% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-10 {
    margin-left: calc(83.33333%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-10 {
    margin-left: calc(83.33333% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-11 {
    margin-left: calc(91.66667%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-11 {
    margin-left: calc(91.66667% + 0.9375rem); } }

@media only screen and (min-width: 80em) {
  .col-offset-xl-12 {
    margin-left: calc(100%); } }

@media only screen and (min-width: 80em) {
  .col-offset-g-xl-12 {
    margin-left: calc(100% + 0.9375rem); } }

*,
:before,
:after {
  box-sizing: border-box;
  margin: 0; }

body {
  background-color: #FFFFFF; }
  @media only screen and (max-width: 47.9375em) {
    body.menu-is-open {
      overflow: hidden; } }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 0 0;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 1; }

.hamburger-box {
  width: 1.125rem;
  height: 0.875rem;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -0.0625rem; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 1.125rem;
    height: 0.125rem;
    background-color: #FFFFFF;
    border-radius: 0;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -0.375rem; }
  .hamburger-inner::after {
    bottom: -0.375rem; }

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * 3DXY
   */
.hamburger--3dxy .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dxy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy .hamburger-inner::before, .hamburger--3dxy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg) rotateY(180deg); }
  .hamburger--3dxy.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dxy.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * 3DXY Reverse
   */
.hamburger--3dxy-r .hamburger-box {
  perspective: 2.25rem; }

.hamburger--3dxy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dxy-r .hamburger-inner::before, .hamburger--3dxy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dxy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg) rotateY(180deg) rotateZ(-180deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--3dxy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.375rem, 0) rotate(-45deg); }

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-0.225rem, 0, 0) rotate(-45deg) scale(0.7, 1); }

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-0.225rem, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(0.225rem, 0, 0) rotate(45deg) scale(0.7, 1); }

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(0.225rem, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-0.225rem, -0.28125rem, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-0.225rem, 0.28125rem, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(0.225rem, -0.28125rem, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(0.225rem, 0.28125rem, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
 * Arrow Turn
 */
.hamburger--arrowturn.is-active .hamburger-inner {
  -ms-transform: rotate(-180deg);
      transform: rotate(-180deg); }
  .hamburger--arrowturn.is-active .hamburger-inner::before {
    transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }
  .hamburger--arrowturn.is-active .hamburger-inner::after {
    transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
 * Arrow Turn Right
 */
.hamburger--arrowturn-r.is-active .hamburger-inner {
  -ms-transform: rotate(-180deg);
      transform: rotate(-180deg); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::before {
    transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }
  .hamburger--arrowturn-r.is-active .hamburger-inner::after {
    transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }

.hamburger--boring.is-active .hamburger-inner {
  -ms-transform: rotate(45deg);
      transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg); }

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -0.75rem;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -0.375rem, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -0.75rem;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -0.375rem, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 0.0625rem;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 0.375rem;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 0.75rem;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 0.375rem, 0) rotate(135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.75rem, 0) rotate(-270deg);
    transition-delay: 0.075s; }

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 0.0625rem;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 0.375rem;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 0.75rem;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 0.375rem, 0) rotate(-135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.75rem, 0) rotate(270deg);
    transition-delay: 0.075s; }

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::after {
      top: 0.375rem;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -2.25rem;
      top: -2.25rem;
      transform: translate3d(2.25rem, 2.25rem, 0) rotate(45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -2.25rem;
      top: -2.25rem;
      transform: translate3d(-2.25rem, 2.25rem, 0) rotate(-45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 0.375rem;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -2.25rem;
      top: 2.25rem;
      transform: translate3d(2.25rem, -2.25rem, 0) rotate(-45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -2.25rem;
      top: 2.25rem;
      transform: translate3d(-2.25rem, -2.25rem, 0) rotate(45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Minus
   */
.hamburger--minus .hamburger-inner::before, .hamburger--minus .hamburger-inner::after {
  transition: bottom 0.08s 0s ease-out, top 0.08s 0s ease-out, opacity 0s linear; }

.hamburger--minus.is-active .hamburger-inner::before, .hamburger--minus.is-active .hamburger-inner::after {
  opacity: 0;
  transition: bottom 0.08s ease-out, top 0.08s ease-out, opacity 0s 0.08s linear; }

.hamburger--minus.is-active .hamburger-inner::before {
  top: 0; }

.hamburger--minus.is-active .hamburger-inner::after {
  bottom: 0; }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 0.0625rem; }
  .hamburger--slider .hamburger-inner::before {
    top: 0.375rem;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 0.75rem; }

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-0.16071rem, -0.25rem, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.75rem, 0) rotate(-90deg); }

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 0.0625rem; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 0.375rem;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 0.75rem; }

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 0.375rem, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(0.16071rem, -0.25rem, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -0.75rem, 0) rotate(90deg); }

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
  -ms-transform: rotate(225deg);
      transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin-r.is-active .hamburger-inner {
  -ms-transform: rotate(-225deg);
      transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 0.0625rem;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 0.375rem;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 0.75rem;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0.375rem, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0.375rem, 0) rotate(-45deg); }

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -0.75rem;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -0.375rem, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand.is-active .hamburger-inner {
  -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand-r .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r.is-active .hamburger-inner {
  -ms-transform: rotate(-90deg);
      transform: rotate(-90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex.is-active .hamburger-inner {
  -ms-transform: rotate(765deg);
      transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg); }

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex-r.is-active .hamburger-inner {
  -ms-transform: rotate(-765deg);
      transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    -ms-transform: rotate(-90deg);
        transform: rotate(-90deg); }

/*!
 * Copyright (c) 2017 NAVER Corp.
 * billboard.js project is licensed under the MIT license
 * 
 * billboard.js, JavaScript chart library
 * http://naver.github.io/billboard.js/
 * 
 * @version 1.1.1
 */
/*-- Chart --*/
.bb svg {
  font: 10px sans-serif;
  -webkit-tap-highlight-color: transparent; }

.bb path, .bb line {
  fill: none;
  stroke: #000; }

.bb text {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none; }

.bb-legend-item-tile,
.bb-xgrid-focus,
.bb-ygrid,
.bb-event-rect,
.bb-bars path {
  shape-rendering: crispEdges; }

.bb-chart-arc path {
  stroke: #fff; }

.bb-chart-arc text {
  fill: #fff;
  font-size: 13px; }

/*-- Axis --*/
/*-- Grid --*/
.bb-grid line {
  stroke: #aaa; }

.bb-grid text {
  fill: #aaa; }

.bb-xgrid, .bb-ygrid {
  stroke-dasharray: 3 3; }

/*-- Text on Chart --*/
.bb-text.bb-empty {
  fill: #808080;
  font-size: 2em; }

/*-- Line --*/
.bb-line {
  stroke-width: 1px; }

/*-- Point --*/
.bb-circle._expanded_ {
  stroke-width: 1px;
  stroke: white; }

.bb-selected-circle {
  fill: white;
  stroke-width: 2px; }

/*-- Bar --*/
.bb-bar {
  stroke-width: 0; }

.bb-bar._expanded_ {
  fill-opacity: 0.75; }

/*-- Focus --*/
.bb-target.bb-focused {
  opacity: 1; }

.bb-target.bb-focused path.bb-line, .bb-target.bb-focused path.bb-step {
  stroke-width: 2px; }

.bb-target.bb-defocused {
  opacity: 0.3 !important; }

/*-- Region --*/
.bb-region {
  fill: steelblue;
  fill-opacity: .1; }

/*-- Brush --*/
.bb-brush .extent {
  fill-opacity: .1; }

/*-- Select - Drag --*/
/*-- Legend --*/
.bb-legend-item {
  font-size: 12px; }

.bb-legend-item-hidden {
  opacity: 0.15; }

.bb-legend-background {
  opacity: 0.75;
  fill: white;
  stroke: lightgray;
  stroke-width: 1; }

/*-- Title --*/
.bb-title {
  font: 14px sans-serif; }

/*-- Tooltip --*/
.bb-tooltip-container {
  z-index: 10; }

.bb-tooltip {
  border-collapse: collapse;
  border-spacing: 0;
  background-color: #fff;
  empty-cells: show;
  opacity: 0.9;
  box-shadow: 7px 7px 12px -9px #777777; }

.bb-tooltip tr {
  border: 1px solid #CCC; }

.bb-tooltip th {
  background-color: #aaa;
  font-size: 14px;
  padding: 2px 5px;
  text-align: left;
  color: #FFF; }

.bb-tooltip td {
  font-size: 13px;
  padding: 3px 6px;
  background-color: #fff;
  border-left: 1px dotted #999; }

.bb-tooltip td > span {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-right: 6px; }

.bb-tooltip td.value {
  text-align: right; }

/*-- Area --*/
.bb-area {
  stroke-width: 0;
  opacity: 0.2; }

/*-- Arc --*/
.bb-chart-arcs-title {
  dominant-baseline: middle;
  font-size: 1.3em; }

.bb-chart-arcs .bb-chart-arcs-background {
  fill: #e0e0e0;
  stroke: none; }

.bb-chart-arcs .bb-chart-arcs-gauge-unit {
  fill: #000;
  font-size: 16px; }

.bb-chart-arcs .bb-chart-arcs-gauge-max {
  fill: #777; }

.bb-chart-arcs .bb-chart-arcs-gauge-min {
  fill: #777; }

.bb-chart-arc .bb-gauge-value {
  fill: #000; }

/*# sourceMappingURL=billboard.css.map*/
body {
  font-size: 1rem;
  line-height: 1.5;
  font-family: "Montserrat", sans-serif;
  color: #000000; }

ul {
  padding: 0;
  list-style: none; }

h1, h2, h3, h4, h5, h6 {
  margin: 0; }

.btn {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  height: 2.5rem;
  padding: 0 1.16667em;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  font-size: 0.75rem;
  line-height: 1;
  color: #FFFFFF;
  text-decoration: none;
  background-color: #000000;
  border-radius: 6.25rem;
  border: none; }
  .btn svg {
    width: 1.2em;
    margin-left: 0.5625rem; }
  @media only screen and (min-width: 80em) {
    .btn {
      font-size: 0.875rem;
      padding: 0 1.42857em;
      height: 3.375rem; }
      .btn svg {
        margin-left: 0.75rem; } }

.btn--b-y svg {
  fill: #FEE33F; }

.btn--b-w svg {
  fill: #FFFFFF; }

.btn--w-b {
  color: #000000;
  background-color: #FFFFFF;
  border-color: #FFFFFF; }
  .btn--w-b svg {
    fill: #000000; }

.btn--layer-select {
  border-color: #666666;
  font-weight: 400; }
  .btn--layer-select.is-active {
    color: #000000;
    border-color: #FEE33F;
    background-color: #FEE33F;
    position: relative; }
    .btn--layer-select.is-active:before {
      display: block;
      content: '';
      position: absolute;
      border-left: 0.75em solid transparent;
      border-right: 0.75em solid transparent;
      border-top: 0.75em solid #FEE33F;
      bottom: -0.75em;
      left: 50%;
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }

.btn--chevron svg {
  width: 0.5em; }

.btn--double {
  border: 0.125rem solid #FFFFFF;
  padding: 0;
  overflow: hidden; }
  .btn--double .btn {
    border: none;
    border-radius: 0;
    transition: all 0.1s ease; }
    .btn--double .btn:first-of-type {
      padding-right: 0.78125em; }
    .btn--double .btn:last-of-type {
      padding-left: 0.78125em; }
    .btn--double .btn path {
      transition: all 0.1s ease; }
    .btn--double .btn:hover, .btn--double .btn:active, .btn--double .btn:focus {
      outline: none;
      background-color: #FFFFFF; }
      .btn--double .btn:hover path,
      .btn--double .btn:hover rect, .btn--double .btn:active path,
      .btn--double .btn:active rect, .btn--double .btn:focus path,
      .btn--double .btn:focus rect {
        fill: #000000; }
  .btn--double svg {
    margin-left: 0; }

.info-btn {
  background: none;
  border: none;
  line-height: 0;
  display: inline;
  padding: 0;
  height: auto; }

.flow > * + * {
  margin-top: 1.25em; }

.gradient {
  position: relative;
  overflow: hidden;
  background-image: linear-gradient(to bottom, #03AEAB, #0C87B7 66%, #1858C6); }

@media only screen and (min-width: 48em) {
  .gradient--small {
    background: none; } }

@media only screen and (max-width: 47.9375em) {
  .gradient--large {
    background: none; } }

.gradient--large:before {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 0;
  padding-bottom: 111.3737075332%;
  background-image: url("../images/triangle.svg");
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain; }
  @media only screen and (min-width: 80em) {
    .gradient--large:before {
      width: 70%; } }

.gradient__symbol {
  position: absolute;
  top: 30%;
  left: 24%;
  width: 80%;
  max-width: 33.75rem;
  border-radius: 50%;
  border: 0.125rem solid rgba(36, 56, 160, 0.1); }
  .gradient__symbol:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%; }
  .gradient__symbol:after {
    content: '';
    position: absolute;
    top: 13%;
    right: 13%;
    bottom: 13%;
    left: 13%;
    display: block;
    border-radius: 50%;
    border: 0.125rem solid rgba(36, 56, 160, 0.1); }

.nav {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  color: #FFFFFF; }
  .nav .container {
    position: relative; }

.nav__logos {
  width: 13.125rem;
  background-image: url("../images/header-logos.svg");
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100%; }
  @media only screen and (max-width: 34.3125em) {
    .nav__logos {
      margin-top: 0.9375rem;
      margin-bottom: 0.9375rem; } }
  @media only screen and (min-width: 34.375em) {
    .nav__logos {
      position: absolute;
      top: calc(100% + 0.9375rem);
      right: 0.9375rem;
      background-position: right top; } }
  @media only screen and (min-width: 48em) {
    .nav__logos {
      width: 15rem; } }
  .nav__logos:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 24.15094%; }

.nav__main {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding-top: 1.5rem;
  padding-bottom: 1.1875rem; }
  @media only screen and (min-width: 60em) {
    .nav__main {
      padding-top: 2.1875rem;
      padding-bottom: 1.25rem; } }

.nav__site-name {
  text-transform: uppercase;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.25;
  letter-spacing: 0.075rem; }
  @media only screen and (min-width: 60em) {
    .nav__site-name {
      font-size: 1.25rem;
      line-height: 1.2;
      letter-spacing: 0.125rem; } }

.mobile-menu-button {
  position: relative;
  z-index: 3;
  line-height: 0; }
  @media only screen and (min-width: 34.375em) {
    .mobile-menu-button {
      display: none; } }
  .mobile-menu-button:focus {
    outline: none; }

.site-url, .nav__hr {
  position: relative;
  z-index: 3; }

.nav__hr {
  position: relative;
  height: 0.125rem;
  background-color: #FFFFFF;
  border: none; }

.menu {
  padding: 0; }
  @media only screen and (max-width: 34.3125em) {
    .menu {
      height: 100%;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-pack: start;
          justify-content: flex-start;
      -ms-flex-align: start;
          align-items: flex-start; } }
  @media only screen and (min-width: 34.375em) {
    .menu {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center; } }

.menu__container {
  display: inline-block;
  position: relative;
  z-index: 2; }
  @media only screen and (max-width: 34.3125em) {
    .menu__container {
      max-width: 90rem;
      margin-left: auto;
      margin-right: auto;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      visibility: hidden;
      z-index: 2;
      padding-top: 5.5rem;
      color: #FFFFFF;
      background-color: #000000;
      opacity: 0;
      transition: opacity 0.2s ease, visibility 0s 0.2s; } }
  .menu__container.is-active {
    visibility: visible;
    opacity: 1;
    transition: opacity 0.2s ease; }
  @media only screen and (max-width: 34.3125em) {
    .menu__container:before {
      content: '';
      position: absolute;
      right: 0.9375rem;
      bottom: 6.25rem;
      width: 12.3125rem;
      height: 12.875rem;
      background-image: url("../images/menu-symbol.svg");
      background-repeat: no-repeat;
      background-position: center; } }

.menu__item {
  list-style: none; }
  @media only screen and (max-width: 34.3125em) {
    .menu__item {
      margin-bottom: 1.375rem;
      font-weight: 500;
      font-size: 1rem;
      line-height: 1.1875; }
      .menu__item:first-of-type span {
        display: none; } }
  @media only screen and (min-width: 34.375em) {
    .menu__item {
      display: inline-block;
      padding-left: 0.5rem;
      padding-right: 0.5rem;
      font-size: 0.75rem;
      text-transform: uppercase;
      letter-spacing: 0.10687rem; }
      .menu__item:last-of-type {
        padding-right: 0; } }
  @media only screen and (min-width: 48em) {
    .menu__item {
      padding-left: 1rem;
      padding-right: 1rem; } }
  @media only screen and (min-width: 60em) {
    .menu__item {
      text-transform: uppercase;
      font-size: 0.75rem;
      line-height: 1.25;
      letter-spacing: 0.10625rem; } }

.menu__item--mob-only {
  display: none; }
  @media only screen and (max-width: 34.3125em) {
    .menu__item--mob-only {
      display: block; } }

.menu__link,
.site-url {
  text-decoration: none;
  color: #FFFFFF; }
  .is-active .menu__link, .is-active
  .site-url {
    color: #FFFFFF; }

.site-url {
  position: relative;
  z-index: 3; }

.is-home .menu__link--home,
.is-about .menu__link--about,
.is-recommendations .menu__link--recommendations {
  color: #FEE33F; }

@media only screen and (min-width: 34.375em) {
  .menu__link--about, .menu__link--recommendations {
    font-weight: 600; } }

.menu__link-separator {
  width: 0.125rem;
  height: 1.125rem;
  background-color: #FFFFFF;
  opacity: 0.4; }
  @media only screen and (max-width: 34.3125em) {
    .menu__link-separator {
      display: none; } }

.menu__label {
  margin-right: 1em; }
  @media only screen and (max-width: 34.3125em) {
    .menu__label {
      font-size: 0.75rem;
      font-weight: 600; } }
  @media only screen and (min-width: 34.375em) and (max-width: 59.9375em) {
    .menu__label {
      display: none; } }

.menu__share {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  @media only screen and (max-width: 34.3125em) {
    .menu__share {
      position: relative;
      width: 100%;
      margin-top: auto;
      margin-bottom: 1rem;
      padding-top: 1rem; } }

.menu__hr {
  position: absolute;
  top: 0;
  left: 0;
  right: 0; }
  @media only screen and (min-width: 34.375em) {
    .menu__hr {
      display: none; } }

.share {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end; }
  @media only screen and (min-width: 34.375em) {
    .share {
      margin-right: -0.625rem; } }
  @media only screen and (min-width: 48em) {
    .share {
      margin-right: -0.9375rem; } }

.share__link {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: end;
      justify-content: flex-end;
  height: 1.875rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem; }
  @media only screen and (min-width: 34.375em) {
    .share__link {
      padding-left: 0.625rem;
      padding-right: 0.625rem; } }
  @media only screen and (min-width: 48em) {
    .share__link {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem; } }

.search__container {
  background-color: #FEE33F;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem; }
  @media only screen and (min-width: 48em) {
    .search__container {
      padding-top: 2.1875rem;
      padding-bottom: 3.125rem; } }
  .search__container .container {
    position: relative; }

.search {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  width: 100%;
  border-bottom: 0.125rem solid #000000;
  background-color: #FEE33F; }

.search__input {
  -ms-flex: 1;
      flex: 1;
  padding-bottom: 0.3em;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.1875;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  border: none;
  background-color: #FEE33F; }
  @media only screen and (max-width: 47.9375em) {
    .search__input {
      margin-right: 3.75rem; } }
  @media only screen and (min-width: 48em) {
    .search__input {
      font-size: 1rem; } }
  @media only screen and (min-width: 80em) {
    .search__input {
      font-size: 2rem;
      line-height: 1.21875;
      letter-spacing: 0.25rem; } }
  .search__input[disabled] {
    opacity: 0.4; }
  .search__input::-webkit-input-placeholder {
    color: #000000;
    font-family: "Montserrat", sans-serif;
    font-weight: 500; }
  .search__input:focus {
    outline: none; }

@media only screen and (max-width: 47.9375em) {
  .search__submit {
    position: absolute;
    right: 0;
    bottom: 0.25rem;
    height: auto;
    padding: 0.7em; }
    .search__submit svg {
      display: none; } }

@media only screen and (min-width: 48em) {
  .search__submit {
    position: relative;
    bottom: 0.625rem; } }

.search__error {
  display: none;
  color: red;
  position: absolute;
  bottom: -1.3rem;
  font-size: 0.6875rem; }
  @media only screen and (min-width: 60em) {
    .search__error {
      font-size: 1rem;
      position: relative;
      bottom: 0.625rem;
      margin-right: 1em; } }
  .search__error.is-active {
    display: block; }

.search__tagline {
  color: #000000;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.25;
  margin-bottom: 0.8rem; }
  @media only screen and (min-width: 48em) {
    .search__tagline {
      margin-bottom: 0.5rem; } }

.key-col > * + * {
  margin-top: 1.25em; }

.key-list > * + * {
  margin-top: 0.5em; }

.key-item {
  display: -ms-flexbox;
  display: flex; }
  .key-item:nth-of-type(1) .key-color {
    background-color: #D85D09; }
  .key-item:nth-of-type(2) .key-color {
    background-color: #E2A723; }
  .key-item:nth-of-type(3) .key-color {
    background-color: #F4CF31; }

.key-item-heading {
  color: #6A717D;
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.5; }
  .key-item-heading span {
    display: block; }

.key-color {
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%;
  margin-right: 0.5rem; }
  .key-color:nth-of-type(1) {
    background-color: #D85D09; }
  .key-color:nth-of-type(2) {
    background-color: #E2A723; }
  .key-color:nth-of-type(3) {
    background-color: #FEE33F; }

.finding {
  position: relative;
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  overflow: hidden; }
  @media only screen and (min-width: 48em) {
    .finding {
      padding-top: 5.3125rem;
      padding-bottom: 5.3125rem; } }
  @media only screen and (min-width: 80em) {
    .finding {
      padding-top: 9.375rem;
      padding-bottom: 9.375rem; } }
  @media only screen and (max-width: 47.9375em) {
    .finding:before {
      display: none; } }
  .finding--white {
    background-color: #FFFFFF; }
    .finding--white:before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      width: 45%;
      background-image: url("../images/triangle-small.svg");
      background-repeat: no-repeat;
      background-position: right bottom;
      background-size: contain; }
  .finding--black {
    color: #FFFFFF;
    background-color: #000000; }
  .finding:first-of-type {
    padding-top: 1.875rem; }
    @media only screen and (min-width: 48em) {
      .finding:first-of-type {
        padding-top: 3.75rem; } }
    @media only screen and (min-width: 80em) {
      .finding:first-of-type {
        padding-top: 5rem; } }

.finding__grid {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
  z-index: 1; }
  @media only screen and (min-width: 80em) {
    .finding__grid {
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-align: center;
          align-items: center; }
      .finding__grid--reverse {
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; } }

.finding__col {
  width: calc(100% - 1.875rem);
  margin: 0.9375rem; }
  @media only screen and (max-width: 47.9375em) {
    .finding__col {
      max-width: 33.75rem;
      margin-left: auto;
      margin-right: auto; } }
  @media only screen and (min-width: 80em) {
    .finding__col--chart {
      width: calc(58.33333% - 1.875rem);
      margin: 0.9375rem; } }
  @media only screen and (min-width: 80em) {
    .finding__col--text {
      width: calc(41.66667% - 1.875rem);
      margin: 0.9375rem; } }

.finding__gradient {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 50%;
  background-color: #000000;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: contain; }
  @media only screen and (min-width: 48em) {
    .finding__gradient {
      background-image: linear-gradient(to bottom, #03AEAB, #1858C6); } }
  .finding__gradient:before {
    content: '';
    position: absolute;
    top: 0;
    right: -0.0625rem;
    bottom: 0;
    left: 0;
    background-image: url("../images/triangle.svg");
    background-repeat: no-repeat;
    background-position: right bottom; }
    @media only screen and (min-width: 48em) {
      .finding__gradient:before {
        background-size: 53.125rem; } }
    @media only screen and (min-width: 60em) {
      .finding__gradient:before {
        background-size: 50.5rem; } }
    @media only screen and (min-width: 80em) {
      .finding__gradient:before {
        background-size: 46.625rem; } }
  @media only screen and (min-width: 48em) {
    .finding__gradient--2:before {
      background-size: 63.125rem; } }
  @media only screen and (min-width: 60em) {
    .finding__gradient--2:before {
      background-size: 56.75rem; } }
  @media only screen and (min-width: 80em) {
    .finding__gradient--2:before {
      background-size: 52.625rem; } }

.finding__main-title {
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 500;
  color: #00CDCA; }
  @media only screen and (min-width: 48em) {
    .finding__main-title {
      font-size: 2rem;
      line-height: 1.875; } }
  @media only screen and (min-width: 80em) {
    .finding__main-title {
      font-size: 3rem;
      line-height: 1.25; } }

@media only screen and (min-width: 48em) {
  .finding__main {
    position: relative;
    padding: 2.5rem;
    width: calc(100% - 2.25rem); } }

.finding--white .finding__main {
  background-color: #FFFFFF; }

@media only screen and (min-width: 48em) {
  .finding--white .finding__main:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 50%;
    box-shadow: 1.875rem 1.875rem 3.125rem 0 rgba(0, 1, 107, 0.06); } }

@media only screen and (min-width: 48em) {
  .finding__main:after {
    content: '';
    position: absolute;
    top: calc(100% + 0.375rem);
    left: calc(100% + 0.375rem);
    display: block;
    width: 0.75rem;
    height: 0.75rem;
    border-top: 0.125rem solid #000000;
    border-left: 0.125rem solid #000000; }
    .finding--black .finding__main:after {
      top: auto;
      bottom: 0;
      left: 0.25rem;
      border-color: #FFFFFF;
      border-right: 0.125rem solid #FFFFFF;
      border-left: none; } }

.finding__title {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .finding__title {
      font-size: 2rem; } }
  @media only screen and (min-width: 80em) {
    .finding__title {
      font-size: 2.75rem; } }
  .finding--white .finding__title {
    color: #000000; }
  .finding--black .finding__title {
    color: #FFFFFF; }

.finding__strong {
  color: #FEE33F; }

.finding__subtitle {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.33333; }
  @media only screen and (min-width: 48em) {
    .finding__subtitle {
      font-size: 1.875rem; } }

.finding__text {
  margin-top: 1em; }
  .finding__text > * + * {
    margin-top: 1em; }
  .finding__text p {
    font-size: 1rem;
    line-height: 1.5;
    color: #6A717D; }
    .finding--black .finding__text p {
      color: #FFFFFF; }

.finding__label {
  position: absolute;
  bottom: 100%;
  white-space: nowrap;
  font-size: 0.75rem;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.125rem; }
  @media only screen and (max-width: 47.9375em) {
    .finding__label {
      display: none; } }
  .finding__label:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    display: block;
    width: 0.75rem;
    height: 0.75rem;
    border-bottom: 0.125rem solid #000000;
    border-right: 0.125rem solid #000000; }
  .finding__label--right {
    left: calc(100% + 0.25rem);
    -ms-transform-origin: 0% 100%;
        transform-origin: 0% 100%;
    -ms-transform: rotate(90deg);
        transform: rotate(90deg);
    padding-left: 3.6em; }
  .finding__label--left {
    right: 100%;
    -ms-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
    -ms-transform: rotate(-90deg) translateY(100%);
        transform: rotate(-90deg) translateY(100%);
    padding-right: 3.6em;
    color: #FFFFFF; }
    .finding__label--left:before {
      border-color: #FFFFFF;
      right: 0;
      left: auto;
      border-left: 0.125rem solid #FFFFFF;
      border-right: none; }

.finding__symbol {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }
  @media only screen and (max-width: 47.9375em) {
    .finding__symbol {
      display: none; } }
  .finding__symbol--1 {
    right: 2vw;
    bottom: 1vw;
    width: 16.3125rem;
    height: 16.8125rem;
    background-image: url("../images/finding-symbol-1.svg"); }
  .finding__symbol--2 {
    left: -11.875rem;
    top: -5.625rem;
    width: 15.25rem;
    height: 11.375rem;
    background-image: url("../images/finding-symbol-2.svg"); }
  .finding__symbol--3 {
    right: 2vw;
    bottom: 1vw;
    width: 20.5625rem;
    height: 11.625rem;
    background-image: url("../images/finding-symbol-3.svg"); }
  .finding__symbol--4 {
    left: -16rem;
    top: -4.9375rem;
    width: 14.9375rem;
    height: 13.9375rem;
    background-image: url("../images/finding-symbol-4.svg"); }
  .finding__symbol--5 {
    right: 3vw;
    bottom: 1vw;
    width: 15.9375rem;
    height: 16.3125rem;
    background-image: url("../images/finding-symbol-5.svg"); }

.finding-infographic {
  width: 90%;
  max-width: 45.25rem;
  margin-left: auto;
  margin-right: auto;
  background-image: url("../images/finding-5.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }
  .finding-infographic:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 52.48619%; }

.legend {
  text-align: left; }
  @media only screen and (max-width: 59.9375em) {
    .legend {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center; } }
  @media only screen and (min-width: 60em) {
    .legend--row {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center; } }

.legend__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start; }
  @media only screen and (max-width: 59.9375em) {
    .legend__item {
      margin: 0.375rem; } }
  @media only screen and (min-width: 60em) {
    .legend__item + .legend__item {
      margin-top: 0.75rem; } }
  .legend--row .legend__item {
    margin: 0.375rem; }

.legend__color {
  width: 1.125rem;
  height: 1.125rem;
  margin-right: 0.625rem;
  border-radius: 50%;
  background-color: #6A717D; }
  .legend__color--1 {
    background-color: #F8E668; }
  .legend__color--2 {
    background-color: #00CDCA; }
  .legend__color--3 {
    background-color: #DDDB5D; }
  .legend__color--4 {
    background-color: #BED86D; }
  .legend__color--5 {
    background-color: #F7DA1F; }
  .legend__color--6 {
    background-color: #F5E52D; }

.legend__text {
  font-size: 0.75rem;
  font-weight: 400;
  text-transform: uppercase;
  color: #6A717D; }
  .legend--row .legend__text {
    text-transform: none; }

.testimonials {
  padding-top: 3.125rem;
  padding-bottom: 1.5625rem;
  color: #FFFFFF;
  text-align: center;
  background-color: #000000; }
  @media only screen and (min-width: 48em) {
    .testimonials {
      padding-top: 4.375rem;
      padding-bottom: 2.1875rem; } }
  @media only screen and (min-width: 60em) {
    .testimonials {
      padding-top: 6.25rem;
      padding-bottom: 3.125rem;
      text-align: left; } }

.testimonials__title {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .testimonials__title {
      font-size: 2rem; } }
  @media only screen and (min-width: 60em) {
    .testimonials__title {
      font-size: 3rem; } }

.testimonials__text {
  margin-top: 1em;
  max-width: 56em; }

.testimonials__grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  margin-left: -0.9375rem;
  margin-right: -0.9375rem; }
  @media only screen and (min-width: 48em) {
    .testimonials__grid {
      margin-top: 1.875rem;
      -ms-flex-direction: row;
          flex-direction: row; } }
  @media only screen and (min-width: 60em) {
    .testimonials__grid {
      margin-top: 3.125rem; } }
  @media only screen and (min-width: 80em) {
    .testimonials__grid {
      -ms-flex-align: start;
          align-items: flex-start; } }

.testimonial {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  max-width: 22.5rem;
  width: calc(100% - 1.875rem);
  margin: 0.9375rem; }
  @media only screen and (min-width: 48em) {
    .testimonial {
      width: calc(50% - 1.875rem);
      margin: 0.9375rem; } }
  @media only screen and (min-width: 60em) {
    .testimonial {
      width: calc(33.33333% - 1.875rem);
      margin: 0.9375rem;
      -ms-flex-align: start;
          align-items: flex-start; } }
  @media only screen and (min-width: 80em) {
    .testimonial {
      width: calc(25% - 1.875rem);
      margin: 0.9375rem; } }

.testimonial__thumb {
  width: 70%;
  max-width: 20rem;
  overflow: hidden;
  border-radius: 50%;
  background-color: #6A717D;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media only screen and (min-width: 48em) {
    .testimonial__thumb {
      width: 100%;
      max-width: 16.25rem; } }
  @media only screen and (min-width: 80em) {
    .testimonial__thumb {
      max-width: 20rem; } }
  .testimonial__thumb:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%; }

.testimonial__title {
  margin-top: 1.8em;
  font-size: 0.875rem;
  font-weight: 400; }
  @media only screen and (min-width: 48em) {
    .testimonial__title {
      font-size: 1.25rem; } }

.testimonial:nth-child(1) .testimonial__name {
  color: #00CDCA; }

.testimonial:nth-child(2) .testimonial__name {
  color: #3378E6; }

.testimonial:nth-child(3) .testimonial__name {
  color: #E4C826; }

.testimonial:nth-child(4) .testimonial__name {
  color: #E2A723; }

.testimonial__company {
  display: block; }

.testimonial__quote {
  width: 100%;
  margin-top: 1em; }

.about-hero {
  position: relative;
  padding-top: 8.75rem;
  padding-bottom: 5rem;
  overflow: hidden;
  color: #FFFFFF;
  background-image: linear-gradient(to bottom, #03AEAB, #139EBE); }
  @media only screen and (min-width: 48em) {
    .about-hero {
      padding-bottom: 8.125rem; } }
  @media only screen and (min-width: 60em) {
    .about-hero {
      padding-top: 10.625rem; } }
  @media only screen and (min-width: 80em) {
    .about-hero {
      padding-bottom: 6.25rem; } }
  .about-hero:before {
    content: '';
    position: absolute;
    top: -0.0625rem;
    right: 0;
    bottom: -0.0625rem;
    display: none;
    width: 100%;
    background-image: url("../images/triangle.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain; }
    @media only screen and (min-width: 34.375em) {
      .about-hero:before {
        display: block; } }
    @media only screen and (min-width: 60em) {
      .about-hero:before {
        background-image: url("../images/about-hero-symbol-small.svg"); }
        .is-content .about-hero:before {
          background-image: url("../images/triangle.svg"); } }

.about-hero__main {
  position: relative; }

.about-hero__title {
  font-size: 1.25rem;
  font-weight: 400; }
  @media only screen and (min-width: 48em) {
    .about-hero__title {
      font-size: 2rem; } }
  @media only screen and (min-width: 80em) {
    .about-hero__title {
      font-size: 3rem; } }

.about-hero__text {
  max-width: 38em;
  margin-top: 0.625rem;
  font-size: 0.875rem;
  line-height: 1.5; }
  @media only screen and (min-width: 80em) {
    .about-hero__text {
      font-size: 1rem; } }

.about__title {
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .about__title {
      font-size: 2rem;
      line-height: 1.875; } }
  @media only screen and (min-width: 80em) {
    .about__title {
      font-size: 3rem;
      line-height: 1.25; } }
  .about__title--blue {
    color: #3378E6; }
  .about__title--aqua {
    color: #00CDCA; }

.about-block {
  position: relative;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem; }
  .about__heading + .about-block {
    padding-top: 1.25rem; }
  @media only screen and (min-width: 48em) {
    .about-block {
      padding-top: 3.125rem;
      padding-bottom: 3.125rem; }
      .about__heading + .about-block {
        padding-top: 1.5625rem; } }
  @media only screen and (min-width: 80em) {
    .about-block {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; }
      .about__heading + .about-block {
        padding-top: 1.875rem; } }
  .about-block + .about-block:before,
  .about-block + .about__heading:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    display: block;
    width: calc(100% - 1.875rem);
    height: 0.125rem;
    background-color: #F0F4FA; }
    @media only screen and (min-width: 48em) {
      .about-block + .about-block:before,
      .about-block + .about__heading:before {
        max-width: 36.5rem; } }
    @media only screen and (min-width: 60em) {
      .about-block + .about-block:before,
      .about-block + .about__heading:before {
        max-width: 62.125rem; } }
    @media only screen and (min-width: 80em) {
      .about-block + .about-block:before,
      .about-block + .about__heading:before {
        max-width: 88.125rem; } }
  .about-block:last-child:after {
    content: '';
    position: absolute;
    right: -0.0625rem;
    bottom: -0.0625rem;
    display: none;
    width: 100%;
    max-width: 31.25rem;
    height: 0;
    padding-bottom: 110.66482%;
    background-image: url("../images/triangle-small.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain; }
    @media only screen and (min-width: 60em) {
      .about-block:last-child:after {
        display: block; } }
    @media only screen and (min-width: 80em) {
      .about-block:last-child:after {
        max-width: 45.125rem; } }
  .about-block .container {
    position: relative;
    z-index: 1; }

@media only screen and (min-width: 60em) {
  .about-block__grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: start;
        align-items: flex-start;
    margin-left: -0.9375rem;
    margin-right: -0.9375rem; } }

@media only screen and (min-width: 60em) {
  .about-block__col--1 {
    width: calc(41.66667% - 1.875rem);
    margin: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .about-block__col--2 {
    width: calc(50% - 1.875rem);
    margin: 0.9375rem;
    margin-left: calc(8.33333% + 0.9375rem); } }

@media only screen and (min-width: 60em) {
  .about-block__col--3 {
    width: calc(66.66667% - 1.875rem);
    margin: 0.9375rem;
    margin-left: calc(16.66667% + 0.9375rem); } }

.about-block__box {
  display: none; }
  @media only screen and (min-width: 60em) {
    .about-block__box {
      display: block;
      height: 22.5rem;
      padding: 3.75rem;
      text-align: center;
      background-color: #FFFFFF;
      box-shadow: 1.875rem 1.875rem 3.125rem 0 rgba(0, 1, 107, 0.06); } }

.about-block__logo {
  display: inline-block;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }
  .about-block__logo--nesta {
    max-width: 25.25rem;
    background-image: url("../images/logo-nesta.svg"); }
    .about-block__logo--nesta:before {
      content: '';
      display: block;
      width: 100%;
      height: 0;
      padding-bottom: 40.09901%; }
  .about-block__logo--sage {
    max-width: 19.6875rem;
    background-image: url("../images/logo-sage2.svg"); }
    .about-block__logo--sage:before {
      content: '';
      display: block;
      width: 100%;
      height: 0;
      padding-bottom: 38.09524%; }

.about-block__title {
  font-size: 1.5rem;
  line-height: 1.25;
  font-weight: 400; }
  @media only screen and (min-width: 48em) {
    .about-block__title {
      font-size: 2rem; } }
  @media only screen and (min-width: 80em) {
    .about-block__title {
      font-size: 3rem; } }

.about-block__strong {
  color: #F0C726; }

.about-block__text {
  margin-top: 1.5em;
  font-size: 0.875rem;
  line-height: 1.71429;
  color: #6A717D; }
  @media only screen and (min-width: 48em) {
    .about-block__text {
      font-size: 1rem; } }
  .about-block__text a {
    color: #00CDCA; }

.about-block__btn {
  margin-top: 2em; }

.about__heading {
  position: relative;
  padding-top: 1.875rem; }
  @media only screen and (min-width: 48em) {
    .about__heading {
      padding-top: 3.75rem; } }

.about__title {
  font-size: 0.875rem;
  font-weight: 500; }
  @media only screen and (min-width: 48em) {
    .about__title {
      font-size: 1.75rem; } }
  @media only screen and (min-width: 60em) {
    .about__title {
      width: calc(66.66667% - 1.875rem);
      margin: 0.9375rem;
      margin-left: calc(16.66667% + 0.9375rem); } }

.cookies {
  position: fixed;
  left: 0;
  bottom: 0;
  right: 0;
  -ms-transform: translateY(100%);
      transform: translateY(100%);
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
  z-index: 100;
  background-color: #FEE33F;
  transition: transform 0.8s cubic-bezier(0.65, 0.05, 0.36, 1) 0.2s; }
  @media only screen and (min-width: 48em) {
    .cookies {
      padding-top: 1.875rem;
      padding-bottom: 1.875rem; } }
  .cookies.is-active {
    -ms-transform: translateY(0);
        transform: translateY(0); }

@media only screen and (min-width: 48em) {
  .cookies__grid {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: justify;
        justify-content: space-between; } }

@media only screen and (min-width: 48em) {
  .cookies__row:first-child {
    width: 60%; } }

@media only screen and (max-width: 47.9375em) {
  .cookies__row + .cookies__row {
    margin-top: 1em; } }

.cookies__text {
  font-size: 0.75rem; }
  @media only screen and (min-width: 48em) {
    .cookies__text {
      font-size: 0.875rem; } }

.map-tooltip {
  position: fixed;
  top: 0;
  left: 0;
  -ms-transform: translate(-50%, -140%);
      transform: translate(-50%, -140%);
  display: inline-block;
  padding: 0.5rem 0.625rem;
  font-size: 0.875rem;
  color: #000000;
  border-radius: 0.3125rem;
  background-color: #FFFFFF;
  box-shadow: rgba(0, 0, 0, 0.3) 0 0 0.875rem;
  transition: opacity 0.1s ease; }
  .map-tooltip:before {
    content: '';
    display: block;
    position: absolute;
    top: calc(100% - 0.0625rem);
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    border-top: 0.375rem solid #FFFFFF;
    border-left: 0.375rem solid transparent;
    border-right: 0.375rem solid transparent; }

.results {
  position: absolute;
  top: 100%;
  left: 0.9375rem;
  right: 0.9375rem;
  -ms-transform: translateY(1em);
      transform: translateY(1em);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  z-index: 3;
  background-color: #6A717D;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out, visibility 0s 0.2s; }
  .results.is-active {
    visibility: visible;
    opacity: 1;
    -ms-transform: translateY(0);
        transform: translateY(0);
    transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out; }

.results__link {
  display: block;
  padding: 0.8em 1em;
  font-size: 0.875rem;
  color: #FFFFFF;
  text-decoration: none;
  transition: all 0.2s ease-in-out; }
  @media only screen and (min-width: 48em) {
    .results__link {
      font-size: 1.125rem; } }
  .results__link:hover, .results__link:active, .results__link:focus {
    -ms-transform: translateX(0.2em);
        transform: translateX(0.2em);
    color: #FEE33F;
    outline: none; }
  .results__link + .results__link {
    border-top: 0.0625rem solid #1A202E; }

.wysiwyg {
  padding-top: 2em;
  padding-bottom: 2em; }
  .wysiwyg > * + * {
    margin-top: 1em; }
  @media only screen and (min-width: 48em) {
    .wysiwyg {
      padding-top: 3em;
      padding-bottom: 3em; } }
  .wysiwyg h3 {
    font-size: 0.875rem;
    font-weight: 500; }
    @media only screen and (min-width: 48em) {
      .wysiwyg h3 {
        font-size: 1.75rem; } }
  .wysiwyg h4 {
    font-size: 0.75rem;
    font-weight: 500; }
    @media only screen and (min-width: 48em) {
      .wysiwyg h4 {
        font-size: 1.3125rem; } }
  .wysiwyg table {
    text-align: left;
    border-collapse: collapse; }
  .wysiwyg table,
  .wysiwyg th,
  .wysiwyg td {
    border: 0.0625rem solid; }
  .wysiwyg th,
  .wysiwyg td {
    padding: 0.5em; }
  .wysiwyg ul {
    padding-left: 1.1em;
    list-style: disc; }
  .wysiwyg a {
    color: #00CDCA; }

.four-o-four {
  padding-top: 10rem;
  padding-bottom: 1.25rem;
  color: #FFFFFF;
  background-color: #000000; }

.intro {
  position: relative;
  padding-bottom: 1.875rem;
  overflow: hidden;
  color: #FFFFFF; }
  @media only screen and (max-width: 59.9375em) {
    .intro {
      background-color: #000000; } }

@media only screen and (min-width: 60em) {
  .intro__main {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: stretch;
        align-items: stretch; } }

@media only screen and (min-width: 60em) {
  .intro__col {
    width: 50%; } }

.intro__col:first-child > * + * {
  margin-top: 1.25em; }

@media only screen and (max-width: 59.9375em) {
  .intro__col:first-child {
    padding: 1.875rem 0; } }

.explore__heading {
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .explore__heading {
      font-size: 2rem;
      line-height: 1.875; } }
  @media only screen and (min-width: 80em) {
    .explore__heading {
      font-size: 3rem;
      line-height: 1.25; } }

.explore__body-text {
  font-weight: 300;
  font-size: 0.75rem;
  line-height: 1.8; }
  @media only screen and (min-width: 48em) {
    .explore__body-text {
      font-size: 0.875rem;
      line-height: 1.71429; } }
  @media only screen and (min-width: 80em) {
    .explore__body-text {
      font-size: 1rem;
      line-height: 1.5; } }

.footer {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  color: #FFFFFF;
  background-color: #000000; }
  @media only screen and (min-width: 48em) {
    .footer {
      padding-top: 3.75rem;
      padding-bottom: 3.75rem; } }

.footer__row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100%; }
  @media only screen and (min-width: 34.375em) {
    .footer__row:first-child {
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
      -ms-flex-pack: justify;
          justify-content: space-between; } }
  .footer__row:last-child {
    margin-top: 3.125rem;
    padding-top: 1.5rem;
    border-top: 0.125rem solid #FFFFFF; }
    @media only screen and (min-width: 60em) {
      .footer__row:last-child {
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
        -ms-flex-align: end;
            align-items: flex-end;
        -ms-flex-pack: justify;
            justify-content: space-between; } }

.footer__logos {
  width: 13rem;
  background-image: url("../images/footer-logos.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain; }
  @media only screen and (max-width: 34.3125em) {
    .footer__logos {
      margin-top: 2.25rem; } }
  @media only screen and (min-width: 48em) {
    .footer__logos {
      width: 16.5625rem; } }
  .footer__logos:before {
    content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 24.15094%; }

@media only screen and (max-width: 59.9375em) {
  .footer__legal {
    margin-top: 0.9375rem; } }

@media only screen and (min-width: 60em) {
  .footer__legal {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 60%; } }

@media only screen and (min-width: 48em) {
  .footer__cc {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center; } }

@media only screen and (max-width: 47.9375em) {
  .footer__cc img {
    margin-bottom: 1em; } }

@media only screen and (min-width: 48em) {
  .footer__cc img {
    margin-right: 1em; } }

.footer__copy {
  width: 100%;
  font-size: 0.75rem;
  font-weight: 400; }
  @media only screen and (max-width: 34.3125em) {
    .footer__copy {
      text-align: center; } }
  .footer__copy + .footer__copy {
    margin-top: 1em; }
  .footer__copy a {
    color: #E2A723; }

.footer__nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center; }
  @media only screen and (min-width: 34.375em) {
    .footer__nav {
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: end;
          justify-content: flex-end;
      -ms-flex: 1;
          flex: 1; } }

.footer__link,
.footer__label {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.10625rem; }

.footer__link {
  font-weight: 600;
  color: #FFFFFF;
  text-decoration: none; }
  .footer__link + .footer__link {
    margin-left: 1em; }

.footer__label {
  margin-right: 1.25rem; }
  @media only screen and (max-width: 34.3125em) {
    .footer__label {
      display: none; } }

.footer__seperator {
  display: none;
  width: 0.125rem;
  height: 1.125rem;
  margin-left: 0.625rem;
  margin-right: 0.625rem;
  background-color: rgba(255, 255, 255, 0.4); }
  @media only screen and (min-width: 34.375em) {
    .footer__seperator {
      display: block;
      margin-left: 1.25rem;
      margin-right: 1.25rem; } }

@media only screen and (max-width: 34.3125em) {
  .footer__share {
    margin-top: 1em; } }

.hero {
  color: #FFFFFF;
  padding-top: 10rem;
  padding-bottom: 2.875rem; }
  @media only screen and (min-width: 34.375em) {
    .hero {
      padding-top: 10rem; } }
  @media only screen and (min-width: 48em) {
    .hero {
      padding-top: 11.25rem; } }
  @media only screen and (min-width: 60em) {
    .hero {
      padding-top: 12.5rem; } }

.hero__grid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start; }

@media only screen and (min-width: 60em) {
  .hero__col-1 {
    width: 50%; }
    .hero__col-1 > * + * {
      margin-top: 2em; } }

@media only screen and (min-width: 80em) {
  .hero__col-1 {
    width: 50%; } }

@media only screen and (max-width: 59.9375em) {
  .hero__col-2 {
    margin-top: 1.875rem; } }

@media only screen and (min-width: 60em) {
  .hero__col-2 {
    position: relative;
    width: 41.66667%;
    margin-left: calc(8.33333%);
    margin-top: 1.875rem; } }

.hero__title-container > * + * {
  margin-top: 1.25em; }

.hero__title {
  position: relative;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.125; }
  @media only screen and (min-width: 48em) {
    .hero__title {
      font-size: 4rem;
      line-height: 1.125; } }
  @media only screen and (min-width: 80em) {
    .hero__title {
      font-size: 4.5rem;
      line-height: 1.11111; } }
  @media only screen and (min-width: 80em) {
    .hero__title {
      font-size: 4.25rem;
      line-height: 1.1; } }
  .hero__title:before {
    content: '';
    position: absolute;
    top: -5rem;
    left: -5rem;
    display: block;
    width: 12.3125rem;
    height: 12.8125rem;
    background-image: url("../images/hero-symbol.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain; }
    @media only screen and (max-width: 59.9375em) {
      .hero__title:before {
        display: none; } }
  .hero__title span {
    position: relative; }
    .hero__title span:first-of-type {
      font-weight: 300;
      display: block; }
    .hero__title span:last-of-type {
      font-weight: 400; }

.hero__tagline {
  position: relative;
  color: #FEE33F;
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.27273;
  text-transform: uppercase;
  letter-spacing: 0.0625rem;
  font-weight: 400; }
  @media only screen and (min-width: 48em) {
    .hero__tagline {
      font-size: 1rem;
      line-height: 1.1875; } }
  @media only screen and (min-width: 80em) {
    .hero__tagline {
      font-size: 1.375rem;
      line-height: 1.22727; } }

.hero__button-container {
  position: relative;
  margin-top: 1.5625rem;
  z-index: 2; }
  @media only screen and (max-width: 47.9375em) {
    .hero__button-container {
      display: -ms-inline-flexbox;
      display: inline-flex;
      -ms-flex-direction: column;
          flex-direction: column; }
      .hero__button-container > * + * {
        margin-top: 1.25em; } }
  @media only screen and (min-width: 48em) {
    .hero__button-container {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: row;
          flex-direction: row;
      -ms-flex-pack: start;
          justify-content: flex-start;
      margin-left: -0.4375rem; } }
  .hero__button-container .btn {
    white-space: nowrap; }
    @media only screen and (max-width: 47.9375em) {
      .hero__button-container .btn {
        display: -ms-inline-flexbox;
        display: inline-flex;
        -ms-flex-pack: justify;
            justify-content: space-between; } }
    @media only screen and (min-width: 48em) {
      .hero__button-container .btn {
        margin: 0.4375rem; } }

.hero__key-findings > * + * {
  margin-top: 1.25em; }

@media only screen and (min-width: 60em) {
  .hero__key-findings > * + * {
    margin-top: 3em; } }

.hero__key-finding {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }

.hero__svg-container {
  width: 3.75rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-right: 1.375rem; }
  @media only screen and (min-width: 60em) {
    .hero__svg-container {
      width: 5.625rem; } }
  @media only screen and (min-width: 80em) {
    .hero__svg-container {
      width: 7.5rem;
      margin-right: 3.75rem; } }

.hero__key-finding-headline {
  -ms-flex: 1;
      flex: 1;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.71429;
  letter-spacing: 0.125rem; }
  @media only screen and (min-width: 80em) {
    .hero__key-finding-headline {
      font-size: 1.25rem;
      line-height: 1.5; } }
  .hero__key-finding-headline:before {
    display: inline;
    content: "// "; }

.hero__body-text-container {
  margin-top: 1.875rem; }
  .hero__body-text-container > * + * {
    margin-top: 1.25em; }

.hero__body-text {
  font-weight: 300;
  font-size: 0.75rem;
  line-height: 1.8; }
  @media only screen and (min-width: 48em) {
    .hero__body-text {
      font-size: 0.875rem;
      line-height: 1.71429; } }
  @media only screen and (min-width: 80em) {
    .hero__body-text {
      font-size: 1rem;
      line-height: 1.5; } }
  @media only screen and (min-width: 80em) {
    .hero__body-text {
      font-size: 0.9rem; } }

@media only screen and (max-width: 47.9375em) {
  .hero__divider-hr {
    display: none; } }

@media only screen and (min-width: 48em) {
  .hero__divider-hr {
    margin-top: 3.75rem;
    margin-bottom: 0.875rem; } }

@media only screen and (min-width: 60em) {
  .hero__divider-hr {
    margin-top: 4.8125rem;
    margin-bottom: 0.625rem; } }

.map {
  position: relative; }
  @media only screen and (min-width: 60em) {
    .map {
      min-height: 31.25rem; }
      .map:before {
        content: '';
        display: block;
        width: 100%;
        height: 0;
        padding-bottom: 100%; } }
  .map svg {
    display: block; }

.map__inner {
  width: 100%;
  max-width: 61.25rem;
  margin-left: auto;
  margin-right: auto; }
  @media only screen and (min-width: 60em) {
    .map__inner {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; } }

.map__controls {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10; }

@media only screen and (max-width: 59.9375em) {
  .map__key-description {
    width: 100%; } }

@media only screen and (min-width: 60em) {
  .map__layer-controls {
    position: absolute;
    bottom: 0;
    left: -100%;
    display: -ms-flexbox;
    display: flex; } }

@media only screen and (max-width: 59.9375em) {
  .map__layer-selectors {
    display: -ms-flexbox;
    display: flex;
    margin-right: -0.9375rem;
    padding-bottom: 0.9375rem;
    overflow: auto; } }

@media only screen and (min-width: 60em) {
  .map__layer-selectors {
    padding: 1.125rem;
    background-color: #000000; } }

.map__layer-keys {
  padding: 0.875rem;
  color: #F0F4FA;
  font-size: 0.625rem;
  line-height: 1.8;
  background-color: #1A202E; }
  @media only screen and (min-width: 60em) {
    .map__layer-keys {
      width: 15em;
      padding: 1.125rem; } }
  @media only screen and (min-width: 60em) {
    .map__layer-keys {
      font-size: 0.75rem; } }

.map__layer-keys-list {
  margin-top: auto; }
  @media only screen and (max-width: 59.9375em) {
    .map__layer-keys-list {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      -ms-flex-align: start;
          align-items: flex-start;
      -ms-flex-pack: distribute;
          justify-content: space-around; } }
  @media only screen and (min-width: 60em) {
    .map__layer-keys-list > * + * {
      margin-top: 0.5em; } }

.map__key-label {
  font-size: 0.75rem; }

.map__key-band {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: column;
      flex-direction: column; }
  @media only screen and (max-width: 59.9375em) {
    .map__key-band {
      margin: 0.25rem; } }
  @media only screen and (min-width: 60em) {
    .map__key-band {
      -ms-flex-direction: row;
          flex-direction: row; } }

.map__key-color {
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50%; }
  @media only screen and (min-width: 60em) {
    .map__key-color {
      margin-right: 1rem; } }

.map__control-list-item {
  display: block; }
  @media only screen and (max-width: 59.9375em) {
    .map__control-list-item + .map__control-list-item {
      margin-left: 0.5625rem; } }
  @media only screen and (min-width: 60em) {
    .map__control-list-item:last-of-type .map__layer-btn {
      padding-bottom: 0.9375rem; } }
  @media only screen and (min-width: 60em) {
    .map__control-list-item:last-of-type .map__layer-btn:after {
      display: none; } }

.map__layer-btn {
  position: relative;
  width: 100%;
  height: auto;
  line-height: 1; }
  @media only screen and (max-width: 59.9375em) {
    .map__layer-btn {
      padding: 0.75rem;
      font-weight: 400;
      white-space: nowrap;
      border: 0.125rem solid rgba(255, 255, 255, 0.16);
      border-radius: 6.25rem; } }
  @media only screen and (min-width: 60em) {
    .map__layer-btn {
      display: -ms-inline-flexbox;
      display: inline-flex;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
      padding-top: 0.9375rem;
      border: none;
      border-radius: 0; } }
  .map__layer-btn:focus {
    outline: none; }
  .map__layer-btn:after {
    content: ''; }
    @media only screen and (min-width: 60em) {
      .map__layer-btn:after {
        display: block;
        height: 1px;
        width: 100%;
        background-color: #6A717D;
        margin-top: 0.9375rem; } }
  @media only screen and (max-width: 59.9375em) {
    .map__layer-btn.is-active {
      color: #000000;
      background-color: #FEE33F; } }
  @media only screen and (min-width: 60em) {
    .map__layer-btn.is-active {
      color: #FEE33F; } }
  @media only screen and (max-width: 59.9375em) {
    .map__layer-btn.is-active:after {
      position: absolute;
      top: 100%;
      left: 50%;
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
      border-top: 0.5rem solid #FEE33F;
      border-left: 0.5rem solid transparent;
      border-right: 0.5rem solid transparent; } }

.map__control-key {
  display: none; }
  .map__control-key.is-active {
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-direction: column;
        flex-direction: column; }

.chart__heading-container {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  width: 100%; }

.chart__heading {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.71429;
  display: inline-block;
  width: 100%; }
  @media only screen and (min-width: 80em) {
    .chart__heading {
      font-size: 1.25rem;
      line-height: 1.5; } }
  .chart__heading .heading-span {
    font-weight: 400;
    font-size: 0.5em; }

.chart__title {
  font-size: 0.875rem;
  font-weight: 500;
  text-align: center; }
  @media only screen and (min-width: 48em) {
    .chart__title {
      font-size: 1.125rem; } }
  .chart__title--bar {
    margin-bottom: 0.625rem; }

.chart__info {
  display: none;
  position: absolute;
  background-color: #f2f3f4;
  padding: 1rem;
  left: 0;
  box-shadow: 0.5rem 0.5rem 1rem 0 rgba(106, 113, 125, 0.2);
  bottom: 3rem;
  font-size: 0.8em; }
  @media only screen and (min-width: 60em) {
    .chart__info {
      bottom: 5rem;
      min-width: 16rem; } }
  .chart__info.is-active {
    display: block;
    z-index: 1; }
  .chart__info > * + * {
    margin-top: 1.25em; }

.chart__number {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.07rem; }
  @media only screen and (min-width: 48em) {
    .chart__number {
      font-size: 2.25rem; } }
  .chart__number .percent-span {
    font-size: 0.5em; }
  .la__light-orange .chart__number {
    color: #F4CF31; }
  .la__orange .chart__number {
    color: #E2A723; }
  .la__mid-orange .chart__number {
    color: #DD8112; }
  .la__dark-orange .chart__number {
    color: #D85D09; }
  .la__dark-blue .chart__number {
    color: #2438A0; }
  .la__blue .chart__number {
    color: #2365D6; }
  .la__medium-aqua .chart__number {
    color: #00A9CD; }
  .la__aqua .chart__number {
    color: #00CDCA; }

.chart__number--l {
  font-size: 4.375rem; }
  @media only screen and (min-width: 60em) {
    .chart__number--l {
      font-size: 5rem; } }

.chart__number--m {
  font-size: 2.5rem; }
  @media only screen and (min-width: 60em) {
    .chart__number--m {
      font-size: 3.125rem; } }

.chart__icon-container {
  width: 3.875rem; }
  @media only screen and (max-width: 34.3125em) {
    .chart__icon-container {
      display: none; } }

.chart__circle-container {
  width: 7.5rem; }
  @media only screen and (max-width: 34.3125em) {
    .chart__circle-container {
      margin-left: auto;
      margin-right: auto; } }
  @media only screen and (min-width: 34.375em) {
    .chart__circle-container {
      width: 100%; } }

.chart__circle {
  position: relative;
  width: 7.5rem;
  height: 7.5rem;
  border: 0.5rem solid #FFFFFF;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto; }
  .chart__circle .chart__number {
    position: absolute;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }

.bb svg {
  display: block; }

.bb-tooltip {
  border: none; }
  .bb-tooltip tr, .bb-tooltip td {
    border: none; }
  .bb-tooltip th {
    font-weight: 500;
    background-color: #FFFFFF;
    color: #000000; }

.tick {
  font-family: "Montserrat", sans-serif; }

.bb-axis-y .domain {
  opacity: 0; }

.bb-axis-x .domain {
  stroke: #F0F4FA;
  stroke-width: 0.125rem; }
  .chart-section--pale .bb-axis-x .domain {
    stroke: #FFFFFF; }
  .bar-chart--dark .bb-axis-x .domain {
    stroke: #292929; }

.bb-axis-y .tick line, .bb-axis-x .tick line {
  stroke: none; }

.bar-chart .bb-axis-x-label, .bar-chart
.bb-axis-y-label, .bar-chart
.bb-axis-y2-label {
  font-size: 0.75rem;
  font-family: "Montserrat", sans-serif;
  text-transform: uppercase;
  fill: #292929;
  font-weight: 600; }

.bar-chart--dark .bb-axis-x-label, .bar-chart--dark
.bb-axis-y-label, .bar-chart--dark
.bb-axis-y2-label {
  fill: #FEE33F;
  font-weight: 400; }

.bar-chart--dark .bb-tooltip-container {
  color: #000000; }

@media only screen and (max-width: 34.3125em) {
  #finding-3 .bb-tooltip-container {
    left: 0 !important; } }

.bar-chart--dark .bb-tooltip td,
.donut-chart .bb-tooltip td, .bar-chart--dark
.bb-tooltip th,
.donut-chart
.bb-tooltip th {
  color: #FFFFFF;
  background-color: #000000; }

.bar-chart--dark .bb-tooltip td.value,
.donut-chart .bb-tooltip td.value {
  color: #FEE33F; }

.bar-chart__container {
  overflow: hidden; }
  @media only screen and (max-width: 59.9375em) {
    .bar-chart__container--large {
      overflow: auto; } }

.la-bar-chart .tick text {
  fill: #6A717D;
  font-size: 0.75rem;
  font-weight: 500; }

.la-bar-chart .bb-ygrid {
  stroke-dasharray: 0;
  stroke-width: 0.125rem;
  stroke: #F0F4FA; }
  .chart-section--pale .la-bar-chart .bb-ygrid {
    stroke: #FFFFFF; }

@media only screen and (max-width: 59.9375em) {
  .la-bar-chart--large {
    min-width: 800px; } }

.bar-chart {
  min-height: 440px; }
  .bar-chart--small {
    max-width: 31.25rem;
    margin-left: auto;
    margin-right: auto; }
    .bar-chart--small .bb-shape-0 {
      fill: #FEE33F !important; }
    .bar-chart--small .bb-shape-1 {
      fill: #D9E053 !important; }
    .bar-chart--small .bb-shape-2 {
      fill: #6BD690 !important; }
    .bar-chart--small .bb-shape-3 {
      fill: #00CDCA !important; }
  .bar-chart .tick text {
    fill: #FFFFFF;
    font-size: 0.75rem;
    font-weight: 500; }
    @media only screen and (max-width: 34.3125em) {
      .bar-chart .tick text {
        font-size: 0.625rem; } }
    .finding--white .bar-chart .tick text {
      fill: #6A717D; }
  .bar-chart .bb-ygrid {
    stroke-dasharray: 0;
    stroke: #292929; }
    .finding--white .bar-chart .bb-ygrid {
      stroke: #F0F4FA; }
  .bar-chart .bb-axis-y .domain {
    opacity: 0; }

.donut-chart__container {
  text-align: center;
  position: relative;
  min-height: 320px; }
  .donut-chart__container .chart__info {
    width: 100%;
    bottom: -6rem;
    text-align: left;
    position: absolute;
    left: 50%;
    -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
    @media only screen and (min-width: 48em) {
      .donut-chart__container .chart__info {
        bottom: 15rem; } }

.donut-chart__heading-container {
  position: absolute;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  z-index: 1; }

.donut-chart {
  margin-top: 0.625rem; }
  @media only screen and (min-width: 60em) {
    .donut-chart {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-align: center;
          align-items: center;
      -ms-flex-pack: center;
          justify-content: center;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; } }
  @media only screen and (min-width: 80em) {
    .donut-chart {
      -ms-flex-pack: justify;
          justify-content: space-between; } }

@media only screen and (min-width: 60em) {
  .donut-chart__legend {
    width: 25%; } }

.donut-chart__main {
  height: 20rem; }
  @media only screen and (min-width: 60em) {
    .donut-chart__main {
      width: 50%; } }
  @media only screen and (min-width: 80em) {
    .donut-chart__main {
      width: 75%; } }

.range-chart__line {
  width: 100%;
  height: 0.1875rem;
  background-color: #F0F4FA;
  position: relative;
  font-size: 0.625rem;
  letter-spacing: 0.09375rem;
  color: #6A717D;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-pack: justify;
      justify-content: space-between; }
  .range-chart__line::before {
    display: block;
    content: 'min';
    text-transform: uppercase;
    margin-top: 1rem; }
  .range-chart__line::after {
    display: block;
    content: 'max';
    text-transform: uppercase;
    margin-top: 1rem; }
  .la__light-orange .range-chart__line {
    background-color: #F4CF31; }
  .la__mid-orange .range-chart__line {
    background-color: #DD8112; }
  .la__orange .range-chart__line {
    background-color: #E2A723; }
  .la__dark-orange .range-chart__line {
    background-color: #D85D09; }
  .la__dark-blue .range-chart__line {
    background-color: #2438A0; }
  .la__blue .range-chart__line {
    background-color: #2365D6; }
  .la__medium-aqua .range-chart__line {
    background-color: #00A9CD; }
  .la__aqua .range-chart__line {
    background-color: #00CDCA; }

.range-chart__container {
  position: relative;
  padding-top: 2rem;
  margin-top: 2rem; }

.range-chart__arrow-container {
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
  width: 1.5rem;
  height: 1.625rem;
  position: absolute;
  top: 0; }
  .range-chart__arrow-container.is-hidden {
    opacity: 0; }
  .la__light-orange .range-chart__arrow-container {
    fill: #F4CF31; }
  .la__orange .range-chart__arrow-container {
    fill: #E2A723; }
  .la__mid-orange .range-chart__arrow-container {
    fill: #DD8112; }
  .la__dark-orange .range-chart__arrow-container {
    fill: #D85D09; }
  .la__dark-blue .range-chart__arrow-container {
    fill: #2438A0; }
  .la__blue .range-chart__arrow-container {
    fill: #2365D6; }
  .la__medium-aqua .range-chart__arrow-container {
    fill: #00A9CD; }
  .la__aqua .range-chart__arrow-container {
    fill: #00CDCA; }
  .range-chart__arrow-container svg {
    display: block; }

.chart-section {
  background-color: #FFFFFF;
  color: #000000;
  padding-top: 3.75rem;
  padding-bottom: 3.75rem; }
  @media only screen and (min-width: 60em) {
    .chart-section {
      padding-top: 7.5rem;
      padding-bottom: 7.5rem; } }

.chart-section__range-explanation {
  font-size: 0.8rem; }
  @media only screen and (min-width: 60em) {
    .chart-section__range-explanation {
      padding-top: 1.8rem; } }

.chart-section--pale {
  background-color: #F0F4FA; }

.chart-section__grid {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-align: stretch;
      align-items: stretch; }
  @media only screen and (max-width: 59.9375em) {
    .chart-section__grid > * {
      margin-bottom: 2rem; } }
  .chart-section__grid .bar-chart__container {
    position: relative;
    z-index: 1; }

.chart__graphic {
  position: absolute;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }
  @media only screen and (max-width: 47.9375em) {
    .chart__graphic {
      display: none; } }
  .chart__graphic--1 {
    right: 0;
    width: 16.6875rem;
    height: 15.375rem;
    background-image: url("../images/chart__graphic1.svg"); }
  .chart__graphic--2 {
    right: 0;
    width: 11.25rem;
    height: 10.75rem;
    background-image: url("../images/chart__graphic2.svg"); }
  .chart__graphic--3 {
    right: 0;
    width: 17.4375rem;
    height: 13.75rem;
    background-image: url("../images/chart__graphic3.svg"); }

.style-guide__container {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem; }
  .style-guide__container > * + * {
    margin-top: 3em; }

.style-guide__body-text {
  font-weight: 300;
  font-size: 0.75rem;
  line-height: 1.8;
  color: #000000; }
  @media only screen and (min-width: 48em) {
    .style-guide__body-text {
      font-size: 0.875rem;
      line-height: 1.71429; } }
  @media only screen and (min-width: 80em) {
    .style-guide__body-text {
      font-size: 1rem;
      line-height: 1.5; } }

.style-guide__heading1 {
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.125; }
  @media only screen and (min-width: 48em) {
    .style-guide__heading1 {
      font-size: 4rem;
      line-height: 1.125; } }
  @media only screen and (min-width: 80em) {
    .style-guide__heading1 {
      font-size: 4.5rem;
      line-height: 1.11111; } }

.style-guide__heading2 {
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .style-guide__heading2 {
      font-size: 2rem;
      line-height: 1.875; } }
  @media only screen and (min-width: 80em) {
    .style-guide__heading2 {
      font-size: 3rem;
      line-height: 1.25; } }

.style-guide__heading3 {
  font-weight: 500;
  font-size: 0.6875rem;
  line-height: 1.27273; }
  @media only screen and (min-width: 48em) {
    .style-guide__heading3 {
      font-size: 1rem;
      line-height: 1.1875; } }
  @media only screen and (min-width: 80em) {
    .style-guide__heading3 {
      font-size: 1.375rem;
      line-height: 1.22727; } }

.style-guide__heading4 {
  font-weight: 700;
  font-size: 0.75rem;
  line-height: 1.5; }
  @media only screen and (min-width: 48em) {
    .style-guide__heading4 {
      font-weight: 500;
      font-size: 0.8125rem;
      line-height: 1.84615; } }
  @media only screen and (min-width: 80em) {
    .style-guide__heading4 {
      font-size: 1.375rem;
      line-height: 1.36364; } }

.style-guide__heading5 {
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.71429; }
  @media only screen and (min-width: 80em) {
    .style-guide__heading5 {
      font-size: 1.25rem;
      line-height: 1.5; } }

.style-guide__heading6 {
  font-weight: 400;
  font-size: 0.75rem;
  line-height: 1.25; }

.style-guide__color-list > * + * {
  margin-top: 1.25em; }

.style-guide__color {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  .style-guide__color:before {
    display: inline-block;
    content: '';
    width: 2rem;
    height: 2rem;
    margin-right: 1rem; }

.style-guide__color--yellow:before {
  background-color: #FEE33F; }

.style-guide__color--pale-blue:before {
  background-color: #F0F4FA; }

.style-guide__color--grey:before {
  background-color: #6A717D; }

.style-guide__color--dark-grey:before {
  background-color: #1A202E; }

.style-guide__color--gradient:before {
  background-image: linear-gradient(#03AEAB, #1858C6); }

.la {
  color: #FFFFFF; }
  .la .chart-section:first-of-type {
    margin-top: 22rem; }
    @media only screen and (min-width: 48em) {
      .la .chart-section:first-of-type {
        margin-top: 26rem; } }

.la-header {
  overflow: hidden;
  width: 100%;
  height: 21.875rem;
  position: absolute;
  top: 0;
  left: 0;
  color: #000000; }
  @media only screen and (min-width: 48em) {
    .la-header {
      height: 26.25rem; } }
  .la-header:before {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 40%;
    height: 0;
    padding-bottom: 111.3737075332%;
    background-image: url("../images/triangle.svg");
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: contain;
    z-index: 1; }
    @media only screen and (min-width: 80em) {
      .la-header:before {
        width: 36.5%; } }

.la-header-container {
  position: absolute;
  width: 100%;
  bottom: 1rem;
  z-index: 1; }

.la-header-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: justify;
      justify-content: space-between; }

.la-name {
  position: absolute;
  left: 50%;
  top: 50%;
  -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
  z-index: 1;
  color: #FFFFFF;
  font-size: 1.25rem;
  font-weight: 400; }
  @media only screen and (min-width: 48em) {
    .la-name {
      font-size: 2rem; } }

.la-share__container {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center; }

.la-share {
  display: -ms-inline-flexbox;
  display: inline-flex; }

.la-share__label {
  color: #FFFFFF;
  text-transform: uppercase;
  font-size: 0.625rem;
  letter-spacing: 0.10687rem;
  margin-right: 1em; }
  @media only screen and (min-width: 60em) {
    .la-share__label {
      font-size: 0.75rem; } }

.la-share__hr {
  width: 100%;
  height: 0.125rem;
  background-color: #FFFFFF;
  border: none;
  margin-top: 0.8rem;
  margin-bottom: 1rem; }
  @media only screen and (min-width: 48em) {
    .la-share__hr {
      display: none; } }

.find-another-la {
  color: #FFFFFF;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.625rem;
  letter-spacing: 0.10687rem;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center; }
  @media only screen and (min-width: 60em) {
    .find-another-la {
      font-size: 0.75rem; } }

.la-map {
  width: 100%;
  height: 100%; }

.la-map-inner {
  width: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

.lep {
  position: relative; }
  @media only screen and (min-width: 60em) {
    .lep > * + * {
      margin-top: 3em; } }

.lep-arrow-container {
  display: inline; }

.la__is-part-of, .la__hub-is {
  color: #6A717D;
  font-weight: 400;
  font-size: 0.625rem;
  line-height: 1.8; }

.la__lep-url, .la__hub-url {
  color: #D85D09;
  font-size: 2rem;
  text-decoration: none;
  border-bottom: 0.125rem solid #D85D09;
  padding-bottom: 0.1em; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImJhc2UvX25vcm1hbGl6ZS5zY3NzIiwibWFpbi5jc3MiLCJ1dGlsaXRpZXMvX2dyaWQuc2NzcyIsInV0aWxpdGllcy9fZnVuY3Rpb25zLnNjc3MiLCJ1dGlsaXRpZXMvX21lZGlhLXF1ZXJpZXMuc2NzcyIsImJhc2UvX2Jhc2Uuc2NzcyIsInV0aWxpdGllcy9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL2hhbWJ1cmdlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvX2Jhc2Uuc2NzcyIsInV0aWxpdGllcy9faGFtYnVyZ2VyLXNldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeC1yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvXzNkeS1yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL18zZHh5LXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX2Fycm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvdy1yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd2FsdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3dhbHQtci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYXJyb3d0dXJuLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19hcnJvd3R1cm4tci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fYm9yaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19jb2xsYXBzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fY29sbGFwc2Utci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZWxhc3RpYy1yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19lbXBoYXRpYy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fZW1waGF0aWMtci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fbWludXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NsaWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc2xpZGVyLXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NwaW4tci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3ByaW5nLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvaGFtYnVyZ2Vycy9fc2Fzcy9oYW1idXJnZXJzL3R5cGVzL19zcHJpbmctci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fc3RhbmQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3N0YW5kLXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3NxdWVlemUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9oYW1idXJnZXJzL19zYXNzL2hhbWJ1cmdlcnMvdHlwZXMvX3ZvcnRleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2hhbWJ1cmdlcnMvX3Nhc3MvaGFtYnVyZ2Vycy90eXBlcy9fdm9ydGV4LXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9iaWxsYm9hcmQuanMvZGlzdC9iaWxsYm9hcmQuY3NzIiwiYXRvbXMvdHlwb2dyYXBoeS9fdHlwb2dyYXBoeS5zY3NzIiwiYXRvbXMvdHlwb2dyYXBoeS9faGVhZGluZ3Muc2NzcyIsImF0b21zL19idG4uc2NzcyIsInV0aWxpdGllcy9fbWl4aW5zLnNjc3MiLCJtb2xlY3VsZXMvX2dyYWRpZW50LnNjc3MiLCJtb2xlY3VsZXMvX25hdi5zY3NzIiwibW9sZWN1bGVzL19tZW51LnNjc3MiLCJtb2xlY3VsZXMvX3NoYXJlLnNjc3MiLCJtb2xlY3VsZXMvX3NlYXJjaC5zY3NzIiwibW9sZWN1bGVzL19rZXkuc2NzcyIsIm1vbGVjdWxlcy9fZmluZGluZy5zY3NzIiwibW9sZWN1bGVzL19sZWdlbmQuc2NzcyIsIm1vbGVjdWxlcy9fdGVzdGltb25pYWxzLnNjc3MiLCJtb2xlY3VsZXMvX3Rlc3RpbW9uaWFsLnNjc3MiLCJtb2xlY3VsZXMvX2Fib3V0LWhlcm8uc2NzcyIsIm1vbGVjdWxlcy9fYWJvdXQtYmxvY2suc2NzcyIsIm1vbGVjdWxlcy9fYWJvdXQuc2NzcyIsIm1vbGVjdWxlcy9fY29va2llcy5zY3NzIiwibW9sZWN1bGVzL19tYXAtdG9vbHRpcC5zY3NzIiwibW9sZWN1bGVzL19yZXN1bHRzLnNjc3MiLCJtb2xlY3VsZXMvX3d5c2l3eWcuc2NzcyIsIm1vbGVjdWxlcy9fZm91ci1vLWZvdXIuc2NzcyIsIm9yZ2FuaXNtcy9faW50cm8uc2NzcyIsIm9yZ2FuaXNtcy9fZm9vdGVyLnNjc3MiLCJvcmdhbmlzbXMvX2hlcm8uc2NzcyIsIm9yZ2FuaXNtcy9fbWFwLnNjc3MiLCJvcmdhbmlzbXMvX2NoYXJ0LnNjc3MiLCJvcmdhbmlzbXMvX2JiLWNoYXJ0LW92ZXJyaWRlLnNjc3MiLCJvcmdhbmlzbXMvX2Jhci1jaGFydC5zY3NzIiwib3JnYW5pc21zL19kb251dC1jaGFydC5zY3NzIiwib3JnYW5pc21zL19yYW5nZS1jaGFydC5zY3NzIiwib3JnYW5pc21zL19zZWN0aW9uLnNjc3MiLCJwYWdlcy9fc3R5bGUtZ3VpZGUuc2NzcyIsInBhZ2VzL19sYS1wYWdlLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsNEVBQTRFO0FBRTVFO2dGQUNnRjtBQUVoRjs7OztHQUlHO0FBRUg7RUFDRSxrQkFBa0I7RUFBRSxPQUFPO0VBQzNCLDJCQUEyQjtFQUFFLE9BQU87RUFDcEMsK0JBQStCO0VBQUUsT0FBTyxFQUN6Qzs7QUFFRDtnRkFDZ0Y7QUFFaEY7O0dBRUc7QUFFSDtFQUNFLFVBQVUsRUFDWDs7QUFFRDs7R0FFRztBQUVIOzs7Ozs7RUFNRSxlQUFlLEVBQ2hCOztBQUVEOzs7R0FHRztBQUVIO0VBQ0UsZUFBZTtFQUNmLGlCQUFpQixFQUNsQjs7QUFFRDtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUg7OztFQUVPLE9BQU87RUFDWixlQUFlLEVBQ2hCOztBQUVEOztHQUVHO0FBRUg7RUFDRSxpQkFBaUIsRUFDbEI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSx3QkFBd0I7RUFBRSxPQUFPO0VBQ2pDLFVBQVU7RUFBRSxPQUFPO0VBQ25CLGtCQUFrQjtFQUFFLE9BQU8sRUFDNUI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxrQ0FBa0M7RUFBRSxPQUFPO0VBQzNDLGVBQWU7RUFBRSxPQUFPLEVBQ3pCOztBQUVEO2dGQUNnRjtBQUVoRjs7O0dBR0c7QUFFSDtFQUNFLDhCQUE4QjtFQUFFLE9BQU87RUFDdkMsc0NBQXNDO0VBQUUsT0FBTyxFQUNoRDs7QUFFRDs7O0dBR0c7QUFFSDtFQUNFLG9CQUFvQjtFQUFFLE9BQU87RUFDN0IsMkJBQTJCO0VBQUUsT0FBTztFQUNwQyxrQ0FBa0M7RUFBRSxPQUFPLEVBQzVDOztBQUVEOztHQUVHO0FBRUg7O0VBRUUscUJBQXFCLEVBQ3RCOztBQUVEOztHQUVHO0FBRUg7O0VBRUUsb0JBQW9CLEVBQ3JCOztBQUVEOzs7R0FHRztBQUVIOzs7RUFHRSxrQ0FBa0M7RUFBRSxPQUFPO0VBQzNDLGVBQWU7RUFBRSxPQUFPLEVBQ3pCOztBQUVEOztHQUVHO0FBRUg7RUFDRSxtQkFBbUIsRUFDcEI7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLHVCQUF1QjtFQUN2QixZQUFZLEVBQ2I7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLGVBQWUsRUFDaEI7O0FBRUQ7OztHQUdHO0FBRUg7O0VBRUUsZUFBZTtFQUNmLGVBQWU7RUFDZixtQkFBbUI7RUFDbkIseUJBQXlCLEVBQzFCOztBQUVEO0VBQ0UsZ0JBQWdCLEVBQ2pCOztBQUVEO0VBQ0UsWUFBWSxFQUNiOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIOztFQUVFLHNCQUFzQixFQUN2Qjs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsY0FBYztFQUNkLFVBQVUsRUFDWDs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsbUJBQW1CLEVBQ3BCOztBQUVEOztHQUVHO0FBRUg7RUFDRSxpQkFBaUIsRUFDbEI7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOzs7R0FHRztBQUVIOzs7OztFQUtFLHdCQUF3QjtFQUFFLE9BQU87RUFDakMsZ0JBQWdCO0VBQUUsT0FBTztFQUN6QixrQkFBa0I7RUFBRSxPQUFPO0VBQzNCLFVBQVU7RUFBRSxPQUFPLEVBQ3BCOztBQUVEOzs7R0FHRztBQUVIOztFQUNRLE9BQU87RUFDYixrQkFBa0IsRUFDbkI7O0FBRUQ7OztHQUdHO0FBRUg7O0VBQ1MsT0FBTztFQUNkLHFCQUFxQixFQUN0Qjs7QUFFRDs7OztHQUlHO0FBRUg7Ozs7RUFJRSwyQkFBMkI7RUFBRSxPQUFPLEVBQ3JDOztBQUVEOztHQUVHO0FBRUg7Ozs7RUFJRSxtQkFBbUI7RUFDbkIsV0FBVyxFQUNaOztBQUVEOztHQUVHO0FBRUg7Ozs7RUFJRSwrQkFBK0IsRUFDaEM7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLCtCQUErQixFQUNoQzs7QUFFRDs7Ozs7R0FLRztBQUVIO0VBQ0UsdUJBQXVCO0VBQUUsT0FBTztFQUNoQyxlQUFlO0VBQUUsT0FBTztFQUN4QixlQUFlO0VBQUUsT0FBTztFQUN4QixnQkFBZ0I7RUFBRSxPQUFPO0VBQ3pCLFdBQVc7RUFBRSxPQUFPO0VBQ3BCLG9CQUFvQjtFQUFFLE9BQU8sRUFDOUI7O0FBRUQ7OztHQUdHO0FBRUg7RUFDRSxzQkFBc0I7RUFBRSxPQUFPO0VBQy9CLHlCQUF5QjtFQUFFLE9BQU8sRUFDbkM7O0FBRUQ7O0dBRUc7QUFFSDtFQUNFLGVBQWUsRUFDaEI7O0FBRUQ7OztHQUdHO0FDdkNIOztFRDJDRSx1QkFBdUI7RUFBRSxPQUFPO0VBQ2hDLFdBQVc7RUFBRSxPQUFPLEVBQ3JCOztBQUVEOztHQUVHO0FDdkNIOztFRDJDRSxhQUFhLEVBQ2Q7O0FBRUQ7OztHQUdHO0FDekNIO0VENENFLDhCQUE4QjtFQUFFLE9BQU87RUFDdkMscUJBQXFCO0VBQUUsT0FBTyxFQUMvQjs7QUFFRDs7R0FFRztBQ3pDSDs7RUQ2Q0UseUJBQXlCLEVBQzFCOztBQUVEOzs7R0FHRztBQUVIO0VBQ0UsMkJBQTJCO0VBQUUsT0FBTztFQUNwQyxjQUFjO0VBQUUsT0FBTyxFQUN4Qjs7QUFFRDtnRkFDZ0Y7QUFFaEY7OztHQUdHO0FBRUg7O0VBRUUsZUFBZSxFQUNoQjs7QUFFRDs7R0FFRztBQUVIO0VBQ0UsbUJBQW1CLEVBQ3BCOztBQUVEO2dGQUNnRjtBQUVoRjs7R0FFRztBQUVIO0VBQ0Usc0JBQXNCLEVBQ3ZCOztBQUVEOztHQUVHO0FBRUg7RUFDRSxjQUFjLEVBQ2Y7O0FBRUQ7Z0ZBQ2dGO0FBRWhGOztHQUVHO0FDdERIO0VEeURFLGNBQWMsRUFDZjs7QUUvWUQ7RUE3QkUscUJBQWM7RUFBZCxjQUFjO0VBQ2Qsb0JBQWdCO01BQWhCLGdCQUFnQjtFQUNoQiwyQkE0QnFDO01BNUJyQyx1QkE0QnFDO0VBM0JyQyx1QkEyQitFO01BM0IvRSwrQkEyQitFO0VBMUIvRSxzQkFMa0Q7TUFLbEQsd0JBTGtELEVBZ0NuRDs7QUFFRDtFQUNFLFlBQVksRUFDYjs7QUFFRDtFQTdDRSxpQkNIZTtFRElmLGtCQUFrQjtFQUNsQixtQkFBbUI7RUFDbkIsd0JBWmU7RUFhZix5QkFiZSxFQW1FaEI7RUVuRUM7SUZzREY7TUFJSSxxQkNwRGEsRUQ2RGhCLEVBQUE7RUVuRUM7SUZzREY7TUFRSSxpQkN4RGEsRUQ2RGhCLEVBQUE7RUVuRUM7SUZzREY7TUFXSSxpQkMzRGEsRUQ2RGhCLEVBQUE7O0FBSUM7RUFyQ0UsZ0JBQU8sRUF1Q1I7O0FBRUQ7RUE1Q0UsaUNBQVc7RUFDWCxrQkFoQ2EsRUE2RWQ7O0FBTkQ7RUFyQ0UsaUJBQU8sRUF1Q1I7O0FBRUQ7RUE1Q0Usa0NBQVc7RUFDWCxrQkFoQ2EsRUE2RWQ7O0FBTkQ7RUFyQ0UsV0FBTyxFQXVDUjs7QUFFRDtFQTVDRSw0QkFBVztFQUNYLGtCQWhDYSxFQTZFZDs7QUFORDtFQXJDRSxpQkFBTyxFQXVDUjs7QUFFRDtFQTVDRSxrQ0FBVztFQUNYLGtCQWhDYSxFQTZFZDs7QUFORDtFQXJDRSxpQkFBTyxFQXVDUjs7QUFFRDtFQTVDRSxrQ0FBVztFQUNYLGtCQWhDYSxFQTZFZDs7QUFORDtFQXJDRSxXQUFPLEVBdUNSOztBQUVEO0VBNUNFLDRCQUFXO0VBQ1gsa0JBaENhLEVBNkVkOztBQU5EO0VBckNFLGlCQUFPLEVBdUNSOztBQUVEO0VBNUNFLGtDQUFXO0VBQ1gsa0JBaENhLEVBNkVkOztBQU5EO0VBckNFLGlCQUFPLEVBdUNSOztBQUVEO0VBNUNFLGtDQUFXO0VBQ1gsa0JBaENhLEVBNkVkOztBQU5EO0VBckNFLFdBQU8sRUF1Q1I7O0FBRUQ7RUE1Q0UsNEJBQVc7RUFDWCxrQkFoQ2EsRUE2RWQ7O0FBTkQ7RUFyQ0UsaUJBQU8sRUF1Q1I7O0FBRUQ7RUE1Q0Usa0NBQVc7RUFDWCxrQkFoQ2EsRUE2RWQ7O0FBTkQ7RUFyQ0UsaUJBQU8sRUF1Q1I7O0FBRUQ7RUE1Q0Usa0NBQVc7RUFDWCxrQkFoQ2EsRUE2RWQ7O0FBTkQ7RUFyQ0UsWUFBTyxFQXVDUjs7QUFFRDtFQTVDRSw2QkFBVztFQUNYLGtCQWhDYSxFQTZFZDs7QUU3RUQ7RUZpRkE7SUEvQ0UsZ0JBQU8sRUFtRFIsRUFBQTs7QUVyRkQ7RUZ1RkE7SUF4REUsaUNBQVc7SUFDWCxrQkFoQ2EsRUEyRmQsRUFBQTs7QUUzRkQ7RUZpRkE7SUEvQ0UsaUJBQU8sRUFtRFIsRUFBQTs7QUVyRkQ7RUZ1RkE7SUF4REUsa0NBQVc7SUFDWCxrQkFoQ2EsRUEyRmQsRUFBQTs7QUUzRkQ7RUZpRkE7SUEvQ0UsV0FBTyxFQW1EUixFQUFBOztBRXJGRDtFRnVGQTtJQXhERSw0QkFBVztJQUNYLGtCQWhDYSxFQTJGZCxFQUFBOztBRTNGRDtFRmlGQTtJQS9DRSxpQkFBTyxFQW1EUixFQUFBOztBRXJGRDtFRnVGQTtJQXhERSxrQ0FBVztJQUNYLGtCQWhDYSxFQTJGZCxFQUFBOztBRTNGRDtFRmlGQTtJQS9DRSxpQkFBTyxFQW1EUixFQUFBOztBRXJGRDtFRnVGQTtJQXhERSxrQ0FBVztJQUNYLGtCQWhDYSxFQTJGZCxFQUFBOztBRTNGRDtFRmlGQTtJQS9DRSxXQUFPLEVBbURSLEVBQUE7O0FFckZEO0VGdUZBO0lBeERFLDRCQUFXO0lBQ1gsa0JBaENhLEVBMkZkLEVBQUE7O0FFM0ZEO0VGaUZBO0lBL0NFLGlCQUFPLEVBbURSLEVBQUE7O0FFckZEO0VGdUZBO0lBeERFLGtDQUFXO0lBQ1gsa0JBaENhLEVBMkZkLEVBQUE7O0FFM0ZEO0VGaUZBO0lBL0NFLGlCQUFPLEVBbURSLEVBQUE7O0FFckZEO0VGdUZBO0lBeERFLGtDQUFXO0lBQ1gsa0JBaENhLEVBMkZkLEVBQUE7O0FFM0ZEO0VGaUZBO0lBL0NFLFdBQU8sRUFtRFIsRUFBQTs7QUVyRkQ7RUZ1RkE7SUF4REUsNEJBQVc7SUFDWCxrQkFoQ2EsRUEyRmQsRUFBQTs7QUUzRkQ7RUZpRkE7SUEvQ0UsaUJBQU8sRUFtRFIsRUFBQTs7QUVyRkQ7RUZ1RkE7SUF4REUsa0NBQVc7SUFDWCxrQkFoQ2EsRUEyRmQsRUFBQTs7QUUzRkQ7RUZpRkE7SUEvQ0UsaUJBQU8sRUFtRFIsRUFBQTs7QUVyRkQ7RUZ1RkE7SUF4REUsa0NBQVc7SUFDWCxrQkFoQ2EsRUEyRmQsRUFBQTs7QUUzRkQ7RUZpRkE7SUEvQ0UsWUFBTyxFQW1EUixFQUFBOztBRXJGRDtFRnVGQTtJQXhERSw2QkFBVztJQUNYLGtCQWhDYSxFQTJGZCxFQUFBOztBRTNGRDtFRitGQTtJQTdERSxnQkFBTyxFQWlFUixFQUFBOztBRW5HRDtFRnFHQTtJQXRFRSxpQ0FBVztJQUNYLGtCQWhDYSxFQXlHZCxFQUFBOztBRXpHRDtFRitGQTtJQTdERSxpQkFBTyxFQWlFUixFQUFBOztBRW5HRDtFRnFHQTtJQXRFRSxrQ0FBVztJQUNYLGtCQWhDYSxFQXlHZCxFQUFBOztBRXpHRDtFRitGQTtJQTdERSxXQUFPLEVBaUVSLEVBQUE7O0FFbkdEO0VGcUdBO0lBdEVFLDRCQUFXO0lBQ1gsa0JBaENhLEVBeUdkLEVBQUE7O0FFekdEO0VGK0ZBO0lBN0RFLGlCQUFPLEVBaUVSLEVBQUE7O0FFbkdEO0VGcUdBO0lBdEVFLGtDQUFXO0lBQ1gsa0JBaENhLEVBeUdkLEVBQUE7O0FFekdEO0VGK0ZBO0lBN0RFLGlCQUFPLEVBaUVSLEVBQUE7O0FFbkdEO0VGcUdBO0lBdEVFLGtDQUFXO0lBQ1gsa0JBaENhLEVBeUdkLEVBQUE7O0FFekdEO0VGK0ZBO0lBN0RFLFdBQU8sRUFpRVIsRUFBQTs7QUVuR0Q7RUZxR0E7SUF0RUUsNEJBQVc7SUFDWCxrQkFoQ2EsRUF5R2QsRUFBQTs7QUV6R0Q7RUYrRkE7SUE3REUsaUJBQU8sRUFpRVIsRUFBQTs7QUVuR0Q7RUZxR0E7SUF0RUUsa0NBQVc7SUFDWCxrQkFoQ2EsRUF5R2QsRUFBQTs7QUV6R0Q7RUYrRkE7SUE3REUsaUJBQU8sRUFpRVIsRUFBQTs7QUVuR0Q7RUZxR0E7SUF0RUUsa0NBQVc7SUFDWCxrQkFoQ2EsRUF5R2QsRUFBQTs7QUV6R0Q7RUYrRkE7SUE3REUsV0FBTyxFQWlFUixFQUFBOztBRW5HRDtFRnFHQTtJQXRFRSw0QkFBVztJQUNYLGtCQWhDYSxFQXlHZCxFQUFBOztBRXpHRDtFRitGQTtJQTdERSxpQkFBTyxFQWlFUixFQUFBOztBRW5HRDtFRnFHQTtJQXRFRSxrQ0FBVztJQUNYLGtCQWhDYSxFQXlHZCxFQUFBOztBRXpHRDtFRitGQTtJQTdERSxpQkFBTyxFQWlFUixFQUFBOztBRW5HRDtFRnFHQTtJQXRFRSxrQ0FBVztJQUNYLGtCQWhDYSxFQXlHZCxFQUFBOztBRXpHRDtFRitGQTtJQTdERSxZQUFPLEVBaUVSLEVBQUE7O0FFbkdEO0VGcUdBO0lBdEVFLDZCQUFXO0lBQ1gsa0JBaENhLEVBeUdkLEVBQUE7O0FFekdEO0VGNkdBO0lBM0VFLGdCQUFPLEVBK0VSLEVBQUE7O0FFakhEO0VGbUhBO0lBcEZFLGlDQUFXO0lBQ1gsa0JBaENhLEVBdUhkLEVBQUE7O0FFdkhEO0VGNkdBO0lBM0VFLGlCQUFPLEVBK0VSLEVBQUE7O0FFakhEO0VGbUhBO0lBcEZFLGtDQUFXO0lBQ1gsa0JBaENhLEVBdUhkLEVBQUE7O0FFdkhEO0VGNkdBO0lBM0VFLFdBQU8sRUErRVIsRUFBQTs7QUVqSEQ7RUZtSEE7SUFwRkUsNEJBQVc7SUFDWCxrQkFoQ2EsRUF1SGQsRUFBQTs7QUV2SEQ7RUY2R0E7SUEzRUUsaUJBQU8sRUErRVIsRUFBQTs7QUVqSEQ7RUZtSEE7SUFwRkUsa0NBQVc7SUFDWCxrQkFoQ2EsRUF1SGQsRUFBQTs7QUV2SEQ7RUY2R0E7SUEzRUUsaUJBQU8sRUErRVIsRUFBQTs7QUVqSEQ7RUZtSEE7SUFwRkUsa0NBQVc7SUFDWCxrQkFoQ2EsRUF1SGQsRUFBQTs7QUV2SEQ7RUY2R0E7SUEzRUUsV0FBTyxFQStFUixFQUFBOztBRWpIRDtFRm1IQTtJQXBGRSw0QkFBVztJQUNYLGtCQWhDYSxFQXVIZCxFQUFBOztBRXZIRDtFRjZHQTtJQTNFRSxpQkFBTyxFQStFUixFQUFBOztBRWpIRDtFRm1IQTtJQXBGRSxrQ0FBVztJQUNYLGtCQWhDYSxFQXVIZCxFQUFBOztBRXZIRDtFRjZHQTtJQTNFRSxpQkFBTyxFQStFUixFQUFBOztBRWpIRDtFRm1IQTtJQXBGRSxrQ0FBVztJQUNYLGtCQWhDYSxFQXVIZCxFQUFBOztBRXZIRDtFRjZHQTtJQTNFRSxXQUFPLEVBK0VSLEVBQUE7O0FFakhEO0VGbUhBO0lBcEZFLDRCQUFXO0lBQ1gsa0JBaENhLEVBdUhkLEVBQUE7O0FFdkhEO0VGNkdBO0lBM0VFLGlCQUFPLEVBK0VSLEVBQUE7O0FFakhEO0VGbUhBO0lBcEZFLGtDQUFXO0lBQ1gsa0JBaENhLEVBdUhkLEVBQUE7O0FFdkhEO0VGNkdBO0lBM0VFLGlCQUFPLEVBK0VSLEVBQUE7O0FFakhEO0VGbUhBO0lBcEZFLGtDQUFXO0lBQ1gsa0JBaENhLEVBdUhkLEVBQUE7O0FFdkhEO0VGNkdBO0lBM0VFLFlBQU8sRUErRVIsRUFBQTs7QUVqSEQ7RUZtSEE7SUFwRkUsNkJBQVc7SUFDWCxrQkFoQ2EsRUF1SGQsRUFBQTs7QUFNRDtFQW5GRSw0QkFBaUIsRUFxRmxCOztBQUVEO0VBekZFLHdDQUFpQixFQTJGbEI7O0FBTkQ7RUFuRkUsNkJBQWlCLEVBcUZsQjs7QUFFRDtFQXpGRSx5Q0FBaUIsRUEyRmxCOztBQU5EO0VBbkZFLHVCQUFpQixFQXFGbEI7O0FBRUQ7RUF6RkUsbUNBQWlCLEVBMkZsQjs7QUFORDtFQW5GRSw2QkFBaUIsRUFxRmxCOztBQUVEO0VBekZFLHlDQUFpQixFQTJGbEI7O0FBTkQ7RUFuRkUsNkJBQWlCLEVBcUZsQjs7QUFFRDtFQXpGRSx5Q0FBaUIsRUEyRmxCOztBQU5EO0VBbkZFLHVCQUFpQixFQXFGbEI7O0FBRUQ7RUF6RkUsbUNBQWlCLEVBMkZsQjs7QUFORDtFQW5GRSw2QkFBaUIsRUFxRmxCOztBQUVEO0VBekZFLHlDQUFpQixFQTJGbEI7O0FBTkQ7RUFuRkUsNkJBQWlCLEVBcUZsQjs7QUFFRDtFQXpGRSx5Q0FBaUIsRUEyRmxCOztBQU5EO0VBbkZFLHVCQUFpQixFQXFGbEI7O0FBRUQ7RUF6RkUsbUNBQWlCLEVBMkZsQjs7QUFORDtFQW5GRSw2QkFBaUIsRUFxRmxCOztBQUVEO0VBekZFLHlDQUFpQixFQTJGbEI7O0FBTkQ7RUFuRkUsNkJBQWlCLEVBcUZsQjs7QUFFRDtFQXpGRSx5Q0FBaUIsRUEyRmxCOztBQU5EO0VBbkZFLHdCQUFpQixFQXFGbEI7O0FBRUQ7RUF6RkUsb0NBQWlCLEVBMkZsQjs7QUVuSUQ7RUZ1SUE7SUE3RkUsNEJBQWlCLEVBaUdsQixFQUFBOztBRTNJRDtFRjRJQTtJQXBHRSx3Q0FBaUIsRUF3R2xCLEVBQUE7O0FFaEpEO0VGdUlBO0lBN0ZFLDZCQUFpQixFQWlHbEIsRUFBQTs7QUUzSUQ7RUY0SUE7SUFwR0UseUNBQWlCLEVBd0dsQixFQUFBOztBRWhKRDtFRnVJQTtJQTdGRSx1QkFBaUIsRUFpR2xCLEVBQUE7O0FFM0lEO0VGNElBO0lBcEdFLG1DQUFpQixFQXdHbEIsRUFBQTs7QUVoSkQ7RUZ1SUE7SUE3RkUsNkJBQWlCLEVBaUdsQixFQUFBOztBRTNJRDtFRjRJQTtJQXBHRSx5Q0FBaUIsRUF3R2xCLEVBQUE7O0FFaEpEO0VGdUlBO0lBN0ZFLDZCQUFpQixFQWlHbEIsRUFBQTs7QUUzSUQ7RUY0SUE7SUFwR0UseUNBQWlCLEVBd0dsQixFQUFBOztBRWhKRDtFRnVJQTtJQTdGRSx1QkFBaUIsRUFpR2xCLEVBQUE7O0FFM0lEO0VGNElBO0lBcEdFLG1DQUFpQixFQXdHbEIsRUFBQTs7QUVoSkQ7RUZ1SUE7SUE3RkUsNkJBQWlCLEVBaUdsQixFQUFBOztBRTNJRDtFRjRJQTtJQXBHRSx5Q0FBaUIsRUF3R2xCLEVBQUE7O0FFaEpEO0VGdUlBO0lBN0ZFLDZCQUFpQixFQWlHbEIsRUFBQTs7QUUzSUQ7RUY0SUE7SUFwR0UseUNBQWlCLEVBd0dsQixFQUFBOztBRWhKRDtFRnVJQTtJQTdGRSx1QkFBaUIsRUFpR2xCLEVBQUE7O0FFM0lEO0VGNElBO0lBcEdFLG1DQUFpQixFQXdHbEIsRUFBQTs7QUVoSkQ7RUZ1SUE7SUE3RkUsNkJBQWlCLEVBaUdsQixFQUFBOztBRTNJRDtFRjRJQTtJQXBHRSx5Q0FBaUIsRUF3R2xCLEVBQUE7O0FFaEpEO0VGdUlBO0lBN0ZFLDZCQUFpQixFQWlHbEIsRUFBQTs7QUUzSUQ7RUY0SUE7SUFwR0UseUNBQWlCLEVBd0dsQixFQUFBOztBRWhKRDtFRnVJQTtJQTdGRSx3QkFBaUIsRUFpR2xCLEVBQUE7O0FFM0lEO0VGNElBO0lBcEdFLG9DQUFpQixFQXdHbEIsRUFBQTs7QUVoSkQ7RUZvSkE7SUExR0UsNEJBQWlCLEVBOEdsQixFQUFBOztBRXhKRDtFRnlKQTtJQWpIRSx3Q0FBaUIsRUFxSGxCLEVBQUE7O0FFN0pEO0VGb0pBO0lBMUdFLDZCQUFpQixFQThHbEIsRUFBQTs7QUV4SkQ7RUZ5SkE7SUFqSEUseUNBQWlCLEVBcUhsQixFQUFBOztBRTdKRDtFRm9KQTtJQTFHRSx1QkFBaUIsRUE4R2xCLEVBQUE7O0FFeEpEO0VGeUpBO0lBakhFLG1DQUFpQixFQXFIbEIsRUFBQTs7QUU3SkQ7RUZvSkE7SUExR0UsNkJBQWlCLEVBOEdsQixFQUFBOztBRXhKRDtFRnlKQTtJQWpIRSx5Q0FBaUIsRUFxSGxCLEVBQUE7O0FFN0pEO0VGb0pBO0lBMUdFLDZCQUFpQixFQThHbEIsRUFBQTs7QUV4SkQ7RUZ5SkE7SUFqSEUseUNBQWlCLEVBcUhsQixFQUFBOztBRTdKRDtFRm9KQTtJQTFHRSx1QkFBaUIsRUE4R2xCLEVBQUE7O0FFeEpEO0VGeUpBO0lBakhFLG1DQUFpQixFQXFIbEIsRUFBQTs7QUU3SkQ7RUZvSkE7SUExR0UsNkJBQWlCLEVBOEdsQixFQUFBOztBRXhKRDtFRnlKQTtJQWpIRSx5Q0FBaUIsRUFxSGxCLEVBQUE7O0FFN0pEO0VGb0pBO0lBMUdFLDZCQUFpQixFQThHbEIsRUFBQTs7QUV4SkQ7RUZ5SkE7SUFqSEUseUNBQWlCLEVBcUhsQixFQUFBOztBRTdKRDtFRm9KQTtJQTFHRSx1QkFBaUIsRUE4R2xCLEVBQUE7O0FFeEpEO0VGeUpBO0lBakhFLG1DQUFpQixFQXFIbEIsRUFBQTs7QUU3SkQ7RUZvSkE7SUExR0UsNkJBQWlCLEVBOEdsQixFQUFBOztBRXhKRDtFRnlKQTtJQWpIRSx5Q0FBaUIsRUFxSGxCLEVBQUE7O0FFN0pEO0VGb0pBO0lBMUdFLDZCQUFpQixFQThHbEIsRUFBQTs7QUV4SkQ7RUZ5SkE7SUFqSEUseUNBQWlCLEVBcUhsQixFQUFBOztBRTdKRDtFRm9KQTtJQTFHRSx3QkFBaUIsRUE4R2xCLEVBQUE7O0FFeEpEO0VGeUpBO0lBakhFLG9DQUFpQixFQXFIbEIsRUFBQTs7QUU3SkQ7RUZpS0E7SUF2SEUsNEJBQWlCLEVBMkhsQixFQUFBOztBRXJLRDtFRnNLQTtJQTlIRSx3Q0FBaUIsRUFrSWxCLEVBQUE7O0FFMUtEO0VGaUtBO0lBdkhFLDZCQUFpQixFQTJIbEIsRUFBQTs7QUVyS0Q7RUZzS0E7SUE5SEUseUNBQWlCLEVBa0lsQixFQUFBOztBRTFLRDtFRmlLQTtJQXZIRSx1QkFBaUIsRUEySGxCLEVBQUE7O0FFcktEO0VGc0tBO0lBOUhFLG1DQUFpQixFQWtJbEIsRUFBQTs7QUUxS0Q7RUZpS0E7SUF2SEUsNkJBQWlCLEVBMkhsQixFQUFBOztBRXJLRDtFRnNLQTtJQTlIRSx5Q0FBaUIsRUFrSWxCLEVBQUE7O0FFMUtEO0VGaUtBO0lBdkhFLDZCQUFpQixFQTJIbEIsRUFBQTs7QUVyS0Q7RUZzS0E7SUE5SEUseUNBQWlCLEVBa0lsQixFQUFBOztBRTFLRDtFRmlLQTtJQXZIRSx1QkFBaUIsRUEySGxCLEVBQUE7O0FFcktEO0VGc0tBO0lBOUhFLG1DQUFpQixFQWtJbEIsRUFBQTs7QUUxS0Q7RUZpS0E7SUF2SEUsNkJBQWlCLEVBMkhsQixFQUFBOztBRXJLRDtFRnNLQTtJQTlIRSx5Q0FBaUIsRUFrSWxCLEVBQUE7O0FFMUtEO0VGaUtBO0lBdkhFLDZCQUFpQixFQTJIbEIsRUFBQTs7QUVyS0Q7RUZzS0E7SUE5SEUseUNBQWlCLEVBa0lsQixFQUFBOztBRTFLRDtFRmlLQTtJQXZIRSx1QkFBaUIsRUEySGxCLEVBQUE7O0FFcktEO0VGc0tBO0lBOUhFLG1DQUFpQixFQWtJbEIsRUFBQTs7QUUxS0Q7RUZpS0E7SUF2SEUsNkJBQWlCLEVBMkhsQixFQUFBOztBRXJLRDtFRnNLQTtJQTlIRSx5Q0FBaUIsRUFrSWxCLEVBQUE7O0FFMUtEO0VGaUtBO0lBdkhFLDZCQUFpQixFQTJIbEIsRUFBQTs7QUVyS0Q7RUZzS0E7SUE5SEUseUNBQWlCLEVBa0lsQixFQUFBOztBRTFLRDtFRmlLQTtJQXZIRSx3QkFBaUIsRUEySGxCLEVBQUE7O0FFcktEO0VGc0tBO0lBOUhFLG9DQUFpQixFQWtJbEIsRUFBQTs7QUczS0g7OztFQUdFLHVCQUF1QjtFQUN2QixVQUFVLEVBQ1g7O0FBRUQ7RUFDRSwwQkNFYSxFREtkO0VEZEM7SUNNRjtNQUtNLGlCQUFpQixFQUVwQixFQUFBOztBRWJIOzs7Ozs7R0FNRztBQ0xIO0VBQ0UsYUNINEM7RURJNUMsc0JBQXNCO0VBQ3RCLGdCQUFnQjtFQUVoQixxQ0FBcUM7RUFDckMsMkJDQWdEO0VEQ2hELG1DQ0FpRDtFREdqRCxjQUFjO0VBQ2QsZUFBZTtFQUNmLHFCQUFxQjtFQUNyQiw4QkFBOEI7RUFDOUIsVUFBVTtFQUNWLFVBQVU7RUFDVixrQkFBa0IsRUFVbkI7RUExQkQ7SUF1Qk0sV0NsQndDLEVEb0IzQzs7QUFHSDtFQUNFLGdCTHhCZTtFS3lCZixpQkFBK0I7RUFDL0Isc0JBQXNCO0VBQ3RCLG1CQUFtQixFQUNwQjs7QUFFRDtFQUNFLGVBQWU7RUFDZixTQUFTO0VBQ1QsdUJBQW1DLEVBNEJwQztFQS9CRDtJQVFJLGdCTHRDYTtJS3VDYixpQkx2Q2E7SUt3Q2IsMEJDMUNnRDtJRDJDaEQsaUJDMUMwQztJRDJDMUMsbUJBQW1CO0lBQ25CLCtCQUErQjtJQUMvQiwyQkFBMkI7SUFDM0IsaUNBQWlDLEVBQ2xDO0VBaEJIO0lBb0JJLFlBQVk7SUFDWixlQUFlLEVBQ2hCO0VBdEJIO0lBeUJJLGVBQThCLEVBQy9CO0VBMUJIO0lBNkJJLGtCQUFpQyxFQUNsQzs7QUVsRUQ7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5QiwyQkFBa0IsRUFTbkI7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5Qiw0QkFBa0IsRUFTbkI7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5Qiw0QkFBa0IsRUFTbkI7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5QiwyQkFBa0IsRUFTbkI7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5QiwyQ0FBa0MsRUFTbkM7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUVJLHFCQUFtQyxFQUNwQzs7QUFISDtFQU1JLGdJQUNpRCxFQU1sRDtFQWJIO0lBV00sbUVBQTBDLEVBQzNDOztBQVpMO0VBaUJNLDhCQUE4QjtFQUM5Qiw0REFBa0QsRUFTbkQ7RUEzQkw7SUFxQlEscURBQXVGLEVBQ3hGO0VBdEJQO0lBeUJRLHVEQUE4RixFQUMvRjs7QUM3QlA7O0tBRUc7QUFDSDtFQUdNLHFFQUFnRixFQUNqRjs7QUFKTDtFQU9NLG9FQUErRSxFQUNoRjs7QUNYTDs7S0FFRztBQUNIO0VBR00sbUVBQThFLEVBQy9FOztBQUpMO0VBT00sb0VBQStFLEVBQ2hGOztBQ1hMOztLQUVHO0FBQ0g7RUFHTSxrRkFDdUMsRUFDeEM7O0FBTEw7RUFRTSxxRkFDdUMsRUFDeEM7O0FBVkw7RUFnQlEsT0FBTztFQUNQLCtFQUE2RztFQUM3RyxzRkFDNEMsRUFDN0M7O0FBcEJQO0VBdUJRLFVBQVU7RUFDViw2RUFBMkc7RUFDM0cseUZBQzRDLEVBQzdDOztBQzlCUDs7S0FFRztBQUNIO0VBR00sa0ZBQ3VDLEVBQ3hDOztBQUxMO0VBUU0scUZBQ3VDLEVBQ3hDOztBQVZMO0VBZ0JRLE9BQU87RUFDUCw2RUFBMkc7RUFDM0csc0ZBQzRDLEVBQzdDOztBQXBCUDtFQXVCUSxVQUFVO0VBQ1YsNkVBQTJHO0VBQzNHLHlGQUM0QyxFQUM3Qzs7QUMvQlQ7O0dBRUc7QUFDSDtFQUVJLCtCQUFpQjtNQUFqQiwyQkFBaUIsRUFTbEI7RUFYSDtJQUtNLDhEQUFxRCxFQUN0RDtFQU5MO0lBU00sK0RBQXNELEVBQ3ZEOztBQ2JMOztHQUVHO0FBQ0g7RUFFSSwrQkFBaUI7TUFBakIsMkJBQWlCLEVBU2xCO0VBWEg7SUFLTSxnRUFBdUQsRUFDeEQ7RUFOTDtJQVNNLCtEQUFzRCxFQUN2RDs7QUNaSDs7S0FFRztBQUNIO0VBS00sMEJBQTBCLEVBQzNCOztBQU5MO0VBV00sNkJBQWlCO01BQWpCLHlCQUFpQixFQVdsQjtFQXRCTDtJQWNRLE9BQU87SUFDUCxXQUFXLEVBQ1o7RUFoQlA7SUFtQlEsVUFBVTtJQUNWLDhCQUFpQjtRQUFqQiwwQkFBaUIsRUFDbEI7O0FDeEJQOztLQUVHO0FBQ0g7RUFFSSxVQUFVO0VBQ1YsVUFBVTtFQUNWLDJCQUEyQjtFQUMzQix3QkFBd0I7RUFDeEIsbUVBQXdDLEVBWXpDO0VBbEJIO0lBU00sY0FBOEI7SUFDOUIsMEZBQytCLEVBQ2hDO0VBWkw7SUFlTSw4SEFDd0MsRUFDekM7O0FBakJMO0VBc0JNLHVEQUE4RjtFQUM5Rix3QkFBd0I7RUFDeEIsZ0VBQXdDLEVBZXpDO0VBdkNMO0lBMkJRLE9BQU87SUFDUCxXQUFXO0lBQ1gsMkZBQ3FDLEVBQ3RDO0VBL0JQO0lBa0NRLE9BQU87SUFDUCw4QkFBaUI7UUFBakIsMEJBQWlCO0lBQ2pCLGlJQUM4QyxFQUMvQzs7QUN6Q1A7O0tBRUc7QUFDSDtFQUVJLFVBQVU7RUFDVixVQUFVO0VBQ1YsMkJBQTJCO0VBQzNCLHdCQUF3QjtFQUN4QixtRUFBd0MsRUFZekM7RUFsQkg7SUFTTSxjQUE4QjtJQUM5QiwwRkFDK0IsRUFDaEM7RUFaTDtJQWVNLDhIQUN3QyxFQUN6Qzs7QUFqQkw7RUFzQk0sc0RBQThGO0VBQzlGLHdCQUF3QjtFQUN4QixnRUFBd0MsRUFlekM7RUF2Q0w7SUEyQlEsT0FBTztJQUNQLFdBQVc7SUFDWCwyRkFDcUMsRUFDdEM7RUEvQlA7SUFrQ1EsT0FBTztJQUNQLDZCQUFpQjtRQUFqQix5QkFBaUI7SUFDakIsaUlBQzhDLEVBQy9DOztBQ3pDUDs7S0FFRztBQUNIO0VBRUksZUFBNEI7RUFDNUIsNEJBQTRCO0VBQzVCLG1FQUF3QyxFQVd6QztFQWZIO0lBT00sY0FBNEI7SUFDNUIsdUNBQXVDLEVBQ3hDO0VBVEw7SUFZTSxhQUE2QjtJQUM3QixvRUFBeUMsRUFDMUM7O0FBZEw7RUFxQk0sc0RBQThDO0VBQzlDLHlCQUF5QixFQVcxQjtFQWpDTDtJQXlCUSxxQkFBcUI7SUFDckIsV0FBVyxFQUNaO0VBM0JQO0lBOEJRLHVEQUFtRDtJQUNuRCx5QkFBeUIsRUFDMUI7O0FDbkNQOztLQUVHO0FBQ0g7RUFFSSxlQUE0QjtFQUM1Qiw0QkFBNEI7RUFDNUIsbUVBQXdDLEVBV3pDO0VBZkg7SUFPTSxjQUE0QjtJQUM1Qix1Q0FBdUMsRUFDeEM7RUFUTDtJQVlNLGFBQTZCO0lBQzdCLG9FQUF5QyxFQUMxQzs7QUFkTDtFQXFCTSx1REFBOEM7RUFDOUMseUJBQXlCLEVBVzFCO0VBakNMO0lBeUJRLHFCQUFxQjtJQUNyQixXQUFXLEVBQ1o7RUEzQlA7SUE4QlEsc0RBQW1EO0lBQ25ELHlCQUF5QixFQUMxQjs7QUNuQ1A7O0tBRUc7QUFDSDtFQUNFLGlCQUFpQixFQThDbEI7RUEvQ0Q7SUFJSSxtREFBbUQsRUFnQnBEO0lBcEJIO01BT00sUUFBUTtNQUNSLHVIQUVzQyxFQUN2QztJQVhMO01BY00sY0FBNkI7TUFDN0IsU0FBUztNQUNULHdIQUV1QyxFQUN4QztFQW5CTDtJQXdCTSxxQkFBcUI7SUFDckIscUNBQXFDO0lBQ3JDLDhCQUE4QixFQW1CL0I7SUE3Q0w7TUE2QlEsZUFBNEI7TUFDNUIsY0FBMkI7TUFDM0IsMERBQXdGO01BQ3hGLHVIQUVnRCxFQUNqRDtJQW5DUDtNQXNDUSxnQkFBNkI7TUFDN0IsY0FBMkI7TUFDM0IsNERBQXlGO01BQ3pGLHdIQUVnRCxFQUNqRDs7QUMvQ1A7O0tBRUc7QUFDSDtFQUNFLGlCQUFpQixFQThDbEI7RUEvQ0Q7SUFJSSxtREFBbUQsRUFnQnBEO0lBcEJIO01BT00sUUFBUTtNQUNSLHVIQUVzQyxFQUN2QztJQVhMO01BY00sY0FBNkI7TUFDN0IsU0FBUztNQUNULHdIQUV1QyxFQUN4QztFQW5CTDtJQXdCTSxxQkFBcUI7SUFDckIscUNBQXFDO0lBQ3JDLDhCQUE4QixFQW1CL0I7SUE3Q0w7TUE2QlEsZUFBNEI7TUFDNUIsYUFBMkI7TUFDM0IsNERBQXlGO01BQ3pGLHVIQUVnRCxFQUNqRDtJQW5DUDtNQXNDUSxnQkFBNkI7TUFDN0IsYUFBMkI7TUFDM0IsNERBQTBGO01BQzFGLHdIQUVnRCxFQUNqRDs7QUMvQ1A7O0tBRUc7QUFDSDtFQUlNLCtFQUU4QixFQUMvQjs7QUFQTDtFQWNRLFdBQVc7RUFDWCwrRUFFb0MsRUFDckM7O0FBbEJQO0VBb0JRLE9BQU8sRUFDUjs7QUFyQlA7RUF3QlEsVUFBVSxFQUNYOztBQzVCUDs7S0FFRztBQUNIO0VBRUksZUFBNEIsRUFZN0I7RUFkSDtJQUtNLGNBQTRCO0lBQzVCLHdDQUF3QztJQUN4QyxpQ0FBaUM7SUFDakMsMkJBQTJCLEVBQzVCO0VBVEw7SUFZTSxhQUE2QixFQUM5Qjs7QUFiTDtFQW9CTSxxREFBOEMsRUFVL0M7RUE5Qkw7SUF1QlEsZ0VBQXFDO0lBQ3JDLFdBQVcsRUFDWjtFQXpCUDtJQTRCUSxzREFBbUQsRUFDcEQ7O0FDaENQOztLQUVHO0FBQ0g7RUFFSSxlQUE0QixFQVk3QjtFQWRIO0lBS00sY0FBNEI7SUFDNUIsd0NBQXdDO0lBQ3hDLGlDQUFpQztJQUNqQywyQkFBMkIsRUFDNUI7RUFUTDtJQVlNLGFBQTZCLEVBQzlCOztBQWJMO0VBb0JNLHNEQUE4QyxFQVUvQztFQTlCTDtJQXVCUSw4REFBb0M7SUFDcEMsV0FBVyxFQUNaO0VBekJQO0lBNEJRLHFEQUFtRCxFQUNwRDs7QUNoQ1A7O0tBRUc7QUFDSDtFQUVJLDJCQUEyQjtFQUMzQixtRUFBd0MsRUFXekM7RUFkSDtJQU1NLHlEQUNpQyxFQUNsQztFQVJMO0lBV00sOEZBQ3dDLEVBQ3pDOztBQWJMO0VBa0JNLDhCQUFpQjtNQUFqQiwwQkFBaUI7RUFDakIsd0JBQXdCO0VBQ3hCLGdFQUF3QyxFQWV6QztFQW5DTDtJQXVCUSxPQUFPO0lBQ1AsV0FBVztJQUNYLDJEQUN3QyxFQUN6QztFQTNCUDtJQThCUSxVQUFVO0lBQ1YsOEJBQWlCO1FBQWpCLDBCQUFpQjtJQUNqQiw0RkFDOEMsRUFDL0M7O0FDckNQOztLQUVHO0FBQ0g7RUFFSSwyQkFBMkI7RUFDM0IsbUVBQXdDLEVBV3pDO0VBZEg7SUFNTSx5REFDaUMsRUFDbEM7RUFSTDtJQVdNLDhGQUN3QyxFQUN6Qzs7QUFiTDtFQWtCTSwrQkFBaUI7TUFBakIsMkJBQWlCO0VBQ2pCLHdCQUF3QjtFQUN4QixnRUFBd0MsRUFlekM7RUFuQ0w7SUF1QlEsT0FBTztJQUNQLFdBQVc7SUFDWCwyREFDd0MsRUFDekM7RUEzQlA7SUE4QlEsVUFBVTtJQUNWLDZCQUFpQjtRQUFqQix5QkFBaUI7SUFDakIsNEZBQzhDLEVBQy9DOztBQ3JDUDs7S0FFRztBQUNIO0VBRUksZUFBNEI7RUFDNUIsNkNBQTZDLEVBYTlDO0VBaEJIO0lBTU0sY0FBNEI7SUFDNUIsNkhBQ3dDLEVBQ3pDO0VBVEw7SUFZTSxhQUE2QjtJQUM3Qiw2SEFDd0MsRUFDekM7O0FBZkw7RUFvQk0sd0JBQXdCO0VBQ3hCLDhCQUE4QixFQWUvQjtFQXBDTDtJQXdCUSxPQUFPO0lBQ1AsaUlBQzhDO0lBQzlDLHFEQUF1RixFQUN4RjtFQTVCUDtJQStCUSxPQUFPO0lBQ1AsMkhBQzhDO0lBQzlDLHNEQUF1RixFQUN4Rjs7QUN0Q1A7O0tBRUc7QUFDSDtFQUVJLFVBQVU7RUFDVixVQUFVO0VBQ1YsMkJBQTJCO0VBQzNCLHFCQUFxQjtFQUNyQixtRUFBd0MsRUFZekM7RUFsQkg7SUFTTSxjQUE4QjtJQUM5Qix3RkFDNkIsRUFDOUI7RUFaTDtJQWVNLDZIQUN3QyxFQUN6Qzs7QUFqQkw7RUFzQk0sdURBQThGO0VBQzlGLHdCQUF3QjtFQUN4QixnRUFBd0MsRUFlekM7RUF2Q0w7SUEyQlEsT0FBTztJQUNQLFdBQVc7SUFDWCx5RkFDbUMsRUFDcEM7RUEvQlA7SUFrQ1EsT0FBTztJQUNQLDZCQUFpQjtRQUFqQix5QkFBaUI7SUFDakIsaUlBQzhDLEVBQy9DOztBQ3pDUDs7S0FFRztBQUNIO0VBRUksNkdBQzZDLEVBVzlDO0VBZEg7SUFNTSxrR0FDNEMsRUFDN0M7RUFSTDtJQVdNLHFHQUM0QyxFQUM3Qzs7QUFiTDtFQWtCTSw2QkFBaUI7TUFBakIseUJBQWlCO0VBQ2pCLDhCQUE4QjtFQUU5QixzR0FDNEMsRUFlN0M7RUFyQ0w7SUF5QlEsT0FBTztJQUNQLDhCQUFpQjtRQUFqQiwwQkFBaUI7SUFDakIsaUdBQytDLEVBQ2hEO0VBN0JQO0lBZ0NRLFVBQVU7SUFDViw2QkFBaUI7UUFBakIseUJBQWlCO0lBQ2pCLG9HQUMrQyxFQUNoRDs7QUN2Q1A7O0tBRUc7QUFDSDtFQUVJLDZHQUM2QyxFQVc5QztFQWRIO0lBTU0sa0dBQzRDLEVBQzdDO0VBUkw7SUFXTSxxR0FDNEMsRUFDN0M7O0FBYkw7RUFrQk0sOEJBQWlCO01BQWpCLDBCQUFpQjtFQUNqQiw4QkFBOEI7RUFFOUIsc0dBQzRDLEVBZTdDO0VBckNMO0lBeUJRLE9BQU87SUFDUCw4QkFBaUI7UUFBakIsMEJBQWlCO0lBQ2pCLGlHQUMrQyxFQUNoRDtFQTdCUDtJQWdDUSxVQUFVO0lBQ1YsNkJBQWlCO1FBQWpCLHlCQUFpQjtJQUNqQixvR0FDK0MsRUFDaEQ7O0FDdkNQOztLQUVHO0FBQ0g7RUFFSSw0QkFBNEI7RUFDNUIsbUVBQXdDLEVBV3pDO0VBZEg7SUFNTSx1REFDZ0MsRUFDakM7RUFSTDtJQVdNLDhGQUN5QyxFQUMxQzs7QUFiTDtFQWtCTSw2QkFBaUI7TUFBakIseUJBQWlCO0VBQ2pCLHdCQUF3QjtFQUN4QixnRUFBd0MsRUFlekM7RUFuQ0w7SUF1QlEsT0FBTztJQUNQLFdBQVc7SUFDWCx1REFDc0MsRUFDdkM7RUEzQlA7SUE4QlEsVUFBVTtJQUNWLDhCQUFpQjtRQUFqQiwwQkFBaUI7SUFDakIsMkZBQytDLEVBQ2hEOztBQ3JDUDs7S0FFRztBQUNIO0VBRUksMEJBQTBCO0VBQzFCLDJEQUF3QyxFQWdCekM7RUFuQkg7SUFPTSx3QkFBd0I7SUFDeEIsdUJBQXVCO0lBQ3ZCLG1DQUFtQyxFQUNwQztFQVZMO0lBYU0sa0NBQWtDLEVBQ25DO0VBZEw7SUFpQk0sdUNBQXVDLEVBQ3hDOztBQWxCTDtFQXVCTSw4QkFBaUI7TUFBakIsMEJBQWlCO0VBQ2pCLDJEQUF3QyxFQWdCekM7RUF4Q0w7SUE0QlEscUJBQXFCLEVBQ3RCO0VBN0JQO0lBZ0NRLE9BQU87SUFDUCxXQUFXLEVBQ1o7RUFsQ1A7SUFxQ1EsVUFBVTtJQUNWLDZCQUFpQjtRQUFqQix5QkFBaUIsRUFDbEI7O0FDMUNQOztLQUVHO0FBQ0g7RUFFSSwwQkFBMEI7RUFDMUIsMkRBQXdDLEVBZ0J6QztFQW5CSDtJQU9NLHdCQUF3QjtJQUN4Qix1QkFBdUI7SUFDdkIsbUNBQW1DLEVBQ3BDO0VBVkw7SUFhTSxrQ0FBa0MsRUFDbkM7RUFkTDtJQWlCTSx1Q0FBdUMsRUFDeEM7O0FBbEJMO0VBdUJNLCtCQUFpQjtNQUFqQiwyQkFBaUI7RUFDakIsMkRBQXdDLEVBZ0J6QztFQXhDTDtJQTRCUSxxQkFBcUIsRUFDdEI7RUE3QlA7SUFnQ1EsT0FBTztJQUNQLFdBQVcsRUFDWjtFQWxDUDtJQXFDUSxVQUFVO0lBQ1YsOEJBQWlCO1FBQWpCLDBCQUFpQixFQUNsQjs7QUMzQ1Q7Ozs7Ozs7O0dBUUc7QUFDSCxlQUFlO0FBQ2Y7RUFDRSxzQkFBc0I7RUFDdEIseUNBQXlDLEVBQUc7O0FBRTlDO0VBQ0UsV0FBVztFQUNYLGFBQWEsRUFBRzs7QUFFbEI7RUFDRSwwQkFBMEI7RUFDMUIsdUJBQXVCO0VBQ3ZCLHNCQUFrQjtNQUFsQixrQkFBa0IsRUFBRzs7QUFFdkI7Ozs7O0VBS0UsNEJBQTRCLEVBQUc7O0FBRWpDO0VBQ0UsYUFBYSxFQUFHOztBQUVsQjtFQUNFLFdBQVc7RUFDWCxnQkFBZ0IsRUFBRzs7QUFFckIsY0FBYztBQUNkLGNBQWM7QUFDZDtFQUNFLGFBQWEsRUFBRzs7QUFFbEI7RUFDRSxXQUFXLEVBQUc7O0FBRWhCO0VBQ0Usc0JBQXNCLEVBQUc7O0FBRTNCLHVCQUF1QjtBQUN2QjtFQUNFLGNBQWM7RUFDZCxlQUFlLEVBQUc7O0FBRXBCLGNBQWM7QUFDZDtFQUNFLGtCQUFrQixFQUFHOztBQUV2QixlQUFlO0FBQ2Y7RUFDRSxrQkFBa0I7RUFDbEIsY0FBYyxFQUFHOztBQUVuQjtFQUNFLFlBQVk7RUFDWixrQkFBa0IsRUFBRzs7QUFFdkIsYUFBYTtBQUNiO0VBQ0UsZ0JBQWdCLEVBQUc7O0FBQ25CO0VBQ0UsbUJBQW1CLEVBQUc7O0FBRTFCLGVBQWU7QUFDZjtFQUNFLFdBQVcsRUFBRzs7QUFFaEI7RUFDRSxrQkFBa0IsRUFBRzs7QUFFdkI7RUFDRSx3QkFBd0IsRUFBRzs7QUFFN0IsZ0JBQWdCO0FBQ2hCO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQixFQUFHOztBQUV0QixlQUFlO0FBQ2Y7RUFDRSxpQkFBaUIsRUFBRzs7QUFFdEIsdUJBQXVCO0FBQ3ZCLGdCQUFnQjtBQUNoQjtFQUNFLGdCQUFnQixFQUFHOztBQUVyQjtFQUNFLGNBQWMsRUFBRzs7QUFFbkI7RUFDRSxjQUFjO0VBQ2QsWUFBWTtFQUNaLGtCQUFrQjtFQUNsQixnQkFBZ0IsRUFBRzs7QUFFckIsZUFBZTtBQUNmO0VBQ0Usc0JBQXNCLEVBQUc7O0FBRTNCLGlCQUFpQjtBQUNqQjtFQUNFLFlBQVksRUFBRzs7QUFFakI7RUFDRSwwQkFBMEI7RUFDMUIsa0JBQWtCO0VBQ2xCLHVCQUF1QjtFQUN2QixrQkFBa0I7RUFDbEIsYUFBYTtFQUdiLHNDQUFzQyxFQUFHOztBQUN6QztFQUNFLHVCQUF1QixFQUFHOztBQUM1QjtFQUNFLHVCQUF1QjtFQUN2QixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixZQUFZLEVBQUc7O0FBQ2pCO0VBQ0UsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQix1QkFBdUI7RUFDdkIsNkJBQTZCLEVBQUc7O0FBQ2hDO0VBQ0Usc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixhQUFhO0VBQ2Isa0JBQWtCLEVBQUc7O0FBQ3ZCO0VBQ0Usa0JBQWtCLEVBQUc7O0FBRTNCLGNBQWM7QUFDZDtFQUNFLGdCQUFnQjtFQUNoQixhQUFhLEVBQUc7O0FBRWxCLGFBQWE7QUFDYjtFQUNFLDBCQUEwQjtFQUMxQixpQkFBaUIsRUFBRzs7QUFFdEI7RUFDRSxjQUFjO0VBQ2QsYUFBYSxFQUFHOztBQUVsQjtFQUNFLFdBQVc7RUFDWCxnQkFBZ0IsRUFBRzs7QUFFckI7RUFDRSxXQUFXLEVBQUc7O0FBRWhCO0VBQ0UsV0FBVyxFQUFHOztBQUVoQjtFQUNFLFdBQVcsRUFBRzs7QUFFaEIsd0NBQXdDO0FDMUt4QztFQUNFLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsc0NwQ0YyQjtFb0NHM0IsZXBDS2EsRW9DSmQ7O0FBRUQ7RUFDRSxXQUFXO0VBQ1gsaUJBQWlCLEVBQ2xCOztBQ1ZEO0VBQ0UsVUFBVSxFQUNYOztBQ0ZEO0VBQ0UsNEJBQXFCO0VBQXJCLHFCQUFxQjtFQUNyQix1QkFBb0I7TUFBcEIsb0JBQW9CO0VBQ3BCLGV6Q0llO0V5Q0hmLHFCekNXZTtFeUNWZixzQ3RDSjJCO0VzQ0szQixpQnRDRGU7RXNDRWYsbUJ6Q0FlO0V5Q0NmLGVBQWU7RUFDZixldENDYTtFc0NBYixzQkFBc0I7RUFDdEIsMEJ0Q0ZhO0VzQ0diLHVCekNMZTtFeUNNZixhQUFhLEVBaUJkO0VBOUJEO0lBZ0JJLGFBQWE7SUFDYix1QnpDVmEsRXlDV2Q7RXhDakJEO0l3Q0RGO01BcUJJLG9CekNkYTtNeUNnQmIscUJ6Q1JhO015Q1NiLGlCekNqQmEsRXlDdUJoQjtNQTlCRDtRQTJCTSxxQnpDcEJXLEV5Q3FCWixFQUFBOztBQUlMO0VBRUksY3RDdkJZLEVzQ3dCYjs7QUFHSDtFQUVJLGN0QzlCVyxFc0MrQlo7O0FBR0g7RUFDRSxldENwQ2E7RXNDcUNiLDBCdENwQ2E7RXNDcUNiLHNCdENyQ2EsRXNDeUNkO0VBUEQ7SUFLSSxjdEN4Q1csRXNDeUNaOztBQUdIO0VBQ0Usc0JBQXFCO0VBQ3JCLGlCdENwRGMsRXNDd0VmO0VBdEJEO0lBS0ksZXRDakRXO0lzQ2tEWCxzQnRDaERZO0lzQ2lEWiwwQnRDakRZO0lzQ2tEWixtQkFBbUIsRUFhcEI7SUFyQkg7TUFXTSxlQUFlO01BQ2YsWUFBWTtNQUNaLG1CQUFtQjtNQUNuQixzQ0FBc0M7TUFDdEMsdUNBQXVDO01BQ3hDLGlDdEMxRFc7TXNDMkRWLGdCQUFnQjtNQUNoQixVQUFVO01BQ1YsZ0NBQXFCO1VBQXJCLDRCQUFxQixFQUN0Qjs7QUFJTDtFQUVJLGFBQWEsRUFDZDs7QUFHSDtFQUNFLCtCdEMxRWE7RXNDMkViLFdBQVc7RUFDWCxpQkFBaUIsRUFtQ2xCO0VBdENEO0lBTUksYUFBYTtJQUNiLGlCQUFpQjtJQUNqQiwwQkFBMEIsRUF5QjNCO0lBakNIO01BV00seUJ6Qy9FVyxFeUNnRlo7SUFaTDtNQWVNLHdCekNuRlcsRXlDb0ZaO0lBaEJMO01BbUJNLDBCQUEwQixFQUMzQjtJQXBCTDtNQXlCTSxjQUFjO01BQ2QsMEJ0Q25HUyxFc0N5R1Y7TUFoQ0w7Ozs7UUE4QlEsY3RDeEdPLEVzQ3lHUjtFQS9CUDtJQW9DSSxlQUFlLEVBQ2hCOztBQUdIO0VBQ0UsaUJBQWlCO0VBQ2pCLGFBQWE7RUFDYixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxhQUFhLEVBQ2Q7O0FDaklPO0VBQ0osbUJBQWtCLEVBQ25COztBQ0hIO0VBQ0UsbUJBQW1CO0VBQ25CLGlCQUFpQjtFQUNqQiw0RUFBaUMsRUFDbEM7O0ExQ0hDO0UwQ0tGO0lBRUksaUJBQWlCLEVBRXBCLEVBQUE7O0ExQ1RDO0UwQ1dGO0lBRUksaUJBQWlCLEVBdUJwQixFQUFBOztBQXpCRDtFQU1JLFlBQVk7RUFDWixlQUFlO0VBQ2YsbUJBQW1CO0VBQ25CLFNBQVM7RUFDVCxVQUFVO0VBQ1YsWUFBWTtFQUNaLFVBQVU7RUFDVixnQ0FBZ0M7RUFDaEMsZ0RBQ1k7RUFEWiw2QkFFb0I7RUFGcEIsa0NBR3lCO0VBSHpCLHlCQUlnQixFQU1qQjtFMUNuQ0Q7STBDV0Y7TUFzQk0sV0FBVyxFQUVkLEVBQUE7O0FBR0g7RUFDRSxtQkFBbUI7RUFDbkIsU0FBUztFQUNULFVBQVU7RUFDVixXQUFXO0VBQ1gsb0IzQ3JDZTtFMkNzQ2YsbUJBQW1CO0VBQ25CLDhDeENwQmlCLEV3Q3lDbEI7RUE1QkQ7SUFVSSxZQUFZO0lBQ1osZUFBZTtJQUNmLFlBQVk7SUFDWixVQUFVO0lBQ1YscUJBQXFCLEVBQ3RCO0VBZkg7SUFrQkksWUFBWTtJQUNaLG1CQUFtQjtJQUNuQixTQUFTO0lBQ1QsV0FBVztJQUNYLFlBQVk7SUFDWixVQUFVO0lBQ1YsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQiw4Q3hDdkNlLEV3Q3dDaEI7O0FDbEVIO0VBQ0UsbUJBQW1CO0VBQ25CLE9BQU87RUFDUCxRQUFRO0VBQ1IsWUFBWTtFQUNaLGFBQWE7RUFDYixlekNJYSxFeUNDZDtFQVhEO0lBU0ksbUJBQW1CLEVBQ3BCOztBQUdIO0VBQ0UsaUI1Q1BlO0U0Q1FmLG9EQUNZO0VBRFosNkJBRW9CO0VBRnBCLDhCQUdxQjtFQUhyQixzQkFJYSxFQTBCZDtFM0M1Q0M7STJDWUY7TUFVSSxzQjVDaEJhO000Q2lCYix5QjVDakJhLEU0Q3NDaEIsRUFBQTtFM0M1Q0M7STJDWUY7TUFlSSxtQkFBbUI7TUFDbkIsNEJBQVM7TUFDVCxpQjdDN0JhO002QzhCYiwrQkFBK0IsRUFjbEMsRUFBQTtFM0M1Q0M7STJDWUY7TUFzQkksYTVDNUJhLEU0Q3NDaEIsRUFBQTtFQWhDRDtJQTBCSSxZQUFZO0lBQ1osZUFBZTtJQUNmLFlBQVk7SUFDWixVQUFVO0lBQ1YsMEJBQTBCLEVBQzNCOztBQUdIO0U3QzdCRSxxQkFBYztFQUFkLGNBQWM7RUFDZCxvQkFBZ0I7TUFBaEIsZ0JBQWdCO0VBQ2hCLHdCQUg4QjtNQUc5QixvQkFIOEI7RUFJOUIsdUI2QzJCMEM7TTdDM0IxQywrQjZDMkIwQztFN0MxQjFDLHVCNkMwQjBEO003QzFCMUQsb0I2QzBCMEQ7RUFDMUQsc0JBQWtCO01BQWxCLGtCQUFrQjtFQUNsQixvQjVDM0NlO0U0QzRDZiwwQjVDNUNlLEU0Q2tEaEI7RTNDeERDO0kyQzhDRjtNQU9JLHVCNUMvQ2E7TTRDZ0RiLHdCNUNoRGEsRTRDa0RoQixFQUFBOztBQUVEO0VMb0RFLDBCQUEwQjtFS2xEMUIsaUJ6QzFEYztFeUMyRGQsbUI1Q3ZEZTtFNEN3RGYsa0JBQWdCO0VBQ2hCLHlCNUN6RGUsRTRDZ0VoQjtFM0N0RUM7STJDMERGO01BUUksbUI1QzVEYTtNNEM2RGIsaUJBQWdCO01BQ2hCLHlCNUM5RGEsRTRDZ0VoQixFQUFBOztBQUlEO0VBQ0UsbUJBQW1CO0VBQ25CLFdBQVc7RUFDWCxlQUFlLEVBU2hCO0UzQ3RGQztJMkMwRUY7TUFNSSxjQUFjLEVBTWpCLEVBQUE7RUFaRDtJQVVJLGNBQWMsRUFDZjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixXQUFXLEVBQ1o7O0FBRUQ7RUFDRSxtQkFBbUI7RUFDbkIsaUI1Q3pGZTtFNEMwRmYsMEJ6Q3ZGYTtFeUN3RmIsYUFBYSxFQUNkOztBQ25HRDtFQUNFLFdBQVcsRUFXWjtFNUNYQztJNENERjtNQUlJLGFBQWE7TTlDY2YscUJBQWM7TUFBZCxjQUFjO01BQ2Qsb0JBQWdCO1VBQWhCLGdCQUFnQjtNQUNoQiwyQjhDZnVDO1U5Q2V2Qyx1QjhDZnVDO005Q2dCdkMscUJBSndFO1VBSXhFLDRCQUp3RTtNQUt4RSxzQkFMa0Q7VUFLbEQsd0JBTGtELEU4Q0xuRCxFQUFBO0U1Q1hDO0k0Q0RGO01BU0kscUJBQWM7TUFBZCxjQUFjO01BQ2QsdUJBQW9CO1VBQXBCLG9CQUFvQixFQUV2QixFQUFBOztBQUVEO0VBQ0Usc0JBQXNCO0VBQ3RCLG1CQUFtQjtFQUNuQixXQUFXLEVBd0NaO0U1Q3hEQztJNENhRjtNOUNKRSxpQkNIZTtNRElmLGtCQUFrQjtNQUNsQixtQkFBbUI7TUFDbkIsd0JBWmU7TUFhZix5QkFiZTtNOENvQmIsbUJBQW1CO01BQ25CLE9BQU87TUFDUCxRQUFRO01BQ1IsWUFBWTtNQUNaLGNBQWM7TUFDZCxtQkFBbUI7TUFDbkIsV0FBVztNQUNYLG9CN0NyQmE7TTZDc0JiLGUxQ25CVztNMENvQlgsMEIxQ3JCVztNMENzQlgsV0FBVztNQUNYLGtEQUMrQixFQXdCbEMsRUFBQTtFQTNDRDtJQXVCSSxvQkFBb0I7SUFDcEIsV0FBVztJQUNYLDhCQUE4QixFQUMvQjtFNUN2Q0Q7STRDYUY7TUE4Qk0sWUFBWTtNQUNaLG1CQUFtQjtNQUNuQixpQjdDdkNXO002Q3dDWCxnQjdDeENXO002Q3lDWCxrQjdDekNXO002QzBDWCxrQjdDMUNXO002QzJDWCxtREFDWTtNQURaLDZCQUVvQjtNQUZwQiw0QkFHbUIsRUFHdEIsRUFBQTs7QUFHSDtFQUNFLGlCQUFpQixFQXVDbEI7RTVDbEdDO0k0QzBERjtNQUlJLHdCN0N4RGE7TTZDeURiLGlCMUM1RFc7TTBDNkRYLGdCN0MxRGE7TTZDMkRiLG9CQUFnQixFQWlDbkI7TUF4Q0Q7UUFXUSxjQUFjLEVBQ2YsRUFBQTtFNUN0RUw7STRDMERGO01BaUJJLHNCQUFzQjtNQUN0QixxQkFBcUI7TUFDckIsc0JBQXNCO01BQ3RCLG1CN0N4RWE7TTZDeUViLDBCQUEwQjtNQUMxQiwyQjdDMUVhLEU2QzRGaEI7TUF4Q0Q7UUF5Qk0saUJBQWlCLEVBQ2xCLEVBQUE7RTVDcEZIO0k0QzBERjtNQThCSSxtQkFBbUI7TUFDbkIsb0JBQW9CLEVBU3ZCLEVBQUE7RTVDbEdDO0k0QzBERjtNTm9ERSwwQkFBMEI7TU1oQnhCLG1CN0N4RmE7TTZDeUZiLGtCQUFnQjtNQUNoQiwyQjdDMUZhLEU2QzRGaEIsRUFBQTs7QUFFRDtFQUNFLGNBQWMsRUFJZjtFNUN6R0M7STRDb0dGO01BR0ksZUFBZSxFQUVsQixFQUFBOztBQUVEOztFQUVFLHNCQUFzQjtFQUN0QixlMUNyR2EsRTBDMEdkO0VBUkQ7O0lBTUksZTFDeEdXLEUwQ3lHWjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixXQUFXLEVBQ1o7O0FBRUQ7OztFQUlJLGUxQ3BIWSxFMENxSGI7O0E1Qy9IRDtFNEMwSEY7SUFVTSxpQjFDaElXLEUwQ2tJZCxFQUFBOztBQUdIO0VBQ0UsZ0I3Q3BJZTtFNkNxSWYsaUI3Q3JJZTtFNkNzSWYsMEIxQ25JYTtFMENvSWIsYUFBYSxFQUtkO0U1Q2xKQztJNEN5SUY7TUFPSSxjQUFjLEVBRWpCLEVBQUE7O0FBRUQ7RUFDRSxrQkFBa0IsRUFVbkI7RTVDL0pDO0k0Q29KRjtNQUlJLG1CN0NsSmE7TTZDbUpiLGlCMUNySmEsRTBDMkpoQixFQUFBO0U1Qy9KQztJNENvSkY7TUFTSSxjQUFjLEVBRWpCLEVBQUE7O0FBRUQ7RUFDRSxxQkFBYztFQUFkLGNBQWM7RUFDZCx1QkFBb0I7TUFBcEIsb0JBQW9CO0VBQ3BCLHFCQUE0QjtNQUE1Qiw0QkFBNEIsRUFTN0I7RTVDN0tDO0k0Q2lLRjtNQU1JLG1CQUFtQjtNQUNuQixZQUFZO01BQ1osaUJBQWlCO01BQ2pCLG9CQUFvQjtNQUNwQixrQkFBa0IsRUFFckIsRUFBQTs7QUFFRDtFQUNFLG1CQUFtQjtFQUNuQixPQUFPO0VBQ1AsUUFBUTtFQUNSLFNBQVMsRUFLVjtFNUN4TEM7STRDK0tGO01BT0ksY0FBYyxFQUVqQixFQUFBOztBQ3pMRDtFQUNFLHFCQUFjO0VBQWQsY0FBYztFQUNkLHVCQUFvQjtNQUFwQixvQkFBb0I7RUFDcEIsbUJBQTBCO01BQTFCLDBCQUEwQixFQVMzQjtFN0NYQztJNkNERjtNQU1JLHdCOUNDYSxFOENLaEIsRUFBQTtFN0NYQztJNkNERjtNQVVJLHlCOUNIYSxFOENLaEIsRUFBQTs7QUFFRDtFQUNFLHFCQUFjO0VBQWQsY0FBYztFQUNkLHVCQUFvQjtNQUFwQixvQkFBb0I7RUFDcEIsbUJBQTBCO01BQTFCLDBCQUEwQjtFQUMxQixpQjlDWGU7RThDWWYsd0I5Q1plO0U4Q2FmLHlCOUNiZSxFOEN3QmhCO0U3QzlCQztJNkNhRjtNQVNJLHVCOUNoQmE7TThDaUJiLHdCOUNqQmEsRThDd0JoQixFQUFBO0U3QzlCQztJNkNhRjtNQWNJLHdCOUNyQmE7TThDc0JiLHlCOUN0QmEsRThDd0JoQixFQUFBOztBQy9CRDtFQUNFLDBCNUNVYztFNENUZCxvQi9DS2U7RStDSmYsdUIvQ0llLEUrQ01oQjtFOUNaQztJOENERjtNQU1JLHVCL0NDYTtNK0NBYix5Qi9DQWEsRStDTWhCLEVBQUE7RUFiRDtJQVdJLG1CQUFtQixFQUNwQjs7QUFHSDtFQUNFLG1CQUFtQjtFQUNuQixxQkFBYztFQUFkLGNBQWM7RUFDZCxvQkFBc0I7TUFBdEIsc0JBQXNCO0VBQ3RCLFlBQVk7RUFDWixzQzVDWGE7RTRDWWIsMEI1Q1ZjLEU0Q1dmOztBQUVEO0VBQ0UsWUFBUTtNQUFSLFFBQVE7RUFDUixzQkFBc0I7RUFDdEIsc0M1QzFCMkI7RTRDMkIzQixpQjVDeEJhO0U0Q3lCYixxQi9DdEJlO0UrQ3VCZixvQkFBZ0I7RUFDaEIseUIvQ3hCZTtFdUN3R2YsMEJBQTBCO0VROUUxQixhQUFhO0VBQ2IsMEI1Q3ZCYyxFNENvRGY7RTlDOURDO0k4Q3VCRjtNQWFJLHNCL0M5QmEsRStDd0RoQixFQUFBO0U5QzlEQztJOEN1QkY7TUFpQkksZ0IvQ2xDYSxFK0N3RGhCLEVBQUE7RTlDOURDO0k4Q3VCRjtNQXFCSSxnQi9DdENhO00rQ3VDYixxQkFBZ0I7TUFDaEIsd0IvQ3hDYSxFK0N3RGhCLEVBQUE7RUF2Q0Q7SUEyQkksYUFBYSxFQUNkO0VBNUJIO0lBK0JJLGU1QzlDVztJNEMrQ1gsc0M1Q3ZEeUI7STRDd0R6QixpQjVDckRXLEU0Q3NEWjtFQWxDSDtJQXFDSSxjQUFjLEVBQ2Y7O0E5QzdERDtFOENnRUY7SUFFSSxtQkFBbUI7SUFDbkIsU0FBUztJQUNULGdCL0M5RGE7SStDK0RiLGFBQWE7SUFDYixlQUFlLEVBV2xCO0lBakJEO01BU00sY0FBYyxFQUNmLEVBQUE7O0E5QzFFSDtFOENnRUY7SUFjSSxtQkFBbUI7SUFDbkIsaUIvQ3pFYSxFK0MyRWhCLEVBQUE7O0FBRUQ7RUFDRSxjQUFjO0VBQ2QsV0FBVztFQUNYLG1CQUFtQjtFQUNuQixnQkFBZ0I7RUFDaEIscUIvQ2xGZSxFK0M2RmhCO0U5Q25HQztJOENtRkY7TUFPSSxnQi9DcEZhO00rQ3FGYixtQkFBbUI7TUFDbkIsaUIvQ3RGYTtNK0N1RmIsa0JBQWtCLEVBTXJCLEVBQUE7RUFoQkQ7SUFjSSxlQUFlLEVBQ2hCOztBQUdIO0VBQ0UsZTVDOUZhO0VvQ2dGYixpQnBDdEZjO0VvQ3VGZCxtQnZDbkZlO0V1Q29GZixrQkFBZ0I7RVFjaEIsc0JBQXNCLEVBS3ZCO0U5QzdHQztJOENxR0Y7TUFNSSxzQkFBc0IsRUFFekIsRUFBQTs7QUw3R087RUFDSixtQkFBa0IsRUFDbkI7O0FBRks7RUFDSixrQkFBa0IsRUFDbkI7O0FNS0g7RUFDRSxxQkFBYztFQUFkLGNBQWMsRUFpQmY7RUFsQkQ7SUFLTSwwQjdDT2UsRTZDTmhCO0VBTkw7SUFVTSwwQjdDQVUsRTZDQ1g7RUFYTDtJQWVNLDBCN0NOZ0IsRTZDT2pCOztBQUlMO0VBQ0UsZTdDaEJZO0U2Q2lCWixpQjdDM0JjO0U2QzRCZCxtQmhEeEJlO0VnRHlCZixpQkFBZ0IsRUFNakI7RUFWRDtJQVFJLGVBQWUsRUFDaEI7O0FBR0g7RUFDRSxnQmhEbENlO0VnRG1DZixpQmhEbkNlO0VnRG9DZixtQkFBbUI7RUFDbkIscUJBQXFCLEVBV3RCO0VBZkQ7SUFPSSwwQkFBMEIsRUFDM0I7RUFSSDtJQVVJLDBCQUEwQixFQUMzQjtFQVhIO0lBYUksMEJBQTBCLEVBQzNCOztBQ3RESDtFQUNFLG1CQUFtQjtFQUNuQixzQmpES2U7RWlESmYseUJqREllO0VpREhmLGlCQUFpQixFQXFEbEI7RWhEeERDO0lnRERGO01BT0ksdUJqREFhO01pRENiLDBCakREYSxFaURrRGhCLEVBQUE7RWhEeERDO0lnRERGO01BWUksc0JqRExhO01pRE1iLHlCakROYSxFaURrRGhCLEVBQUE7RWhEeERDO0lnRERGO01Ba0JNLGNBQWMsRUFFakIsRUFBQTtFQXBCSDtJQXVCSSwwQjlDYlcsRThDNkJaO0lBdkNIO01BMEJNLFlBQVk7TUFDWixtQkFBbUI7TUFDbkIsT0FBTztNQUNQLFNBQVM7TUFDVCxVQUFVO01BQ1YsV0FBVztNQUNYLHNEQUNZO01BRFosNkJBRW9CO01BRnBCLGtDQUd5QjtNQUh6Qix5QkFJZ0IsRUFFakI7RUF0Q0w7SUEwQ0ksZTlDaENXO0k4Q2lDWCwwQjlDbENXLEU4Q21DWjtFQTVDSDtJQStDSSxzQmpEeENhLEVpRGlEZDtJaER2REQ7TWdEREY7UUFrRE0scUJqRDNDVyxFaURpRGQsRUFBQTtJaER2REQ7TWdEREY7UUFzRE0sa0JBQWtCLEVBRXJCLEVBQUE7O0FBR0g7RUFDRSxtQkFBbUI7RWxEMUNuQixxQkFBYztFQUFkLGNBQWM7RUFDZCxvQkFBZ0I7TUFBaEIsZ0JBQWdCO0VBQ2hCLDJCa0R5Q3FDO01sRHpDckMsdUJrRHlDcUM7RWxEeENyQyxxQkFKd0U7TUFJeEUsNEJBSndFO0VBS3hFLHNCQUxrRDtNQUtsRCx3QkFMa0Q7RUFRaEQsd0JBeEJhO0VBeUJiLHlCQXpCYTtFa0Q2RGYsV0FBVyxFQVVaO0VoRHZFQztJZ0QwREY7TUFNSSx3QkFBb0I7VUFBcEIsb0JBQW9CO01BQ3BCLHVCQUFvQjtVQUFwQixvQkFBb0IsRUFNdkI7TUFiRDtRQVVNLGdDQUE0QjtZQUE1Qiw0QkFBNEIsRUFDN0IsRUFBQTs7QUFJTDtFbEQxQ0ksNkJBQVc7RUFDWCxrQkFoQ2EsRWtENkZoQjtFaEQ3RkM7SWdEeUVGO01BSUksb0JqRHZFYTtNaUR3RWIsa0JBQWtCO01BQ2xCLG1CQUFtQixFQWN0QixFQUFBO0VoRDdGQztJZ0R5RUY7TWxEMUNJLGtDQUFXO01BQ1gsa0JBaENhLEVrRHNGZCxFQUFBO0VoRHRGRDtJZ0R5RUY7TWxEMUNJLGtDQUFXO01BQ1gsa0JBaENhLEVrRDRGZCxFQUFBOztBQUdIO0VBQ0UsbUJBQW1CO0VBQ25CLE9BQU87RUFDUCxRQUFRO0VBQ1IsVUFBVTtFQUNWLFdBQVc7RUFDWCwwQjlDN0ZhO0U4QzhGYiw2QkFBNkI7RUFDN0Isa0NBQWtDO0VBQ2xDLHlCQUF5QixFQStDMUI7RWhEdkpDO0lnRCtGRjtNQVlJLCtEQUFpQyxFQTRDcEMsRUFBQTtFQXhERDtJQWdCSSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxrQmpENUdhO0lpRDZHYixVQUFVO0lBQ1YsUUFBUTtJQUNSLGdEQUNZO0lBRFosNkJBRW9CO0lBRnBCLGtDQUd5QixFQWMxQjtJaER0SUQ7TWdEK0ZGO1FBNkJNLDJCakR0SFcsRWlEZ0lkLEVBQUE7SWhEdElEO01nRCtGRjtRQWlDTSx5QmpEMUhXLEVpRGdJZCxFQUFBO0loRHRJRDtNZ0QrRkY7UUFxQ00sMkJqRDlIVyxFaURnSWQsRUFBQTtFaER0SUQ7SWdEK0ZGO01BNENRLDJCakRySVMsRWlEK0laLEVBQUE7RWhEckpIO0lnRCtGRjtNQWdEUSwwQmpEeklTLEVpRCtJWixFQUFBO0VoRHJKSDtJZ0QrRkY7TUFvRFEsMkJqRDdJUyxFaUQrSVosRUFBQTs7QUFJTDtFVjdIRSxpQnBDMUJjO0VvQzJCZCxrQnZDdkJlO0V1Q3dCZixpQkFBZ0I7RVU2SGhCLGlCOUN4SmE7RThDeUpiLGU5Qy9IWSxFOENnSWI7RWhEN0pDO0lnRHlKRjtNVnhISSxnQnZDM0JhO011QzRCYixtQkFBZ0IsRVUySG5CLEVBQUE7RWhEN0pDO0lnRHlKRjtNVm5ISSxnQnZDaENhO011Q2lDYixrQkFBZ0IsRVVzSG5CLEVBQUE7O0FoRDdKQztFZ0QrSkY7SUFFSSxtQkFBbUI7SUFFbkIsZ0JqRDdKYTtJaUQ4SmIsNEJBQVcsRUE4Q2QsRUFBQTs7QUFuREQ7RUFhc0IsMEI5Q25LUCxFOENtS21DOztBaEQ1S2hEO0VnRCtKRjtJQWtCUSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLE9BQU87SUFDUCxTQUFTO0lBQ1QsVUFBVTtJQUNWLFdBQVc7SUFDWCwrREFBa0QsRUFDbkQsRUFBQTs7QWhEeExMO0VnRCtKRjtJQStCTSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLDJCQUFTO0lBQ1QsNEJBQVU7SUFDVixlQUFlO0lBQ2YsZWpEN0xXO0lpRDhMWCxnQmpEOUxXO0lpRCtMWCxtQzlDN0xTO0k4QzhMVCxvQzlDOUxTLEU4Q3lNWjtJQWxESDtNQTBDUSxVQUFVO01BQ1YsVUFBVTtNQUNWLGNqRHJNUztNaURzTVQsc0I5Q25NTztNOENvTVAscUM5Q3BNTztNOENxTVAsa0JBQWtCLEVBQ25CLEVBQUE7O0FBS1A7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LGdCckRuRGEsRXFEeURoQixFQUFBO0VwRC9EQztJb0RvREY7TUFTSSxnQnJEdkRhLEVxRHlEaEIsRUFBQTs7QUFFRDtFQUNFLGdCQUFnQjtFQUNoQixxQnJEN0RlO0VxRDhEZixvQnJEOURlO0VxRCtEZixpQkFBZ0IsRUFLakI7RXBEMUVDO0lvRGlFRjtNQU9JLGdCckRsRWEsRXFEb0VoQixFQUFBOztBQzNFRDtFZjZCRSxpQnBDMUJjO0VvQzJCZCxrQnZDdkJlO0V1Q3dCZixpQkFBZ0IsRWVyQmpCO0VyRFRDO0lxRERGO01ma0NJLGdCdkMzQmE7TXVDNEJiLG1CQUFnQixFZXpCbkIsRUFBQTtFckRUQztJcURERjtNZnVDSSxnQnZDaENhO011Q2lDYixrQkFBZ0IsRWU5Qm5CLEVBQUE7RUFWRDtJQUlJLGVuRHdCVyxFbUR2Qlo7RUFMSDtJQVFJLGVuRHNCVSxFbURyQlg7O0FBR0g7RUFDRSxtQkFBbUI7RUFDbkIsb0J0RFBlO0VzRFFmLHVCdERSZSxFc0QwRmhCO0VBckZEO0lBTUkscUJ0RFhhLEVzRFlkO0VyRGxCRDtJcURXRjtNQVVJLHNCdERmYTtNc0RnQmIseUJ0RGhCYSxFc0QwRmhCO01BckZEO1FBY00sdUJ0RG5CVyxFc0RvQlosRUFBQTtFckQxQkg7SXFEV0Y7TUFtQkkscUJ0RHhCYTtNc0R5QmIsd0J0RHpCYSxFc0QwRmhCO01BckZEO1FBdUJNLHNCdEQ1QlcsRXNENkJaLEVBQUE7RUF4Qkw7O0lBNkJNLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsT0FBTztJQUNQLFVBQVU7SUFDVixnQ0FBcUI7UUFBckIsNEJBQXFCO0lBQ3JCLGVBQWU7SUFDZiw2QkFBVztJQUNYLGlCdER6Q1c7SXNEMENYLDBCbkRsQ2EsRW1EK0NkO0lyRDdESDtNcURXRjs7UUF3Q1EsbUJBQXVCLEVBVTFCLEVBQUE7SXJEN0RIO01xRFdGOztRQTRDUSxxQkFBdUIsRUFNMUIsRUFBQTtJckQ3REg7TXFEV0Y7O1FBZ0RRLHFCQUF3QixFQUUzQixFQUFBO0VBbERMO0lBdURNLFlBQVk7SUFDWixtQkFBbUI7SUFDbkIsa0J0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QkFBZ0IsRWdDNUZuQixFQUFBO0V0RVJDO0lzRUtGO01oQ21HSSxnQnZDbEdhO011Q21HYixpQkFBZ0IsRWdDakduQixFQUFBOztBQUVEO0VoQ0VFLGlCcENWYztFb0NXZCxnQnZDUGU7RXVDUWYsbUJBQWdCLEVnQ0ZqQjtFdEVaQztJc0VVRjtNaENPSSxnQnZDWGE7TXVDWWIsbUJBQWdCLEVnQ05uQixFQUFBO0V0RVpDO0lzRVVGO01oQ1lJLGtCdkNoQmE7TXVDaUJiLHFCQUFnQixFZ0NYbkIsRUFBQTs7QUFFRDtFaENjRSxpQnBDMUJjO0VvQzJCZCxrQnZDdkJlO0V1Q3dCZixpQkFBZ0IsRWdDZGpCO0V0RWhCQztJc0VjRjtNaENtQkksZ0J2QzNCYTtNdUM0QmIsbUJBQWdCLEVnQ2xCbkIsRUFBQTtFdEVoQkM7SXNFY0Y7TWhDd0JJLGdCdkNoQ2E7TXVDaUNiLGtCQUFnQixFZ0N2Qm5CLEVBQUE7O0FBRUQ7RWhDMEJFLGlCcEN6Q2E7RW9DMENiLHFCdkN2Q2U7RXVDd0NmLHFCQUFnQixFZ0MxQmpCO0V0RXBCQztJc0VrQkY7TWhDK0JJLGdCdkMzQ2E7TXVDNENiLG9CQUFnQixFZ0M5Qm5CLEVBQUE7RXRFcEJDO0lzRWtCRjtNaENvQ0ksb0J2Q2hEYTtNdUNpRGIscUJBQWdCLEVnQ25DbkIsRUFBQTs7QUFFRDtFaENzQ0UsaUJwQ3ZEVztFb0N3RFgsbUJ2Q3ZEZTtFdUN3RGYsaUJBQWdCLEVnQ3RDakI7RXRFeEJDO0lzRXNCRjtNaEMyQ0ksaUJwQzlEVztNb0MrRFgscUJ2QzVEYTtNdUM2RGIscUJBQWdCLEVnQzNDbkIsRUFBQTtFdEV4QkM7SXNFc0JGO01oQ2lESSxvQnZDakVhO011Q2tFYixxQkFBZ0IsRWdDaERuQixFQUFBOztBQUVEO0VoQ21ERSxpQnBDMUVhO0VvQzJFYixvQnZDeEVlO0V1Q3lFZixxQkFBZ0IsRWdDbkRqQjtFdEU1QkM7SXNFMEJGO01oQ3dESSxtQnZDNUVhO011QzZFYixpQkFBZ0IsRWdDdkRuQixFQUFBOztBQUVEO0VoQzBERSxpQnBDdEZjO0VvQ3VGZCxtQnZDbkZlO0V1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ckVqSW1CO0VxRWtJbkIsZ0J4RS9JZTtFd0VnSmYsc0JBQXNCO0VBQ3RCLHNDckVwSW1CO0VxRXFJbkIsc0JBQXNCLEVBQ3ZCIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyohIG5vcm1hbGl6ZS5jc3MgdjcuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4vKiBEb2N1bWVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluXG4gKiAgICBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4gKi9cblxuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1OyAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xufVxuXG4vKiBTZWN0aW9uc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5cbmFydGljbGUsXG5hc2lkZSxcbmZvb3RlcixcbmhlYWRlcixcbm5hdixcbnNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xuXG5maWdjYXB0aW9uLFxuZmlndXJlLFxubWFpbiB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IG1hcmdpbiBpbiBJRSA4LlxuICovXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuICovXG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIDEgKi9cbiAgaGVpZ2h0OiAwOyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8qIDEgKi9cbiAgZm9udC1zaXplOiAxZW07IC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICogMi4gUmVtb3ZlIGdhcHMgaW4gbGlua3MgdW5kZXJsaW5lIGluIGlPUyA4KyBhbmQgU2FmYXJpIDgrLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzOyAvKiAyICovXG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvKiAyICovXG59XG5cbi8qKlxuICogUHJldmVudCB0aGUgZHVwbGljYXRlIGFwcGxpY2F0aW9uIG9mIGBib2xkZXJgIGJ5IHRoZSBuZXh0IHJ1bGUgaW4gU2FmYXJpIDYuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGJhY2tncm91bmQgYW5kIGNvbG9yIGluIElFIDktLlxuICovXG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vKipcbiAqIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICogYWxsIGJyb3dzZXJzLlxuICovXG5cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG52aWRlbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5cbmF1ZGlvOm5vdChbY29udHJvbHNdKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGhlaWdodDogMDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLS5cbiAqL1xuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qKlxuICogSGlkZSB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gKi9cblxuc3ZnOm5vdCg6cm9vdCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTsgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTsgLyogMSAqL1xuICBtYXJnaW46IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQgeyAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogMS4gUHJldmVudCBhIFdlYktpdCBidWcgd2hlcmUgKDIpIGRlc3Ryb3lzIG5hdGl2ZSBgYXVkaW9gIGFuZCBgdmlkZW9gXG4gKiAgICBjb250cm9scyBpbiBBbmRyb2lkIDQuXG4gKiAyLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0OyAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlOyAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8qIDEgKi9cbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IC8qIDEgKi9cbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblxuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8qIDEgKi9cbiAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8qIDEgKi9cbiAgZm9udDogaW5oZXJpdDsgLyogMiAqL1xufVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICovXG5cbmRldGFpbHMsIC8qIDEgKi9cbm1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xufVxuXG4vKiBTY3JpcHRpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuY2FudmFzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLS5cbiAqL1xuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59IiwiLyohIG5vcm1hbGl6ZS5jc3MgdjcuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyogRG9jdW1lbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW5cbiAqICAgIElFIG9uIFdpbmRvd3MgUGhvbmUgYW5kIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAvKiAxICovXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xuICAvKiAyICovXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqLyB9XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYm9keSB7XG4gIG1hcmdpbjogMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5mb290ZXIsXG5oZWFkZXIsXG5uYXYsXG5zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gKiBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuICovXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwOyB9XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5tYWluIHtcbiAgLyogMSAqL1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuZmlndXJlIHtcbiAgbWFyZ2luOiAxZW0gNDBweDsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKiAyLiBSZW1vdmUgZ2FwcyBpbiBsaW5rcyB1bmRlcmxpbmUgaW4gaU9TIDgrIGFuZCBTYWZhcmkgOCsuXG4gKi9cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLyogMSAqL1xuICAtd2Via2l0LXRleHQtZGVjb3JhdGlvbi1za2lwOiBvYmplY3RzO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LSBhbmQgRmlyZWZveCAzOS0uXG4gKiAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuICovXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIC8qIDEgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIC8qIDIgKi9cbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0OyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgYmFja2dyb3VuZCBhbmQgY29sb3IgaW4gSUUgOS0uXG4gKi9cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmYwO1xuICBjb2xvcjogIzAwMDsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlOyB9XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtOyB9XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtOyB9XG5cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICovXG5hdWRpbyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gaU9TIDQtNy5cbiAqL1xuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC0uXG4gKi9cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTsgfVxuXG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLyogRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAvKiAxICovXG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgLyogMSAqL1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG4gIC8qIDIgKi8gfVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQge1xuICAvKiAxICovXG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcblt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0OyB9XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTsgfVxuXG4vKipcbiAqIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gKiAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gKiAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gKiAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cbiAqL1xubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBjb2xvcjogaW5oZXJpdDtcbiAgLyogMiAqL1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgLyogMSAqL1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8qIDEgKi9cbiAgcGFkZGluZzogMDtcbiAgLyogMyAqL1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAvKiAxICovIH1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAvKiAxICovXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgLyogMiAqLyB9XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLS5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC0uXG4gKi9cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAvKiAxICovXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAvKiAyICovIH1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAqIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cbiAqL1xuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICAvKiAxICovXG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIDIgKi8gfVxuXG4vKiBJbnRlcmFjdGl2ZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqL1xuZGV0YWlscyxcbm1lbnUge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyB9XG5cbi8qIFNjcmlwdGluZ1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cbmNhbnZhcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLyogSGlkZGVuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uY29sLXZlcnRpY2FsLWZsZXgge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmNvbC1mbGV4LXdyYXAge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogMzguMzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDY0cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBtYXgtd2lkdGg6IDkwcmVtOyB9IH1cblxuLmNvbC1zcGFuLXMtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uY29sLXNwYW4tZy1zLTEge1xuICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cblxuLmNvbC1zcGFuLXMtMiB7XG4gIHdpZHRoOiAxNi42NjY2NyU7IH1cblxuLmNvbC1zcGFuLWctcy0yIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbTsgfVxuXG4uY29sLXNwYW4tcy0zIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uY29sLXNwYW4tZy1zLTMge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbjogMC45Mzc1cmVtOyB9XG5cbi5jb2wtc3Bhbi1zLTQge1xuICB3aWR0aDogMzMuMzMzMzMlOyB9XG5cbi5jb2wtc3Bhbi1nLXMtNCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cblxuLmNvbC1zcGFuLXMtNSB7XG4gIHdpZHRoOiA0MS42NjY2NyU7IH1cblxuLmNvbC1zcGFuLWctcy01IHtcbiAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbTsgfVxuXG4uY29sLXNwYW4tcy02IHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uY29sLXNwYW4tZy1zLTYge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbjogMC45Mzc1cmVtOyB9XG5cbi5jb2wtc3Bhbi1zLTcge1xuICB3aWR0aDogNTguMzMzMzMlOyB9XG5cbi5jb2wtc3Bhbi1nLXMtNyB7XG4gIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cblxuLmNvbC1zcGFuLXMtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NyU7IH1cblxuLmNvbC1zcGFuLWctcy04IHtcbiAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbTsgfVxuXG4uY29sLXNwYW4tcy05IHtcbiAgd2lkdGg6IDc1JTsgfVxuXG4uY29sLXNwYW4tZy1zLTkge1xuICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbjogMC45Mzc1cmVtOyB9XG5cbi5jb2wtc3Bhbi1zLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuXG4uY29sLXNwYW4tZy1zLTEwIHtcbiAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbTsgfVxuXG4uY29sLXNwYW4tcy0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmNvbC1zcGFuLWctcy0xMSB7XG4gIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cblxuLmNvbC1zcGFuLXMtMTIge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY29sLXNwYW4tZy1zLTEyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1tLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1tLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLWctbS0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tbS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1nLW0tNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1tLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLWctbS01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tbS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1nLW0tNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1tLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLWctbS04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tbS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1zcGFuLWctbS0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtc3Bhbi1tLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLXNwYW4tZy1tLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1sLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1sLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWctbC0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWwtMyB7XG4gICAgd2lkdGg6IDI1JTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLWwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1sLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWctbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWwtNiB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLWwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1sLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWctbC04IHtcbiAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWwtOSB7XG4gICAgd2lkdGg6IDc1JTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tbC0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1zcGFuLWctbC0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtc3Bhbi1sLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLXNwYW4tZy1sLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi14bC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtMSB7XG4gICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLXhsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi14bC0zIHtcbiAgICB3aWR0aDogMjUlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLXhsLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4teGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4tZy14bC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLXhsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi14bC02IHtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLXhsLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4teGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4tZy14bC03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLXhsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi14bC05IHtcbiAgICB3aWR0aDogNzUlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLXhsLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4teGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4teGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1zcGFuLWcteGwtMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLXNwYW4teGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtc3Bhbi1nLXhsLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cblxuLmNvbC1vZmZzZXQtcy0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUpOyB9XG5cbi5jb2wtb2Zmc2V0LWctcy0xIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtMiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTIge1xuICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtNSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTUge1xuICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtNiB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTcge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTgge1xuICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtOSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pOyB9XG5cbi5jb2wtb2Zmc2V0LXMtMTAge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUpOyB9XG5cbi5jb2wtb2Zmc2V0LWctcy0xMCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH1cblxuLmNvbC1vZmZzZXQtcy0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTExIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfVxuXG4uY29sLW9mZnNldC1zLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSk7IH1cblxuLmNvbC1vZmZzZXQtZy1zLTEyIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTAwJSArIDAuOTM3NXJlbSk7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LW0tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1vZmZzZXQtbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LW0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1nLW0tMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1tLTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1vZmZzZXQtZy1tLTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1vZmZzZXQtbS01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LW0tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1nLW0tNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1tLTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1vZmZzZXQtZy1tLTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbC1vZmZzZXQtbS04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LW0tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1nLW0tOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1tLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1tLTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1tLTEyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29sLW9mZnNldC1nLW0tMTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1vZmZzZXQtbC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1nLWwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1sLTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1vZmZzZXQtZy1sLTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1vZmZzZXQtbC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1nLWwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1sLTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1vZmZzZXQtZy1sLTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmNvbC1vZmZzZXQtbC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1nLWwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1sLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1sLTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWctbC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1sLTEyIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxMDAlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuY29sLW9mZnNldC1nLWwtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC1nLXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC14bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlKTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAuY29sLW9mZnNldC1nLXhsLTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LXhsLTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgLmNvbC1vZmZzZXQteGwtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5jb2wtb2Zmc2V0LWcteGwtMTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDEwMCUgKyAwLjkzNzVyZW0pOyB9IH1cblxuKixcbjpiZWZvcmUsXG46YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7IH1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICBib2R5Lm1lbnUtaXMtb3BlbiB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9IH1cblxuLyohXG4gKiBIYW1idXJnZXJzXG4gKiBAZGVzY3JpcHRpb24gVGFzdHkgQ1NTLWFuaW1hdGVkIGhhbWJ1cmdlcnNcbiAqIEBhdXRob3IgSm9uYXRoYW4gU3VoIEBqb25zdWhcbiAqIEBzaXRlIGh0dHBzOi8vam9uc3VoLmNvbS9oYW1idXJnZXJzXG4gKiBAbGluayBodHRwczovL2dpdGh1Yi5jb20vam9uc3VoL2hhbWJ1cmdlcnNcbiAqL1xuLmhhbWJ1cmdlciB7XG4gIHBhZGRpbmc6IDAgMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICAuaGFtYnVyZ2VyOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAxOyB9XG5cbi5oYW1idXJnZXItYm94IHtcbiAgd2lkdGg6IDEuMTI1cmVtO1xuICBoZWlnaHQ6IDAuODc1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uaGFtYnVyZ2VyLWlubmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMC4wNjI1cmVtOyB9XG4gIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAxLjEyNXJlbTtcbiAgICBoZWlnaHQ6IDAuMTI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlOyB9XG4gIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IC0wLjM3NXJlbTsgfVxuICAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAtMC4zNzVyZW07IH1cblxuLypcbiAgICogM0RYXG4gICAqL1xuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDIuMjVyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R4IC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLTNkeCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjM3NXJlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHgtciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiAyLjI1cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuMzc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuXG4vKlxuICAgKiAzRFlcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1ib3gge1xuICBwZXJzcGVjdGl2ZTogMi4yNXJlbTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHkgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R5IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLmhhbWJ1cmdlci0tM2R5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjM3NXJlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogM0RZIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHktciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiAyLjI1cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLTNkeS1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R5LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHktci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuMzc1cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC4zNzVyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWFlcbiAgICovXG4uaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItYm94IHtcbiAgcGVyc3BlY3RpdmU6IDIuMjVyZW07IH1cblxuLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tM2R4eSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG5cbi5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLTNkeHkuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC4zNzVyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIDNEWFkgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWJveCB7XG4gIHBlcnNwZWN0aXZlOiAyLjI1cmVtOyB9XG5cbi5oYW1idXJnZXItLTNkeHktciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS0zZHh5LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS0zZHh5LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiByb3RhdGVYKDE4MGRlZykgcm90YXRlWSgxODBkZWcpIHJvdGF0ZVooLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMC4zNzVyZW0sIDApIHJvdGF0ZSg0NWRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tM2R4eS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC4zNzVyZW0sIDApIHJvdGF0ZSgtNDVkZWcpOyB9XG5cbi8qXG4gICAqIEFycm93XG4gICAqL1xuLmhhbWJ1cmdlci0tYXJyb3cuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuMjI1cmVtLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTAuMjI1cmVtLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQXJyb3cgUmlnaHRcbiAgICovXG4uaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuMjI1cmVtLCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3ctci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuMjI1cmVtLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gICAqIEFycm93IEFsdFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93YWx0IC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMXMgZWFzZSwgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTsgfVxuXG4uaGFtYnVyZ2VyLS1hcnJvd2FsdC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjIyNXJlbSwgLTAuMjgxMjVyZW0sIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIDAuMXMgY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzLCAwLjY4NSwgMC4yMik7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0wLjIyNXJlbSwgMC4yODEyNXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi8qXG4gICAqIEFycm93IEFsdCBSaWdodFxuICAgKi9cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7IH1cblxuLmhhbWJ1cmdlci0tYXJyb3dhbHQtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgdG9wOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuMjI1cmVtLCAtMC4yODEyNXJlbSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi5oYW1idXJnZXItLWFycm93YWx0LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgYm90dG9tOiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAuMjI1cmVtLCAwLjI4MTI1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLCB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpOyB9XG5cbi8qXG4gKiBBcnJvdyBUdXJuXG4gKi9cbi5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDhweCwgMCwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG5cbi8qXG4gKiBBcnJvdyBUdXJuIFJpZ2h0XG4gKi9cbi5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7IH1cbiAgLmhhbWJ1cmdlci0tYXJyb3d0dXJuLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpOyB9XG4gIC5oYW1idXJnZXItLWFycm93dHVybi1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7IH1cblxuLypcbiAgICogQm9yaW5nXG4gICAqL1xuLmhhbWJ1cmdlci0tYm9yaW5nIC5oYW1idXJnZXItaW5uZXIsIC5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUsIC5oYW1idXJnZXItLWJvcmluZyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG5vbmU7IH1cblxuLmhhbWJ1cmdlci0tYm9yaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLWJvcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1ib3JpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTsgfVxuXG4vKlxuICAgKiBDb2xsYXBzZVxuICAgKi9cbi5oYW1idXJnZXItLWNvbGxhcHNlIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xM3M7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTNzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTAuNzVyZW07XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMC4xcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTAuMzc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSwgb3BhY2l0eSAwLjFzIDAuMjJzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBDb2xsYXBzZSBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjEzcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogLTAuNzVyZW07XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksIG9wYWNpdHkgMC4xcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tY29sbGFwc2UtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG5cbi5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLWNvbGxhcHNlLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBFbGFzdGljXG4gICAqL1xuLmhhbWJ1cmdlci0tZWxhc3RpYyAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiAwLjA2MjVyZW07XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMC43NXJlbTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNzVzIGN1YmljLWJlemllcigwLjY4LCAtMC41NSwgMC4yNjUsIDEuNTUpOyB9XG5cbi5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuMzc1cmVtLCAwKSByb3RhdGUoMTM1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43NXJlbSwgMCkgcm90YXRlKC0yNzBkZWcpO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1czsgfVxuXG4vKlxuICAgKiBFbGFzdGljIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRvcDogMC4wNjI1cmVtO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjI3NXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTsgfVxuICAuaGFtYnVyZ2VyLS1lbGFzdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xMjVzIDAuMjc1cyBlYXNlOyB9XG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwLjc1cmVtO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjI3NXMgY3ViaWMtYmV6aWVyKDAuNjgsIC0wLjU1LCAwLjI2NSwgMS41NSk7IH1cblxuLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKC0xMzVkZWcpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMC43NXJlbSwgMCkgcm90YXRlKDI3MGRlZyk7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMC4wNzVzOyB9XG5cbi8qXG4gICAqIEVtcGhhdGljXG4gICAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5oYW1idXJnZXItLWVtcGhhdGljIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgICAgdG9wOiAwLjM3NXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTI1cyBjdWJpYy1iZXppZXIoMC42LCAwLjA0LCAwLjk4LCAwLjMzNSksIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCByaWdodCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTIuMjVyZW07XG4gICAgICB0b3A6IC0yLjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyLjI1cmVtLCAyLjI1cmVtLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICByaWdodDogLTIuMjVyZW07XG4gICAgICB0b3A6IC0yLjI1cmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMi4yNXJlbSwgMi4yNXJlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAwLjEyNXMgZWFzZS1vdXQsIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLCB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTsgfVxuXG4vKlxuICAgKiBFbXBoYXRpYyBSZXZlcnNlXG4gICAqL1xuLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAgIC5oYW1idXJnZXItLWVtcGhhdGljLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIGxlZnQgMC4xMjVzIDAuMTc1cyBlYXNlLWluOyB9XG4gICAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICB0b3A6IDAuMzc1cmVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogLTIuMjVyZW07XG4gICAgICB0b3A6IDIuMjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIuMjVyZW0sIC0yLjI1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LCB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhciwgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7IH1cbiAgICAuaGFtYnVyZ2VyLS1lbXBoYXRpYy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgICByaWdodDogLTIuMjVyZW07XG4gICAgICB0b3A6IDIuMjVyZW07XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yLjI1cmVtLCAtMi4yNXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCwgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpOyB9XG5cbi8qXG4gICAqIE1pbnVzXG4gICAqL1xuLmhhbWJ1cmdlci0tbWludXMgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyAwcyBlYXNlLW91dCwgdG9wIDAuMDhzIDBzIGVhc2Utb3V0LCBvcGFjaXR5IDBzIGxpbmVhcjsgfVxuXG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsIHRvcCAwLjA4cyBlYXNlLW91dCwgb3BhY2l0eSAwcyAwLjA4cyBsaW5lYXI7IH1cblxuLmhhbWJ1cmdlci0tbWludXMuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gIHRvcDogMDsgfVxuXG4uaGFtYnVyZ2VyLS1taW51cy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICBib3R0b206IDA7IH1cblxuLypcbiAgICogU2xpZGVyXG4gICAqL1xuLmhhbWJ1cmdlci0tc2xpZGVyIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMDYyNXJlbTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDAuMzc1cmVtO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1czsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRvcDogMC43NXJlbTsgfVxuXG4uaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuMzc1cmVtLCAwKSByb3RhdGUoNDVkZWcpOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpIHRyYW5zbGF0ZTNkKC0wLjE2MDcxcmVtLCAtMC4yNXJlbSwgMCk7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjc1cmVtLCAwKSByb3RhdGUoLTkwZGVnKTsgfVxuXG4vKlxuICAgKiBTbGlkZXIgUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMDYyNXJlbTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMC4zNzVyZW07XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzOyB9XG4gIC5oYW1idXJnZXItLXNsaWRlci1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDAuNzVyZW07IH1cblxuLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAuMzc1cmVtLCAwKSByb3RhdGUoLTQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1zbGlkZXItci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoMC4xNjA3MXJlbSwgLTAuMjVyZW0sIDApO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tc2xpZGVyLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjc1cmVtLCAwKSByb3RhdGUoOTBkZWcpOyB9XG5cbi8qXG4gICAqIFNwaW5cbiAgICovXG4uaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjIycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwaW4gLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1zcGluIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjI1cyBlYXNlLWluLCB0cmFuc2Zvcm0gMC4yMnMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDIyNWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3Bpbi5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCwgb3BhY2l0eSAwLjFzIDAuMTJzIGVhc2Utb3V0OyB9XG4gIC5oYW1idXJnZXItLXNwaW4uaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMjJzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFNwaW4gUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXNwaW4tciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjI1cyBlYXNlLWluLCBvcGFjaXR5IDAuMXMgZWFzZS1pbjsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjI1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZS1vdXQsIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDsgfVxuICAuaGFtYnVyZ2VyLS1zcGluLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3ByaW5nXG4gICAqL1xuLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXIge1xuICB0b3A6IDAuMDYyNXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwcyAwLjEzcyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwLjM3NXJlbTtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSwgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZyAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdG9wOiAwLjc1cmVtO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKDQ1ZGVnKTsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmcuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLjM3NXJlbSwgMCkgcm90YXRlKC00NWRlZyk7IH1cblxuLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IC0wLjc1cmVtO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCBvcGFjaXR5IDBzIGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS1zcHJpbmctciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAuNjY2NjcsIDAuNjY2NjcsIDEpLCB0cmFuc2Zvcm0gMC4xM3MgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0wLjM3NXJlbSwgMCkgcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgLmhhbWJ1cmdlci0tc3ByaW5nLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksIG9wYWNpdHkgMHMgMC4yMnMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXNwcmluZy1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLCB0cmFuc2Zvcm0gMC4xM3MgMC4yMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cblxuLypcbiAgICogU3RhbmRcbiAgICovXG4uaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSwgYmFja2dyb3VuZC1jb2xvciAwcyAwLjA3NXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZCAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zdGFuZC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4uaGFtYnVyZ2VyLS1zdGFuZC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpLCBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3RhbmQtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbiwgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuXG4uaGFtYnVyZ2VyLS1zdGFuZC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSksIGJhY2tncm91bmQtY29sb3IgMHMgMC4xNXMgbGluZWFyOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjFzIGVhc2Utb3V0LCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIC5oYW1idXJnZXItLXN0YW5kLXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICBib3R0b206IDA7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA3NXMgMC4xcyBlYXNlLW91dCwgdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuXG4vKlxuICAgKiBTcXVlZXplXG4gICAqL1xuLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cbiAgLmhhbWJ1cmdlci0tc3F1ZWV6ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xMnMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMTJzIGVhc2UsIHRyYW5zZm9ybSAwLjA3NXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7IH1cblxuLmhhbWJ1cmdlci0tc3F1ZWV6ZS5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgZWFzZSwgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTsgfVxuICAuaGFtYnVyZ2VyLS1zcXVlZXplLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyBlYXNlLCB0cmFuc2Zvcm0gMC4wNzVzIDAuMTJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG5cbi8qXG4gICAqIFZvcnRleFxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleCAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXggLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4IC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBib3R0b20sIHRyYW5zZm9ybTsgfVxuXG4uaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwczsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXguaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgLmhhbWJ1cmdlci0tdm9ydGV4LmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTsgfVxuXG4vKlxuICAgKiBWb3J0ZXggUmV2ZXJzZVxuICAgKi9cbi5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yIC5oYW1idXJnZXItaW5uZXI6OmJlZm9yZSwgLmhhbWJ1cmdlci0tdm9ydGV4LXIgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRvcCwgb3BhY2l0eTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtciAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07IH1cblxuLmhhbWJ1cmdlci0tdm9ydGV4LXIuaXMtYWN0aXZlIC5oYW1idXJnZXItaW5uZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNzY1ZGVnKTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuICAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YmVmb3JlLCAuaGFtYnVyZ2VyLS12b3J0ZXgtci5pcy1hY3RpdmUgLmhhbWJ1cmdlci1pbm5lcjo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIC5oYW1idXJnZXItLXZvcnRleC1yLmlzLWFjdGl2ZSAuaGFtYnVyZ2VyLWlubmVyOjphZnRlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7IH1cblxuLyohXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNyBOQVZFUiBDb3JwLlxyXG4gKiBiaWxsYm9hcmQuanMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcclxuICogXHJcbiAqIGJpbGxib2FyZC5qcywgSmF2YVNjcmlwdCBjaGFydCBsaWJyYXJ5XHJcbiAqIGh0dHA6Ly9uYXZlci5naXRodWIuaW8vYmlsbGJvYXJkLmpzL1xyXG4gKiBcclxuICogQHZlcnNpb24gMS4xLjFcclxuICovXG4vKi0tIENoYXJ0IC0tKi9cbi5iYiBzdmcge1xuICBmb250OiAxMHB4IHNhbnMtc2VyaWY7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLmJiIHBhdGgsIC5iYiBsaW5lIHtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlOiAjMDAwOyB9XG5cbi5iYiB0ZXh0IHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLmJiLWxlZ2VuZC1pdGVtLXRpbGUsXG4uYmIteGdyaWQtZm9jdXMsXG4uYmIteWdyaWQsXG4uYmItZXZlbnQtcmVjdCxcbi5iYi1iYXJzIHBhdGgge1xuICBzaGFwZS1yZW5kZXJpbmc6IGNyaXNwRWRnZXM7IH1cblxuLmJiLWNoYXJ0LWFyYyBwYXRoIHtcbiAgc3Ryb2tlOiAjZmZmOyB9XG5cbi5iYi1jaGFydC1hcmMgdGV4dCB7XG4gIGZpbGw6ICNmZmY7XG4gIGZvbnQtc2l6ZTogMTNweDsgfVxuXG4vKi0tIEF4aXMgLS0qL1xuLyotLSBHcmlkIC0tKi9cbi5iYi1ncmlkIGxpbmUge1xuICBzdHJva2U6ICNhYWE7IH1cblxuLmJiLWdyaWQgdGV4dCB7XG4gIGZpbGw6ICNhYWE7IH1cblxuLmJiLXhncmlkLCAuYmIteWdyaWQge1xuICBzdHJva2UtZGFzaGFycmF5OiAzIDM7IH1cblxuLyotLSBUZXh0IG9uIENoYXJ0IC0tKi9cbi5iYi10ZXh0LmJiLWVtcHR5IHtcbiAgZmlsbDogIzgwODA4MDtcbiAgZm9udC1zaXplOiAyZW07IH1cblxuLyotLSBMaW5lIC0tKi9cbi5iYi1saW5lIHtcbiAgc3Ryb2tlLXdpZHRoOiAxcHg7IH1cblxuLyotLSBQb2ludCAtLSovXG4uYmItY2lyY2xlLl9leHBhbmRlZF8ge1xuICBzdHJva2Utd2lkdGg6IDFweDtcbiAgc3Ryb2tlOiB3aGl0ZTsgfVxuXG4uYmItc2VsZWN0ZWQtY2lyY2xlIHtcbiAgZmlsbDogd2hpdGU7XG4gIHN0cm9rZS13aWR0aDogMnB4OyB9XG5cbi8qLS0gQmFyIC0tKi9cbi5iYi1iYXIge1xuICBzdHJva2Utd2lkdGg6IDA7IH1cblxuLmJiLWJhci5fZXhwYW5kZWRfIHtcbiAgZmlsbC1vcGFjaXR5OiAwLjc1OyB9XG5cbi8qLS0gRm9jdXMgLS0qL1xuLmJiLXRhcmdldC5iYi1mb2N1c2VkIHtcbiAgb3BhY2l0eTogMTsgfVxuXG4uYmItdGFyZ2V0LmJiLWZvY3VzZWQgcGF0aC5iYi1saW5lLCAuYmItdGFyZ2V0LmJiLWZvY3VzZWQgcGF0aC5iYi1zdGVwIHtcbiAgc3Ryb2tlLXdpZHRoOiAycHg7IH1cblxuLmJiLXRhcmdldC5iYi1kZWZvY3VzZWQge1xuICBvcGFjaXR5OiAwLjMgIWltcG9ydGFudDsgfVxuXG4vKi0tIFJlZ2lvbiAtLSovXG4uYmItcmVnaW9uIHtcbiAgZmlsbDogc3RlZWxibHVlO1xuICBmaWxsLW9wYWNpdHk6IC4xOyB9XG5cbi8qLS0gQnJ1c2ggLS0qL1xuLmJiLWJydXNoIC5leHRlbnQge1xuICBmaWxsLW9wYWNpdHk6IC4xOyB9XG5cbi8qLS0gU2VsZWN0IC0gRHJhZyAtLSovXG4vKi0tIExlZ2VuZCAtLSovXG4uYmItbGVnZW5kLWl0ZW0ge1xuICBmb250LXNpemU6IDEycHg7IH1cblxuLmJiLWxlZ2VuZC1pdGVtLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDAuMTU7IH1cblxuLmJiLWxlZ2VuZC1iYWNrZ3JvdW5kIHtcbiAgb3BhY2l0eTogMC43NTtcbiAgZmlsbDogd2hpdGU7XG4gIHN0cm9rZTogbGlnaHRncmF5O1xuICBzdHJva2Utd2lkdGg6IDE7IH1cblxuLyotLSBUaXRsZSAtLSovXG4uYmItdGl0bGUge1xuICBmb250OiAxNHB4IHNhbnMtc2VyaWY7IH1cblxuLyotLSBUb29sdGlwIC0tKi9cbi5iYi10b29sdGlwLWNvbnRhaW5lciB7XG4gIHotaW5kZXg6IDEwOyB9XG5cbi5iYi10b29sdGlwIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGVtcHR5LWNlbGxzOiBzaG93O1xuICBvcGFjaXR5OiAwLjk7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogN3B4IDdweCAxMnB4IC05cHggIzc3Nzc3NztcbiAgLW1vei1ib3gtc2hhZG93OiA3cHggN3B4IDEycHggLTlweCAjNzc3Nzc3O1xuICBib3gtc2hhZG93OiA3cHggN3B4IDEycHggLTlweCAjNzc3Nzc3OyB9XG5cbi5iYi10b29sdGlwIHRyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0NDQzsgfVxuXG4uYmItdG9vbHRpcCB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcGFkZGluZzogMnB4IDVweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNGRkY7IH1cblxuLmJiLXRvb2x0aXAgdGQge1xuICBmb250LXNpemU6IDEzcHg7XG4gIHBhZGRpbmc6IDNweCA2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkICM5OTk7IH1cblxuLmJiLXRvb2x0aXAgdGQgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDZweDsgfVxuXG4uYmItdG9vbHRpcCB0ZC52YWx1ZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi8qLS0gQXJlYSAtLSovXG4uYmItYXJlYSB7XG4gIHN0cm9rZS13aWR0aDogMDtcbiAgb3BhY2l0eTogMC4yOyB9XG5cbi8qLS0gQXJjIC0tKi9cbi5iYi1jaGFydC1hcmNzLXRpdGxlIHtcbiAgZG9taW5hbnQtYmFzZWxpbmU6IG1pZGRsZTtcbiAgZm9udC1zaXplOiAxLjNlbTsgfVxuXG4uYmItY2hhcnQtYXJjcyAuYmItY2hhcnQtYXJjcy1iYWNrZ3JvdW5kIHtcbiAgZmlsbDogI2UwZTBlMDtcbiAgc3Ryb2tlOiBub25lOyB9XG5cbi5iYi1jaGFydC1hcmNzIC5iYi1jaGFydC1hcmNzLWdhdWdlLXVuaXQge1xuICBmaWxsOiAjMDAwO1xuICBmb250LXNpemU6IDE2cHg7IH1cblxuLmJiLWNoYXJ0LWFyY3MgLmJiLWNoYXJ0LWFyY3MtZ2F1Z2UtbWF4IHtcbiAgZmlsbDogIzc3NzsgfVxuXG4uYmItY2hhcnQtYXJjcyAuYmItY2hhcnQtYXJjcy1nYXVnZS1taW4ge1xuICBmaWxsOiAjNzc3OyB9XG5cbi5iYi1jaGFydC1hcmMgLmJiLWdhdWdlLXZhbHVlIHtcbiAgZmlsbDogIzAwMDsgfVxuXG4vKiMgc291cmNlTWFwcGluZ1VSTD1iaWxsYm9hcmQuY3NzLm1hcCovXG5ib2R5IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbnVsIHtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luOiAwOyB9XG5cbi5idG4ge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHBhZGRpbmc6IDAgMS4xNjY2N2VtO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDYuMjVyZW07XG4gIGJvcmRlcjogbm9uZTsgfVxuICAuYnRuIHN2ZyB7XG4gICAgd2lkdGg6IDEuMmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjU2MjVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmJ0biB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgcGFkZGluZzogMCAxLjQyODU3ZW07XG4gICAgICBoZWlnaHQ6IDMuMzc1cmVtOyB9XG4gICAgICAuYnRuIHN2ZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwLjc1cmVtOyB9IH1cblxuLmJ0bi0tYi15IHN2ZyB7XG4gIGZpbGw6ICNGRUUzM0Y7IH1cblxuLmJ0bi0tYi13IHN2ZyB7XG4gIGZpbGw6ICNGRkZGRkY7IH1cblxuLmJ0bi0tdy1iIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlci1jb2xvcjogI0ZGRkZGRjsgfVxuICAuYnRuLS13LWIgc3ZnIHtcbiAgICBmaWxsOiAjMDAwMDAwOyB9XG5cbi5idG4tLWxheWVyLXNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogIzY2NjY2NjtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAuYnRuLS1sYXllci1zZWxlY3QuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBib3JkZXItY29sb3I6ICNGRUUzM0Y7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZFRTMzRjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuYnRuLS1sYXllci1zZWxlY3QuaXMtYWN0aXZlOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm9yZGVyLWxlZnQ6IDAuNzVlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yaWdodDogMC43NWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXRvcDogMC43NWVtIHNvbGlkICNGRUUzM0Y7XG4gICAgICBib3R0b206IC0wLjc1ZW07XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7IH1cblxuLmJ0bi0tY2hldnJvbiBzdmcge1xuICB3aWR0aDogMC41ZW07IH1cblxuLmJ0bi0tZG91YmxlIHtcbiAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCAjRkZGRkZGO1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5idG4tLWRvdWJsZSAuYnRuIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlOyB9XG4gICAgLmJ0bi0tZG91YmxlIC5idG46Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjc4MTI1ZW07IH1cbiAgICAuYnRuLS1kb3VibGUgLmJ0bjpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwLjc4MTI1ZW07IH1cbiAgICAuYnRuLS1kb3VibGUgLmJ0biBwYXRoIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjFzIGVhc2U7IH1cbiAgICAuYnRuLS1kb3VibGUgLmJ0bjpob3ZlciwgLmJ0bi0tZG91YmxlIC5idG46YWN0aXZlLCAuYnRuLS1kb3VibGUgLmJ0bjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuICAgICAgLmJ0bi0tZG91YmxlIC5idG46aG92ZXIgcGF0aCxcbiAgICAgIC5idG4tLWRvdWJsZSAuYnRuOmhvdmVyIHJlY3QsIC5idG4tLWRvdWJsZSAuYnRuOmFjdGl2ZSBwYXRoLFxuICAgICAgLmJ0bi0tZG91YmxlIC5idG46YWN0aXZlIHJlY3QsIC5idG4tLWRvdWJsZSAuYnRuOmZvY3VzIHBhdGgsXG4gICAgICAuYnRuLS1kb3VibGUgLmJ0bjpmb2N1cyByZWN0IHtcbiAgICAgICAgZmlsbDogIzAwMDAwMDsgfVxuICAuYnRuLS1kb3VibGUgc3ZnIHtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuXG4uaW5mby1idG4ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmc6IDA7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZmxvdyA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS4yNWVtOyB9XG5cbi5ncmFkaWVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAzQUVBQiwgIzBDODdCNyA2NiUsICMxODU4QzYpOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZ3JhZGllbnQtLXNtYWxsIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgLmdyYWRpZW50LS1sYXJnZSB7XG4gICAgYmFja2dyb3VuZDogbm9uZTsgfSB9XG5cbi5ncmFkaWVudC0tbGFyZ2U6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMTEuMzczNzA3NTMzMiU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90cmlhbmdsZS5zdmdcIik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5ncmFkaWVudC0tbGFyZ2U6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuXG4uZ3JhZGllbnRfX3N5bWJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMCU7XG4gIGxlZnQ6IDI0JTtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiAzMy43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkIHJnYmEoMzYsIDU2LCAxNjAsIDAuMSk7IH1cbiAgLmdyYWRpZW50X19zeW1ib2w6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7IH1cbiAgLmdyYWRpZW50X19zeW1ib2w6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEzJTtcbiAgICByaWdodDogMTMlO1xuICAgIGJvdHRvbTogMTMlO1xuICAgIGxlZnQ6IDEzJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAwLjEyNXJlbSBzb2xpZCByZ2JhKDM2LCA1NiwgMTYwLCAwLjEpOyB9XG5cbi5uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwMDtcbiAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLm5hdiAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuLm5hdl9fbG9nb3Mge1xuICB3aWR0aDogMTMuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaGVhZGVyLWxvZ29zLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5uYXZfX2xvZ29zIHtcbiAgICAgIG1hcmdpbi10b3A6IDAuOTM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAubmF2X19sb2dvcyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGNhbGMoMTAwJSArIDAuOTM3NXJlbSk7XG4gICAgICByaWdodDogMC45Mzc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgdG9wOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLm5hdl9fbG9nb3Mge1xuICAgICAgd2lkdGg6IDE1cmVtOyB9IH1cbiAgLm5hdl9fbG9nb3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDI0LjE1MDk0JTsgfVxuXG4ubmF2X19tYWluIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS4xODc1cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5uYXZfX21haW4ge1xuICAgICAgcGFkZGluZy10b3A6IDIuMTg3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtOyB9IH1cblxuLm5hdl9fc2l0ZS1uYW1lIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDc1cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5uYXZfX3NpdGUtbmFtZSB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMTI1cmVtOyB9IH1cblxuLm1vYmlsZS1tZW51LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgbGluZS1oZWlnaHQ6IDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgIC5tb2JpbGUtbWVudS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5tb2JpbGUtbWVudS1idXR0b246Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cblxuLnNpdGUtdXJsLCAubmF2X19ociB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMzsgfVxuXG4ubmF2X19ociB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lOyB9XG5cbi5tZW51IHtcbiAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5tZW51IHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLm1lbnUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuXG4ubWVudV9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNC4zMTI1ZW0pIHtcbiAgICAubWVudV9fY29udGFpbmVyIHtcbiAgICAgIG1heC13aWR0aDogOTByZW07XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBwYWRkaW5nLXRvcDogNS41cmVtO1xuICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLCB2aXNpYmlsaXR5IDBzIDAuMnM7IH0gfVxuICAubWVudV9fY29udGFpbmVyLmlzLWFjdGl2ZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLm1lbnVfX2NvbnRhaW5lcjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMC45Mzc1cmVtO1xuICAgICAgYm90dG9tOiA2LjI1cmVtO1xuICAgICAgd2lkdGg6IDEyLjMxMjVyZW07XG4gICAgICBoZWlnaHQ6IDEyLjg3NXJlbTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9tZW51LXN5bWJvbC5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyOyB9IH1cblxuLm1lbnVfX2l0ZW0ge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLm1lbnVfX2l0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4zNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTg3NTsgfVxuICAgICAgLm1lbnVfX2l0ZW06Zmlyc3Qtb2YtdHlwZSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAubWVudV9faXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xMDY4N3JlbTsgfVxuICAgICAgLm1lbnVfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5tZW51X19pdGVtIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubWVudV9faXRlbSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4xMDYyNXJlbTsgfSB9XG5cbi5tZW51X19pdGVtLS1tb2Itb25seSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNC4zMTI1ZW0pIHtcbiAgICAubWVudV9faXRlbS0tbW9iLW9ubHkge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ubWVudV9fbGluayxcbi5zaXRlLXVybCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNGRkZGRkY7IH1cbiAgLmlzLWFjdGl2ZSAubWVudV9fbGluaywgLmlzLWFjdGl2ZVxuICAuc2l0ZS11cmwge1xuICAgIGNvbG9yOiAjRkZGRkZGOyB9XG5cbi5zaXRlLXVybCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMzsgfVxuXG4uaXMtaG9tZSAubWVudV9fbGluay0taG9tZSxcbi5pcy1hYm91dCAubWVudV9fbGluay0tYWJvdXQsXG4uaXMtcmVjb21tZW5kYXRpb25zIC5tZW51X19saW5rLS1yZWNvbW1lbmRhdGlvbnMge1xuICBjb2xvcjogI0ZFRTMzRjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gIC5tZW51X19saW5rLS1hYm91dCwgLm1lbnVfX2xpbmstLXJlY29tbWVuZGF0aW9ucyB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDsgfSB9XG5cbi5tZW51X19saW5rLXNlcGFyYXRvciB7XG4gIHdpZHRoOiAwLjEyNXJlbTtcbiAgaGVpZ2h0OiAxLjEyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgb3BhY2l0eTogMC40OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLm1lbnVfX2xpbmstc2VwYXJhdG9yIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4ubWVudV9fbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5tZW51X19sYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNC4zNzVlbSkgYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAgIC5tZW51X19sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm1lbnVfX3NoYXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLm1lbnVfX3NoYXJlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTsgfSB9XG5cbi5tZW51X19ociB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLm1lbnVfX2hyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uc2hhcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuc2hhcmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc2hhcmUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cblxuLnNoYXJlX19saW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgaGVpZ2h0OiAxLjg3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLnNoYXJlX19saW5rIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zaGFyZV9fbGluayB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTsgfSB9XG5cbi5zZWFyY2hfX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRUUzM0Y7XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNlYXJjaF9fY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAyLjE4NzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICAuc2VhcmNoX19jb250YWluZXIgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IDAuMTI1cmVtIHNvbGlkICMwMDAwMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRUUzM0Y7IH1cblxuLnNlYXJjaF9faW5wdXQge1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zZW07XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkVFMzNGOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLnNlYXJjaF9faW5wdXQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnNlYXJjaF9faW5wdXQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnNlYXJjaF9faW5wdXQge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjE4NzU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTsgfSB9XG4gIC5zZWFyY2hfX2lucHV0W2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC40OyB9XG4gIC5zZWFyY2hfX2lucHV0Ojotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAuc2VhcmNoX19pbnB1dDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuc2VhcmNoX19zdWJtaXQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDAuMjVyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmc6IDAuN2VtOyB9XG4gICAgLnNlYXJjaF9fc3VibWl0IHN2ZyB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2hfX3N1Ym1pdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogMC42MjVyZW07IH0gfVxuXG4uc2VhcmNoX19lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNvbG9yOiByZWQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMS4zcmVtO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuc2VhcmNoX19lcnJvciB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBib3R0b206IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxZW07IH0gfVxuICAuc2VhcmNoX19lcnJvci5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5zZWFyY2hfX3RhZ2xpbmUge1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zZWFyY2hfX3RhZ2xpbmUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtOyB9IH1cblxuLmtleS1jb2wgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDEuMjVlbTsgfVxuXG4ua2V5LWxpc3QgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDAuNWVtOyB9XG5cbi5rZXktaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmtleS1pdGVtOm50aC1vZi10eXBlKDEpIC5rZXktY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEODVEMDk7IH1cbiAgLmtleS1pdGVtOm50aC1vZi10eXBlKDIpIC5rZXktY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMkE3MjM7IH1cbiAgLmtleS1pdGVtOm50aC1vZi10eXBlKDMpIC5rZXktY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNENGMzE7IH1cblxuLmtleS1pdGVtLWhlYWRpbmcge1xuICBjb2xvcjogIzZBNzE3RDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIC5rZXktaXRlbS1oZWFkaW5nIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5rZXktY29sb3Ige1xuICB3aWR0aDogMS4xMjVyZW07XG4gIGhlaWdodDogMS4xMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07IH1cbiAgLmtleS1jb2xvcjpudGgtb2YtdHlwZSgxKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0Q4NUQwOTsgfVxuICAua2V5LWNvbG9yOm50aC1vZi10eXBlKDIpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTJBNzIzOyB9XG4gIC5rZXktY29sb3I6bnRoLW9mLXR5cGUoMykge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRUUzM0Y7IH1cblxuLmZpbmRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAxLjg3NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5maW5kaW5nIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1LjMxMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNS4zMTI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmZpbmRpbmcge1xuICAgICAgcGFkZGluZy10b3A6IDkuMzc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDkuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuZmluZGluZzpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5maW5kaW5nLS13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjsgfVxuICAgIC5maW5kaW5nLS13aGl0ZTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvdHJpYW5nbGUtc21hbGwuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuICAuZmluZGluZy0tYmxhY2sge1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgLmZpbmRpbmc6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuZmluZGluZzpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgLmZpbmRpbmc6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtOyB9IH1cblxuLmZpbmRpbmdfX2dyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgei1pbmRleDogMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZmluZGluZ19fZ3JpZCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLmZpbmRpbmdfX2dyaWQtLXJldmVyc2Uge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH0gfVxuXG4uZmluZGluZ19fY29sIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luOiAwLjkzNzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuZmluZGluZ19fY29sIHtcbiAgICAgIG1heC13aWR0aDogMzMuNzVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5maW5kaW5nX19jb2wtLWNoYXJ0IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbjogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmZpbmRpbmdfX2NvbC0tdGV4dCB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbi5maW5kaW5nX19ncmFkaWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5maW5kaW5nX19ncmFkaWVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMDNBRUFCLCAjMTg1OEM2KTsgfSB9XG4gIC5maW5kaW5nX19ncmFkaWVudDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IC0wLjA2MjVyZW07XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3RyaWFuZ2xlLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGJvdHRvbTsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmZpbmRpbmdfX2dyYWRpZW50OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAgIC5maW5kaW5nX19ncmFkaWVudDpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDUwLjVyZW07IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgICAgLmZpbmRpbmdfX2dyYWRpZW50OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogNDYuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmZpbmRpbmdfX2dyYWRpZW50LS0yOmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDYzLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5maW5kaW5nX19ncmFkaWVudC0tMjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1Ni43NXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5maW5kaW5nX19ncmFkaWVudC0tMjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiA1Mi42MjVyZW07IH0gfVxuXG4uZmluZGluZ19fbWFpbi10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogIzAwQ0RDQTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZmluZGluZ19fbWFpbi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZmluZGluZ19fbWFpbi10aXRsZSB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZmluZGluZ19fbWFpbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDIuNXJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMi4yNXJlbSk7IH0gfVxuXG4uZmluZGluZy0td2hpdGUgLmZpbmRpbmdfX21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZmluZGluZy0td2hpdGUgLmZpbmRpbmdfX21haW46YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogNTAlO1xuICAgIGJveC1zaGFkb3c6IDEuODc1cmVtIDEuODc1cmVtIDMuMTI1cmVtIDAgcmdiYSgwLCAxLCAxMDcsIDAuMDYpOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5maW5kaW5nX19tYWluOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAwLjM3NXJlbSk7XG4gICAgbGVmdDogY2FsYygxMDAlICsgMC4zNzVyZW0pO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIGhlaWdodDogMC43NXJlbTtcbiAgICBib3JkZXItdG9wOiAwLjEyNXJlbSBzb2xpZCAjMDAwMDAwO1xuICAgIGJvcmRlci1sZWZ0OiAwLjEyNXJlbSBzb2xpZCAjMDAwMDAwOyB9XG4gICAgLmZpbmRpbmctLWJsYWNrIC5maW5kaW5nX19tYWluOmFmdGVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDAuMjVyZW07XG4gICAgICBib3JkZXItY29sb3I6ICNGRkZGRkY7XG4gICAgICBib3JkZXItcmlnaHQ6IDAuMTI1cmVtIHNvbGlkICNGRkZGRkY7XG4gICAgICBib3JkZXItbGVmdDogbm9uZTsgfSB9XG5cbi5maW5kaW5nX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5maW5kaW5nX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZmluZGluZ19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAyLjc1cmVtOyB9IH1cbiAgLmZpbmRpbmctLXdoaXRlIC5maW5kaW5nX190aXRsZSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmZpbmRpbmctLWJsYWNrIC5maW5kaW5nX190aXRsZSB7XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cblxuLmZpbmRpbmdfX3N0cm9uZyB7XG4gIGNvbG9yOiAjRkVFMzNGOyB9XG5cbi5maW5kaW5nX19zdWJ0aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmZpbmRpbmdfX3N1YnRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuXG4uZmluZGluZ19fdGV4dCB7XG4gIG1hcmdpbi10b3A6IDFlbTsgfVxuICAuZmluZGluZ19fdGV4dCA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgLmZpbmRpbmdfX3RleHQgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgY29sb3I6ICM2QTcxN0Q7IH1cbiAgICAuZmluZGluZy0tYmxhY2sgLmZpbmRpbmdfX3RleHQgcCB7XG4gICAgICBjb2xvcjogI0ZGRkZGRjsgfVxuXG4uZmluZGluZ19fbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45Mzc1ZW0pIHtcbiAgICAuZmluZGluZ19fbGFiZWwge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5maW5kaW5nX19sYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMC43NXJlbTtcbiAgICBoZWlnaHQ6IDAuNzVyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzAwMDAwMDtcbiAgICBib3JkZXItcmlnaHQ6IDAuMTI1cmVtIHNvbGlkICMwMDAwMDA7IH1cbiAgLmZpbmRpbmdfX2xhYmVsLS1yaWdodCB7XG4gICAgbGVmdDogY2FsYygxMDAlICsgMC4yNXJlbSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCUgMTAwJTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgcGFkZGluZy1sZWZ0OiAzLjZlbTsgfVxuICAuZmluZGluZ19fbGFiZWwtLWxlZnQge1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpIHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgcGFkZGluZy1yaWdodDogMy42ZW07XG4gICAgY29sb3I6ICNGRkZGRkY7IH1cbiAgICAuZmluZGluZ19fbGFiZWwtLWxlZnQ6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0ZGRkZGRjtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIGJvcmRlci1sZWZ0OiAwLjEyNXJlbSBzb2xpZCAjRkZGRkZGO1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lOyB9XG5cbi5maW5kaW5nX19zeW1ib2wge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgIC5maW5kaW5nX19zeW1ib2wge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5maW5kaW5nX19zeW1ib2wtLTEge1xuICAgIHJpZ2h0OiAydnc7XG4gICAgYm90dG9tOiAxdnc7XG4gICAgd2lkdGg6IDE2LjMxMjVyZW07XG4gICAgaGVpZ2h0OiAxNi44MTI1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9maW5kaW5nLXN5bWJvbC0xLnN2Z1wiKTsgfVxuICAuZmluZGluZ19fc3ltYm9sLS0yIHtcbiAgICBsZWZ0OiAtMTEuODc1cmVtO1xuICAgIHRvcDogLTUuNjI1cmVtO1xuICAgIHdpZHRoOiAxNS4yNXJlbTtcbiAgICBoZWlnaHQ6IDExLjM3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZmluZGluZy1zeW1ib2wtMi5zdmdcIik7IH1cbiAgLmZpbmRpbmdfX3N5bWJvbC0tMyB7XG4gICAgcmlnaHQ6IDJ2dztcbiAgICBib3R0b206IDF2dztcbiAgICB3aWR0aDogMjAuNTYyNXJlbTtcbiAgICBoZWlnaHQ6IDExLjYyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZmluZGluZy1zeW1ib2wtMy5zdmdcIik7IH1cbiAgLmZpbmRpbmdfX3N5bWJvbC0tNCB7XG4gICAgbGVmdDogLTE2cmVtO1xuICAgIHRvcDogLTQuOTM3NXJlbTtcbiAgICB3aWR0aDogMTQuOTM3NXJlbTtcbiAgICBoZWlnaHQ6IDEzLjkzNzVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ZpbmRpbmctc3ltYm9sLTQuc3ZnXCIpOyB9XG4gIC5maW5kaW5nX19zeW1ib2wtLTUge1xuICAgIHJpZ2h0OiAzdnc7XG4gICAgYm90dG9tOiAxdnc7XG4gICAgd2lkdGg6IDE1LjkzNzVyZW07XG4gICAgaGVpZ2h0OiAxNi4zMTI1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9maW5kaW5nLXN5bWJvbC01LnN2Z1wiKTsgfVxuXG4uZmluZGluZy1pbmZvZ3JhcGhpYyB7XG4gIHdpZHRoOiA5MCU7XG4gIG1heC13aWR0aDogNDUuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9maW5kaW5nLTUuc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuICAuZmluZGluZy1pbmZvZ3JhcGhpYzpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTIuNDg2MTklOyB9XG5cbi5sZWdlbmQge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgLmxlZ2VuZCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmxlZ2VuZC0tcm93IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4ubGVnZW5kX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgLmxlZ2VuZF9faXRlbSB7XG4gICAgICBtYXJnaW46IDAuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmxlZ2VuZF9faXRlbSArIC5sZWdlbmRfX2l0ZW0ge1xuICAgICAgbWFyZ2luLXRvcDogMC43NXJlbTsgfSB9XG4gIC5sZWdlbmQtLXJvdyAubGVnZW5kX19pdGVtIHtcbiAgICBtYXJnaW46IDAuMzc1cmVtOyB9XG5cbi5sZWdlbmRfX2NvbG9yIHtcbiAgd2lkdGg6IDEuMTI1cmVtO1xuICBoZWlnaHQ6IDEuMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2QTcxN0Q7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTEge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEU2Njg7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMENEQ0E7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNERERCNUQ7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNCRUQ4NkQ7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGN0RBMUY7IH1cbiAgLmxlZ2VuZF9fY29sb3ItLTYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNUU1MkQ7IH1cblxuLmxlZ2VuZF9fdGV4dCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM2QTcxN0Q7IH1cbiAgLmxlZ2VuZC0tcm93IC5sZWdlbmRfX3RleHQge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbi50ZXN0aW1vbmlhbHMge1xuICBwYWRkaW5nLXRvcDogMy4xMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjU2MjVyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnRlc3RpbW9uaWFscyB7XG4gICAgICBwYWRkaW5nLXRvcDogNC4zNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMi4xODc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLnRlc3RpbW9uaWFscyB7XG4gICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjEyNXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH0gfVxuXG4udGVzdGltb25pYWxzX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50ZXN0aW1vbmlhbHNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC50ZXN0aW1vbmlhbHNfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTsgfSB9XG5cbi50ZXN0aW1vbmlhbHNfX3RleHQge1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIG1heC13aWR0aDogNTZlbTsgfVxuXG4udGVzdGltb25pYWxzX19ncmlkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnRlc3RpbW9uaWFsc19fZ3JpZCB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAudGVzdGltb25pYWxzX19ncmlkIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnRlc3RpbW9uaWFsc19fZ3JpZCB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfSB9XG5cbi50ZXN0aW1vbmlhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiAyMi41cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW46IDAuOTM3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAudGVzdGltb25pYWwge1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAudGVzdGltb25pYWwge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgICAgbWFyZ2luOiAwLjkzNzVyZW07XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC50ZXN0aW1vbmlhbCB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG5cbi50ZXN0aW1vbmlhbF9fdGh1bWIge1xuICB3aWR0aDogNzAlO1xuICBtYXgtd2lkdGg6IDIwcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2QTcxN0Q7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAudGVzdGltb25pYWxfX3RodW1iIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC50ZXN0aW1vbmlhbF9fdGh1bWIge1xuICAgICAgbWF4LXdpZHRoOiAyMHJlbTsgfSB9XG4gIC50ZXN0aW1vbmlhbF9fdGh1bWI6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDEwMCU7IH1cblxuLnRlc3RpbW9uaWFsX190aXRsZSB7XG4gIG1hcmdpbi10b3A6IDEuOGVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC50ZXN0aW1vbmlhbF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxuLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgxKSAudGVzdGltb25pYWxfX25hbWUge1xuICBjb2xvcjogIzAwQ0RDQTsgfVxuXG4udGVzdGltb25pYWw6bnRoLWNoaWxkKDIpIC50ZXN0aW1vbmlhbF9fbmFtZSB7XG4gIGNvbG9yOiAjMzM3OEU2OyB9XG5cbi50ZXN0aW1vbmlhbDpudGgtY2hpbGQoMykgLnRlc3RpbW9uaWFsX19uYW1lIHtcbiAgY29sb3I6ICNFNEM4MjY7IH1cblxuLnRlc3RpbW9uaWFsOm50aC1jaGlsZCg0KSAudGVzdGltb25pYWxfX25hbWUge1xuICBjb2xvcjogI0UyQTcyMzsgfVxuXG4udGVzdGltb25pYWxfX2NvbXBhbnkge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4udGVzdGltb25pYWxfX3F1b3RlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFlbTsgfVxuXG4uYWJvdXQtaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDguNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiA1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgIzAzQUVBQiwgIzEzOUVCRSk7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0LWhlcm8ge1xuICAgICAgcGFkZGluZy1ib3R0b206IDguMTI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmFib3V0LWhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDEwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5hYm91dC1oZXJvIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgLmFib3V0LWhlcm86YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAtMC4wNjI1cmVtO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogLTAuMDYyNXJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90cmlhbmdsZS5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAgICAgLmFib3V0LWhlcm86YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgICAgLmFib3V0LWhlcm86YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2Fib3V0LWhlcm8tc3ltYm9sLXNtYWxsLnN2Z1wiKTsgfVxuICAgICAgICAuaXMtY29udGVudCAuYWJvdXQtaGVybzpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90cmlhbmdsZS5zdmdcIik7IH0gfVxuXG4uYWJvdXQtaGVyb19fbWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uYWJvdXQtaGVyb19fdGl0bGUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0LWhlcm9fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5hYm91dC1oZXJvX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDNyZW07IH0gfVxuXG4uYWJvdXQtaGVyb19fdGV4dCB7XG4gIG1heC13aWR0aDogMzhlbTtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmFib3V0LWhlcm9fX3RleHQge1xuICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cblxuLmFib3V0X190aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dF9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmFib3V0X190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG4gIC5hYm91dF9fdGl0bGUtLWJsdWUge1xuICAgIGNvbG9yOiAjMzM3OEU2OyB9XG4gIC5hYm91dF9fdGl0bGUtLWFxdWEge1xuICAgIGNvbG9yOiAjMDBDRENBOyB9XG5cbi5hYm91dC1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDIuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDIuNXJlbTsgfVxuICAuYWJvdXRfX2hlYWRpbmcgKyAuYWJvdXQtYmxvY2sge1xuICAgIHBhZGRpbmctdG9wOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dC1ibG9jayB7XG4gICAgICBwYWRkaW5nLXRvcDogMy4xMjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH1cbiAgICAgIC5hYm91dF9faGVhZGluZyArIC5hYm91dC1ibG9jayB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxLjU2MjVyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuYWJvdXQtYmxvY2sge1xuICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfVxuICAgICAgLmFib3V0X19oZWFkaW5nICsgLmFib3V0LWJsb2NrIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9IH1cbiAgLmFib3V0LWJsb2NrICsgLmFib3V0LWJsb2NrOmJlZm9yZSxcbiAgLmFib3V0LWJsb2NrICsgLmFib3V0X19oZWFkaW5nOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGNEZBOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuYWJvdXQtYmxvY2sgKyAuYWJvdXQtYmxvY2s6YmVmb3JlLFxuICAgICAgLmFib3V0LWJsb2NrICsgLmFib3V0X19oZWFkaW5nOmJlZm9yZSB7XG4gICAgICAgIG1heC13aWR0aDogMzYuNXJlbTsgfSB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgICAuYWJvdXQtYmxvY2sgKyAuYWJvdXQtYmxvY2s6YmVmb3JlLFxuICAgICAgLmFib3V0LWJsb2NrICsgLmFib3V0X19oZWFkaW5nOmJlZm9yZSB7XG4gICAgICAgIG1heC13aWR0aDogNjIuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5hYm91dC1ibG9jayArIC5hYm91dC1ibG9jazpiZWZvcmUsXG4gICAgICAuYWJvdXQtYmxvY2sgKyAuYWJvdXRfX2hlYWRpbmc6YmVmb3JlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4OC4xMjVyZW07IH0gfVxuICAuYWJvdXQtYmxvY2s6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAtMC4wNjI1cmVtO1xuICAgIGJvdHRvbTogLTAuMDYyNXJlbTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMzEuMjVyZW07XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMTAuNjY0ODIlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy90cmlhbmdsZS1zbWFsbC5zdmdcIik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBib3R0b207XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgICAuYWJvdXQtYmxvY2s6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAgIC5hYm91dC1ibG9jazpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0NS4xMjVyZW07IH0gfVxuICAuYWJvdXQtYmxvY2sgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5hYm91dC1ibG9ja19fZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5hYm91dC1ibG9ja19fY29sLS0xIHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmFib3V0LWJsb2NrX19jb2wtLTIge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuOTM3NXJlbSk7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmFib3V0LWJsb2NrX19jb2wtLTMge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW46IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjkzNzVyZW0pOyB9IH1cblxuLmFib3V0LWJsb2NrX19ib3gge1xuICBkaXNwbGF5OiBub25lOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5hYm91dC1ibG9ja19fYm94IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAyMi41cmVtO1xuICAgICAgcGFkZGluZzogMy43NXJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgICBib3gtc2hhZG93OiAxLjg3NXJlbSAxLjg3NXJlbSAzLjEyNXJlbSAwIHJnYmEoMCwgMSwgMTA3LCAwLjA2KTsgfSB9XG5cbi5hYm91dC1ibG9ja19fbG9nbyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIC5hYm91dC1ibG9ja19fbG9nby0tbmVzdGEge1xuICAgIG1heC13aWR0aDogMjUuMjVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2xvZ28tbmVzdGEuc3ZnXCIpOyB9XG4gICAgLmFib3V0LWJsb2NrX19sb2dvLS1uZXN0YTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDQwLjA5OTAxJTsgfVxuICAuYWJvdXQtYmxvY2tfX2xvZ28tLXNhZ2Uge1xuICAgIG1heC13aWR0aDogMTkuNjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvbG9nby1zYWdlMi5zdmdcIik7IH1cbiAgICAuYWJvdXQtYmxvY2tfX2xvZ28tLXNhZ2U6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzOC4wOTUyNCU7IH1cblxuLmFib3V0LWJsb2NrX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuYWJvdXQtYmxvY2tfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5hYm91dC1ibG9ja19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAzcmVtOyB9IH1cblxuLmFib3V0LWJsb2NrX19zdHJvbmcge1xuICBjb2xvcjogI0YwQzcyNjsgfVxuXG4uYWJvdXQtYmxvY2tfX3RleHQge1xuICBtYXJnaW4tdG9wOiAxLjVlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7XG4gIGNvbG9yOiAjNkE3MTdEOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5hYm91dC1ibG9ja19fdGV4dCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAuYWJvdXQtYmxvY2tfX3RleHQgYSB7XG4gICAgY29sb3I6ICMwMENEQ0E7IH1cblxuLmFib3V0LWJsb2NrX19idG4ge1xuICBtYXJnaW4tdG9wOiAyZW07IH1cblxuLmFib3V0X19oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0X19oZWFkaW5nIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cblxuLmFib3V0X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmFib3V0X190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuYWJvdXRfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICAgIG1hcmdpbjogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC45Mzc1cmVtKTsgfSB9XG5cbi5jb29raWVzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gIHotaW5kZXg6IDEwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFRTMzRjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgY3ViaWMtYmV6aWVyKDAuNjUsIDAuMDUsIDAuMzYsIDEpIDAuMnM7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvb2tpZXMge1xuICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgLmNvb2tpZXMuaXMtYWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb29raWVzX19ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb29raWVzX19yb3c6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA2MCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAuY29va2llc19fcm93ICsgLmNvb2tpZXNfX3JvdyB7XG4gICAgbWFyZ2luLXRvcDogMWVtOyB9IH1cblxuLmNvb2tpZXNfX3RleHQge1xuICBmb250LXNpemU6IDAuNzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmNvb2tpZXNfX3RleHQge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfSB9XG5cbi5tYXAtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTQwJSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYm9yZGVyLXJhZGl1czogMC4zMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMykgMCAwIDAuODc1cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgZWFzZTsgfVxuICAubWFwLXRvb2x0aXA6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgLSAwLjA2MjVyZW0pO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgYm9yZGVyLXRvcDogMC4zNzVyZW0gc29saWQgI0ZGRkZGRjtcbiAgICBib3JkZXItbGVmdDogMC4zNzVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjM3NXJlbSBzb2xpZCB0cmFuc3BhcmVudDsgfVxuXG4ucmVzdWx0cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwLjkzNzVyZW07XG4gIHJpZ2h0OiAwLjkzNzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxZW0pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkE3MTdEO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQsIHZpc2liaWxpdHkgMHMgMC4yczsgfVxuICAucmVzdWx0cy5pcy1hY3RpdmUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UtaW4tb3V0LCB0cmFuc2Zvcm0gMC4ycyBlYXNlLWluLW91dDsgfVxuXG4ucmVzdWx0c19fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjhlbSAxZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5yZXN1bHRzX19saW5rIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAucmVzdWx0c19fbGluazpob3ZlciwgLnJlc3VsdHNfX2xpbms6YWN0aXZlLCAucmVzdWx0c19fbGluazpmb2N1cyB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAuMmVtKTtcbiAgICBjb2xvcjogI0ZFRTMzRjtcbiAgICBvdXRsaW5lOiBub25lOyB9XG4gIC5yZXN1bHRzX19saW5rICsgLnJlc3VsdHNfX2xpbmsge1xuICAgIGJvcmRlci10b3A6IDAuMDYyNXJlbSBzb2xpZCAjMUEyMDJFOyB9XG5cbi53eXNpd3lnIHtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbTsgfVxuICAud3lzaXd5ZyA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnd5c2l3eWcge1xuICAgICAgcGFkZGluZy10b3A6IDNlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzZW07IH0gfVxuICAud3lzaXd5ZyBoMyB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAud3lzaXd5ZyBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG4gIC53eXNpd3lnIGg0IHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLnd5c2l3eWcgaDQge1xuICAgICAgICBmb250LXNpemU6IDEuMzEyNXJlbTsgfSB9XG4gIC53eXNpd3lnIHRhYmxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cbiAgLnd5c2l3eWcgdGFibGUsXG4gIC53eXNpd3lnIHRoLFxuICAud3lzaXd5ZyB0ZCB7XG4gICAgYm9yZGVyOiAwLjA2MjVyZW0gc29saWQ7IH1cbiAgLnd5c2l3eWcgdGgsXG4gIC53eXNpd3lnIHRkIHtcbiAgICBwYWRkaW5nOiAwLjVlbTsgfVxuICAud3lzaXd5ZyB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjFlbTtcbiAgICBsaXN0LXN0eWxlOiBkaXNjOyB9XG4gIC53eXNpd3lnIGEge1xuICAgIGNvbG9yOiAjMDBDRENBOyB9XG5cbi5mb3VyLW8tZm91ciB7XG4gIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuMjVyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG5cbi5pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1ib3R0b206IDEuODc1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAgIC5pbnRybyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5pbnRyb19fbWFpbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmludHJvX19jb2wge1xuICAgIHdpZHRoOiA1MCU7IH0gfVxuXG4uaW50cm9fX2NvbDpmaXJzdC1jaGlsZCA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS4yNWVtOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gIC5pbnRyb19fY29sOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbSAwOyB9IH1cblxuLmV4cGxvcmVfX2hlYWRpbmcge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuZXhwbG9yZV9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS44NzU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZXhwbG9yZV9faGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG5cbi5leHBsb3JlX19ib2R5LXRleHQge1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmV4cGxvcmVfX2JvZHktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZXhwbG9yZV9fYm9keS10ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH0gfVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb290ZXIge1xuICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfSB9XG5cbi5mb290ZXJfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuZm9vdGVyX19yb3c6Zmlyc3QtY2hpbGQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgLmZvb3Rlcl9fcm93Omxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgYm9yZGVyLXRvcDogMC4xMjVyZW0gc29saWQgI0ZGRkZGRjsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgICAgLmZvb3Rlcl9fcm93Omxhc3QtY2hpbGQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuLmZvb3Rlcl9fbG9nb3Mge1xuICB3aWR0aDogMTNyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9mb290ZXItbG9nb3Muc3ZnXCIpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLmZvb3Rlcl9fbG9nb3Mge1xuICAgICAgbWFyZ2luLXRvcDogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5mb290ZXJfX2xvZ29zIHtcbiAgICAgIHdpZHRoOiAxNi41NjI1cmVtOyB9IH1cbiAgLmZvb3Rlcl9fbG9nb3M6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDI0LjE1MDk0JTsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAuZm9vdGVyX19sZWdhbCB7XG4gICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5mb290ZXJfX2xlZ2FsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIHdpZHRoOiA2MCU7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZvb3Rlcl9fY2Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5mb290ZXJfX2NjIGltZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXJfX2NjIGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07IH0gfVxuXG4uZm9vdGVyX19jb3B5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5mb290ZXJfX2NvcHkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9IH1cbiAgLmZvb3Rlcl9fY29weSArIC5mb290ZXJfX2NvcHkge1xuICAgIG1hcmdpbi10b3A6IDFlbTsgfVxuICAuZm9vdGVyX19jb3B5IGEge1xuICAgIGNvbG9yOiAjRTJBNzIzOyB9XG5cbi5mb290ZXJfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuZm9vdGVyX19uYXYge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBmbGV4OiAxOyB9IH1cblxuLmZvb3Rlcl9fbGluayxcbi5mb290ZXJfX2xhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMDYyNXJlbTsgfVxuXG4uZm9vdGVyX19saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuZm9vdGVyX19saW5rICsgLmZvb3Rlcl9fbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTsgfVxuXG4uZm9vdGVyX19sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5mb290ZXJfX2xhYmVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZm9vdGVyX19zZXBlcmF0b3Ige1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMC4xMjVyZW07XG4gIGhlaWdodDogMS4xMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuZm9vdGVyX19zZXBlcmF0b3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gIC5mb290ZXJfX3NoYXJlIHtcbiAgICBtYXJnaW4tdG9wOiAxZW07IH0gfVxuXG4uaGVybyB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBwYWRkaW5nLXRvcDogMTByZW07XG4gIHBhZGRpbmctYm90dG9tOiAyLjg3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM0LjM3NWVtKSB7XG4gICAgLmhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDEwcmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDExLjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmhlcm8ge1xuICAgICAgcGFkZGluZy10b3A6IDEyLjVyZW07IH0gfVxuXG4uaGVyb19fZ3JpZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmhlcm9fX2NvbC0xIHtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgLmhlcm9fX2NvbC0xID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogMmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gIC5oZXJvX19jb2wtMSB7XG4gICAgd2lkdGg6IDUwJTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gIC5oZXJvX19jb2wtMiB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLmhlcm9fX2NvbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSk7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuXG4uaGVyb19fdGl0bGUtY29udGFpbmVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjI1ZW07IH1cblxuLmhlcm9fX3RpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDJyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjEyNTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuaGVyb19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmhlcm9fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTExMTE7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuaGVyb19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA0LjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTsgfSB9XG4gIC5oZXJvX190aXRsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC01cmVtO1xuICAgIGxlZnQ6IC01cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMi4zMTI1cmVtO1xuICAgIGhlaWdodDogMTIuODEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaGVyby1zeW1ib2wuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgICAuaGVyb19fdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIC5oZXJvX190aXRsZSBzcGFuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuaGVyb19fdGl0bGUgc3BhbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5oZXJvX190aXRsZSBzcGFuOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG5cbi5oZXJvX190YWdsaW5lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI0ZFRTMzRjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI3MjczO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5oZXJvX190YWdsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE4NzU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuaGVyb19fdGFnbGluZSB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjI3Mjc7IH0gfVxuXG4uaGVyb19fYnV0dG9uLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMS41NjI1cmVtO1xuICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmhlcm9fX2J1dHRvbi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gICAgICAuaGVyb19fYnV0dG9uLWNvbnRhaW5lciA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNWVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmhlcm9fX2J1dHRvbi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNDM3NXJlbTsgfSB9XG4gIC5oZXJvX19idXR0b24tY29udGFpbmVyIC5idG4ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3LjkzNzVlbSkge1xuICAgICAgLmhlcm9fX2J1dHRvbi1jb250YWluZXIgLmJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgICAgLmhlcm9fX2J1dHRvbi1jb250YWluZXIgLmJ0biB7XG4gICAgICAgIG1hcmdpbjogMC40Mzc1cmVtOyB9IH1cblxuLmhlcm9fX2tleS1maW5kaW5ncyA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS4yNWVtOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAuaGVyb19fa2V5LWZpbmRpbmdzID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDNlbTsgfSB9XG5cbi5oZXJvX19rZXktZmluZGluZyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH1cblxuLmhlcm9fX3N2Zy1jb250YWluZXIge1xuICB3aWR0aDogMy43NXJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogMS4zNzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmhlcm9fX3N2Zy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDUuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmhlcm9fX3N2Zy1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDcuNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogMy43NXJlbTsgfSB9XG5cbi5oZXJvX19rZXktZmluZGluZy1oZWFkbGluZSB7XG4gIGZsZXg6IDE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjcxNDI5O1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmhlcm9fX2tleS1maW5kaW5nLWhlYWRsaW5lIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH0gfVxuICAuaGVyb19fa2V5LWZpbmRpbmctaGVhZGxpbmU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29udGVudDogXCIvLyBcIjsgfVxuXG4uaGVyb19fYm9keS10ZXh0LWNvbnRhaW5lciB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG4gIC5oZXJvX19ib2R5LXRleHQtY29udGFpbmVyID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDEuMjVlbTsgfVxuXG4uaGVyb19fYm9keS10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5oZXJvX19ib2R5LXRleHQge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjcxNDI5OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmhlcm9fX2JvZHktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLmhlcm9fX2JvZHktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTsgfSB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gIC5oZXJvX19kaXZpZGVyLWhyIHtcbiAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZXJvX19kaXZpZGVyLWhyIHtcbiAgICBtYXJnaW4tdG9wOiAzLjc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuODc1cmVtOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5oZXJvX19kaXZpZGVyLWhyIHtcbiAgICBtYXJnaW4tdG9wOiA0LjgxMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH0gfVxuXG4ubWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5tYXAge1xuICAgICAgbWluLWhlaWdodDogMzEuMjVyZW07IH1cbiAgICAgIC5tYXA6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTsgfSB9XG4gIC5tYXAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubWFwX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDYxLjI1cmVtO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5tYXBfX2lubmVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDsgfSB9XG5cbi5tYXBfX2NvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAubWFwX19rZXktZGVzY3JpcHRpb24ge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5tYXBfX2xheWVyLWNvbnRyb2xzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IC0xMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAubWFwX19sYXllci1zZWxlY3RvcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG4gICAgb3ZlcmZsb3c6IGF1dG87IH0gfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgLm1hcF9fbGF5ZXItc2VsZWN0b3JzIHtcbiAgICBwYWRkaW5nOiAxLjEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9IH1cblxuLm1hcF9fbGF5ZXIta2V5cyB7XG4gIHBhZGRpbmc6IDAuODc1cmVtO1xuICBjb2xvcjogI0YwRjRGQTtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFBMjAyRTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubWFwX19sYXllci1rZXlzIHtcbiAgICAgIHdpZHRoOiAxNWVtO1xuICAgICAgcGFkZGluZzogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubWFwX19sYXllci1rZXlzIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfSB9XG5cbi5tYXBfX2xheWVyLWtleXMtbGlzdCB7XG4gIG1hcmdpbi10b3A6IGF1dG87IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OS45Mzc1ZW0pIHtcbiAgICAubWFwX19sYXllci1rZXlzLWxpc3Qge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubWFwX19sYXllci1rZXlzLWxpc3QgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAwLjVlbTsgfSB9XG5cbi5tYXBfX2tleS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4ubWFwX19rZXktYmFuZCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgLm1hcF9fa2V5LWJhbmQge1xuICAgICAgbWFyZ2luOiAwLjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLm1hcF9fa2V5LWJhbmQge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfSB9XG5cbi5tYXBfX2tleS1jb2xvciB7XG4gIHdpZHRoOiAxLjEyNXJlbTtcbiAgaGVpZ2h0OiAxLjEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5tYXBfX2tleS1jb2xvciB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH0gfVxuXG4ubWFwX19jb250cm9sLWxpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgLm1hcF9fY29udHJvbC1saXN0LWl0ZW0gKyAubWFwX19jb250cm9sLWxpc3QtaXRlbSB7XG4gICAgICBtYXJnaW4tbGVmdDogMC41NjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLm1hcF9fY29udHJvbC1saXN0LWl0ZW06bGFzdC1vZi10eXBlIC5tYXBfX2xheWVyLWJ0biB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLm1hcF9fY29udHJvbC1saXN0LWl0ZW06bGFzdC1vZi10eXBlIC5tYXBfX2xheWVyLWJ0bjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLm1hcF9fbGF5ZXItYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAgIC5tYXBfX2xheWVyLWJ0biB7XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICBib3JkZXI6IDAuMTI1cmVtIHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4gICAgICBib3JkZXItcmFkaXVzOiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLm1hcF9fbGF5ZXItYnRuIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7IH0gfVxuICAubWFwX19sYXllci1idG46Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7IH1cbiAgLm1hcF9fbGF5ZXItYnRuOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgICAgLm1hcF9fbGF5ZXItYnRuOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzZBNzE3RDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC45Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1OS45Mzc1ZW0pIHtcbiAgICAubWFwX19sYXllci1idG4uaXMtYWN0aXZlIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZFRTMzRjsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5tYXBfX2xheWVyLWJ0bi5pcy1hY3RpdmUge1xuICAgICAgY29sb3I6ICNGRUUzM0Y7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAgIC5tYXBfX2xheWVyLWJ0bi5pcy1hY3RpdmU6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgYm9yZGVyLXRvcDogMC41cmVtIHNvbGlkICNGRUUzM0Y7XG4gICAgICBib3JkZXItbGVmdDogMC41cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwLjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7IH0gfVxuXG4ubWFwX19jb250cm9sLWtleSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLm1hcF9fY29udHJvbC1rZXkuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuXG4uY2hhcnRfX2hlYWRpbmctY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2hhcnRfX2hlYWRpbmcge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS43MTQyOTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuY2hhcnRfX2hlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTsgfSB9XG4gIC5jaGFydF9faGVhZGluZyAuaGVhZGluZy1zcGFuIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtc2l6ZTogMC41ZW07IH1cblxuLmNoYXJ0X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2hhcnRfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAuY2hhcnRfX3RpdGxlLS1iYXIge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG5cbi5jaGFydF9faW5mbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YyZjNmNDtcbiAgcGFkZGluZzogMXJlbTtcbiAgbGVmdDogMDtcbiAgYm94LXNoYWRvdzogMC41cmVtIDAuNXJlbSAxcmVtIDAgcmdiYSgxMDYsIDExMywgMTI1LCAwLjIpO1xuICBib3R0b206IDNyZW07XG4gIGZvbnQtc2l6ZTogMC44ZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmNoYXJ0X19pbmZvIHtcbiAgICAgIGJvdHRvbTogNXJlbTtcbiAgICAgIG1pbi13aWR0aDogMTZyZW07IH0gfVxuICAuY2hhcnRfX2luZm8uaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB6LWluZGV4OiAxOyB9XG4gIC5jaGFydF9faW5mbyA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1ZW07IH1cblxuLmNoYXJ0X19udW1iZXIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMC4wN3JlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuY2hhcnRfX251bWJlciB7XG4gICAgICBmb250LXNpemU6IDIuMjVyZW07IH0gfVxuICAuY2hhcnRfX251bWJlciAucGVyY2VudC1zcGFuIHtcbiAgICBmb250LXNpemU6IDAuNWVtOyB9XG4gIC5sYV9fbGlnaHQtb3JhbmdlIC5jaGFydF9fbnVtYmVyIHtcbiAgICBjb2xvcjogI0Y0Q0YzMTsgfVxuICAubGFfX29yYW5nZSAuY2hhcnRfX251bWJlciB7XG4gICAgY29sb3I6ICNFMkE3MjM7IH1cbiAgLmxhX19taWQtb3JhbmdlIC5jaGFydF9fbnVtYmVyIHtcbiAgICBjb2xvcjogI0REODExMjsgfVxuICAubGFfX2Rhcmstb3JhbmdlIC5jaGFydF9fbnVtYmVyIHtcbiAgICBjb2xvcjogI0Q4NUQwOTsgfVxuICAubGFfX2RhcmstYmx1ZSAuY2hhcnRfX251bWJlciB7XG4gICAgY29sb3I6ICMyNDM4QTA7IH1cbiAgLmxhX19ibHVlIC5jaGFydF9fbnVtYmVyIHtcbiAgICBjb2xvcjogIzIzNjVENjsgfVxuICAubGFfX21lZGl1bS1hcXVhIC5jaGFydF9fbnVtYmVyIHtcbiAgICBjb2xvcjogIzAwQTlDRDsgfVxuICAubGFfX2FxdWEgLmNoYXJ0X19udW1iZXIge1xuICAgIGNvbG9yOiAjMDBDRENBOyB9XG5cbi5jaGFydF9fbnVtYmVyLS1sIHtcbiAgZm9udC1zaXplOiA0LjM3NXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuY2hhcnRfX251bWJlci0tbCB7XG4gICAgICBmb250LXNpemU6IDVyZW07IH0gfVxuXG4uY2hhcnRfX251bWJlci0tbSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjBlbSkge1xuICAgIC5jaGFydF9fbnVtYmVyLS1tIHtcbiAgICAgIGZvbnQtc2l6ZTogMy4xMjVyZW07IH0gfVxuXG4uY2hhcnRfX2ljb24tY29udGFpbmVyIHtcbiAgd2lkdGg6IDMuODc1cmVtOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICAgLmNoYXJ0X19pY29uLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmNoYXJ0X19jaXJjbGUtY29udGFpbmVyIHtcbiAgd2lkdGg6IDcuNXJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM0LjMxMjVlbSkge1xuICAgIC5jaGFydF9fY2lyY2xlLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzQuMzc1ZW0pIHtcbiAgICAuY2hhcnRfX2NpcmNsZS1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uY2hhcnRfX2NpcmNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDcuNXJlbTtcbiAgaGVpZ2h0OiA3LjVyZW07XG4gIGJvcmRlcjogMC41cmVtIHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAuY2hhcnRfX2NpcmNsZSAuY2hhcnRfX251bWJlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTsgfVxuXG4uYmIgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmJiLXRvb2x0aXAge1xuICBib3JkZXI6IG5vbmU7IH1cbiAgLmJiLXRvb2x0aXAgdHIsIC5iYi10b29sdGlwIHRkIHtcbiAgICBib3JkZXI6IG5vbmU7IH1cbiAgLmJiLXRvb2x0aXAgdGgge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuXG4udGljayB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjsgfVxuXG4uYmItYXhpcy15IC5kb21haW4ge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5iYi1heGlzLXggLmRvbWFpbiB7XG4gIHN0cm9rZTogI0YwRjRGQTtcbiAgc3Ryb2tlLXdpZHRoOiAwLjEyNXJlbTsgfVxuICAuY2hhcnQtc2VjdGlvbi0tcGFsZSAuYmItYXhpcy14IC5kb21haW4ge1xuICAgIHN0cm9rZTogI0ZGRkZGRjsgfVxuICAuYmFyLWNoYXJ0LS1kYXJrIC5iYi1heGlzLXggLmRvbWFpbiB7XG4gICAgc3Ryb2tlOiAjMjkyOTI5OyB9XG5cbi5iYi1heGlzLXkgLnRpY2sgbGluZSwgLmJiLWF4aXMteCAudGljayBsaW5lIHtcbiAgc3Ryb2tlOiBub25lOyB9XG5cbi5iYXItY2hhcnQgLmJiLWF4aXMteC1sYWJlbCwgLmJhci1jaGFydFxuLmJiLWF4aXMteS1sYWJlbCwgLmJhci1jaGFydFxuLmJiLWF4aXMteTItbGFiZWwge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZmlsbDogIzI5MjkyOTtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4uYmFyLWNoYXJ0LS1kYXJrIC5iYi1heGlzLXgtbGFiZWwsIC5iYXItY2hhcnQtLWRhcmtcbi5iYi1heGlzLXktbGFiZWwsIC5iYXItY2hhcnQtLWRhcmtcbi5iYi1heGlzLXkyLWxhYmVsIHtcbiAgZmlsbDogI0ZFRTMzRjtcbiAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuXG4uYmFyLWNoYXJ0LS1kYXJrIC5iYi10b29sdGlwLWNvbnRhaW5lciB7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzQuMzEyNWVtKSB7XG4gICNmaW5kaW5nLTMgLmJiLXRvb2x0aXAtY29udGFpbmVyIHtcbiAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7IH0gfVxuXG4uYmFyLWNoYXJ0LS1kYXJrIC5iYi10b29sdGlwIHRkLFxuLmRvbnV0LWNoYXJ0IC5iYi10b29sdGlwIHRkLCAuYmFyLWNoYXJ0LS1kYXJrXG4uYmItdG9vbHRpcCB0aCxcbi5kb251dC1jaGFydFxuLmJiLXRvb2x0aXAgdGgge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDsgfVxuXG4uYmFyLWNoYXJ0LS1kYXJrIC5iYi10b29sdGlwIHRkLnZhbHVlLFxuLmRvbnV0LWNoYXJ0IC5iYi10b29sdGlwIHRkLnZhbHVlIHtcbiAgY29sb3I6ICNGRUUzM0Y7IH1cblxuLmJhci1jaGFydF9fY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAgIC5iYXItY2hhcnRfX2NvbnRhaW5lci0tbGFyZ2Uge1xuICAgICAgb3ZlcmZsb3c6IGF1dG87IH0gfVxuXG4ubGEtYmFyLWNoYXJ0IC50aWNrIHRleHQge1xuICBmaWxsOiAjNkE3MTdEO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmxhLWJhci1jaGFydCAuYmIteWdyaWQge1xuICBzdHJva2UtZGFzaGFycmF5OiAwO1xuICBzdHJva2Utd2lkdGg6IDAuMTI1cmVtO1xuICBzdHJva2U6ICNGMEY0RkE7IH1cbiAgLmNoYXJ0LXNlY3Rpb24tLXBhbGUgLmxhLWJhci1jaGFydCAuYmIteWdyaWQge1xuICAgIHN0cm9rZTogI0ZGRkZGRjsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU5LjkzNzVlbSkge1xuICAubGEtYmFyLWNoYXJ0LS1sYXJnZSB7XG4gICAgbWluLXdpZHRoOiA4MDBweDsgfSB9XG5cbi5iYXItY2hhcnQge1xuICBtaW4taGVpZ2h0OiA0NDBweDsgfVxuICAuYmFyLWNoYXJ0LS1zbWFsbCB7XG4gICAgbWF4LXdpZHRoOiAzMS4yNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICAuYmFyLWNoYXJ0LS1zbWFsbCAuYmItc2hhcGUtMCB7XG4gICAgICBmaWxsOiAjRkVFMzNGICFpbXBvcnRhbnQ7IH1cbiAgICAuYmFyLWNoYXJ0LS1zbWFsbCAuYmItc2hhcGUtMSB7XG4gICAgICBmaWxsOiAjRDlFMDUzICFpbXBvcnRhbnQ7IH1cbiAgICAuYmFyLWNoYXJ0LS1zbWFsbCAuYmItc2hhcGUtMiB7XG4gICAgICBmaWxsOiAjNkJENjkwICFpbXBvcnRhbnQ7IH1cbiAgICAuYmFyLWNoYXJ0LS1zbWFsbCAuYmItc2hhcGUtMyB7XG4gICAgICBmaWxsOiAjMDBDRENBICFpbXBvcnRhbnQ7IH1cbiAgLmJhci1jaGFydCAudGljayB0ZXh0IHtcbiAgICBmaWxsOiAjRkZGRkZGO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNC4zMTI1ZW0pIHtcbiAgICAgIC5iYXItY2hhcnQgLnRpY2sgdGV4dCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42MjVyZW07IH0gfVxuICAgIC5maW5kaW5nLS13aGl0ZSAuYmFyLWNoYXJ0IC50aWNrIHRleHQge1xuICAgICAgZmlsbDogIzZBNzE3RDsgfVxuICAuYmFyLWNoYXJ0IC5iYi15Z3JpZCB7XG4gICAgc3Ryb2tlLWRhc2hhcnJheTogMDtcbiAgICBzdHJva2U6ICMyOTI5Mjk7IH1cbiAgICAuZmluZGluZy0td2hpdGUgLmJhci1jaGFydCAuYmIteWdyaWQge1xuICAgICAgc3Ryb2tlOiAjRjBGNEZBOyB9XG4gIC5iYXItY2hhcnQgLmJiLWF4aXMteSAuZG9tYWluIHtcbiAgICBvcGFjaXR5OiAwOyB9XG5cbi5kb251dC1jaGFydF9fY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDMyMHB4OyB9XG4gIC5kb251dC1jaGFydF9fY29udGFpbmVyIC5jaGFydF9faW5mbyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm90dG9tOiAtNnJlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgICAuZG9udXQtY2hhcnRfX2NvbnRhaW5lciAuY2hhcnRfX2luZm8ge1xuICAgICAgICBib3R0b206IDE1cmVtOyB9IH1cblxuLmRvbnV0LWNoYXJ0X19oZWFkaW5nLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDE7IH1cblxuLmRvbnV0LWNoYXJ0IHtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmRvbnV0LWNoYXJ0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuZG9udXQtY2hhcnQge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gIC5kb251dC1jaGFydF9fbGVnZW5kIHtcbiAgICB3aWR0aDogMjUlOyB9IH1cblxuLmRvbnV0LWNoYXJ0X19tYWluIHtcbiAgaGVpZ2h0OiAyMHJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZG9udXQtY2hhcnRfX21haW4ge1xuICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODBlbSkge1xuICAgIC5kb251dC1jaGFydF9fbWFpbiB7XG4gICAgICB3aWR0aDogNzUlOyB9IH1cblxuLnJhbmdlLWNoYXJ0X19saW5lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC4xODc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGNEZBO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjA5Mzc1cmVtO1xuICBjb2xvcjogIzZBNzE3RDtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuICAucmFuZ2UtY2hhcnRfX2xpbmU6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogJ21pbic7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtOyB9XG4gIC5yYW5nZS1jaGFydF9fbGluZTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICdtYXgnO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbWFyZ2luLXRvcDogMXJlbTsgfVxuICAubGFfX2xpZ2h0LW9yYW5nZSAucmFuZ2UtY2hhcnRfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGNENGMzE7IH1cbiAgLmxhX19taWQtb3JhbmdlIC5yYW5nZS1jaGFydF9fbGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0REODExMjsgfVxuICAubGFfX29yYW5nZSAucmFuZ2UtY2hhcnRfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMkE3MjM7IH1cbiAgLmxhX19kYXJrLW9yYW5nZSAucmFuZ2UtY2hhcnRfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNEODVEMDk7IH1cbiAgLmxhX19kYXJrLWJsdWUgLnJhbmdlLWNoYXJ0X19saW5lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjQzOEEwOyB9XG4gIC5sYV9fYmx1ZSAucmFuZ2UtY2hhcnRfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMzY1RDY7IH1cbiAgLmxhX19tZWRpdW0tYXF1YSAucmFuZ2UtY2hhcnRfX2xpbmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMEE5Q0Q7IH1cbiAgLmxhX19hcXVhIC5yYW5nZS1jaGFydF9fbGluZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQ0RDQTsgfVxuXG4ucmFuZ2UtY2hhcnRfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07IH1cblxuLnJhbmdlLWNoYXJ0X19hcnJvdy1jb250YWluZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHdpZHRoOiAxLjVyZW07XG4gIGhlaWdodDogMS42MjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwOyB9XG4gIC5yYW5nZS1jaGFydF9fYXJyb3ctY29udGFpbmVyLmlzLWhpZGRlbiB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAubGFfX2xpZ2h0LW9yYW5nZSAucmFuZ2UtY2hhcnRfX2Fycm93LWNvbnRhaW5lciB7XG4gICAgZmlsbDogI0Y0Q0YzMTsgfVxuICAubGFfX29yYW5nZSAucmFuZ2UtY2hhcnRfX2Fycm93LWNvbnRhaW5lciB7XG4gICAgZmlsbDogI0UyQTcyMzsgfVxuICAubGFfX21pZC1vcmFuZ2UgLnJhbmdlLWNoYXJ0X19hcnJvdy1jb250YWluZXIge1xuICAgIGZpbGw6ICNERDgxMTI7IH1cbiAgLmxhX19kYXJrLW9yYW5nZSAucmFuZ2UtY2hhcnRfX2Fycm93LWNvbnRhaW5lciB7XG4gICAgZmlsbDogI0Q4NUQwOTsgfVxuICAubGFfX2RhcmstYmx1ZSAucmFuZ2UtY2hhcnRfX2Fycm93LWNvbnRhaW5lciB7XG4gICAgZmlsbDogIzI0MzhBMDsgfVxuICAubGFfX2JsdWUgLnJhbmdlLWNoYXJ0X19hcnJvdy1jb250YWluZXIge1xuICAgIGZpbGw6ICMyMzY1RDY7IH1cbiAgLmxhX19tZWRpdW0tYXF1YSAucmFuZ2UtY2hhcnRfX2Fycm93LWNvbnRhaW5lciB7XG4gICAgZmlsbDogIzAwQTlDRDsgfVxuICAubGFfX2FxdWEgLnJhbmdlLWNoYXJ0X19hcnJvdy1jb250YWluZXIge1xuICAgIGZpbGw6ICMwMENEQ0E7IH1cbiAgLnJhbmdlLWNoYXJ0X19hcnJvdy1jb250YWluZXIgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG4uY2hhcnQtc2VjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBwYWRkaW5nLXRvcDogMy43NXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2MGVtKSB7XG4gICAgLmNoYXJ0LXNlY3Rpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDcuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuXG4uY2hhcnQtc2VjdGlvbl9fcmFuZ2UtZXhwbGFuYXRpb24ge1xuICBmb250LXNpemU6IDAuOHJlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuY2hhcnQtc2VjdGlvbl9fcmFuZ2UtZXhwbGFuYXRpb24ge1xuICAgICAgcGFkZGluZy10b3A6IDEuOHJlbTsgfSB9XG5cbi5jaGFydC1zZWN0aW9uLS1wYWxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjRGQTsgfVxuXG4uY2hhcnQtc2VjdGlvbl9fZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTkuOTM3NWVtKSB7XG4gICAgLmNoYXJ0LXNlY3Rpb25fX2dyaWQgPiAqIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07IH0gfVxuICAuY2hhcnQtc2VjdGlvbl9fZ3JpZCAuYmFyLWNoYXJ0X19jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxOyB9XG5cbi5jaGFydF9fZ3JhcGhpYyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluOyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTM3NWVtKSB7XG4gICAgLmNoYXJ0X19ncmFwaGljIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuICAuY2hhcnRfX2dyYXBoaWMtLTEge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxNi42ODc1cmVtO1xuICAgIGhlaWdodDogMTUuMzc1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9jaGFydF9fZ3JhcGhpYzEuc3ZnXCIpOyB9XG4gIC5jaGFydF9fZ3JhcGhpYy0tMiB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDExLjI1cmVtO1xuICAgIGhlaWdodDogMTAuNzVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2NoYXJ0X19ncmFwaGljMi5zdmdcIik7IH1cbiAgLmNoYXJ0X19ncmFwaGljLS0zIHtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMTcuNDM3NXJlbTtcbiAgICBoZWlnaHQ6IDEzLjc1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9jaGFydF9fZ3JhcGhpYzMuc3ZnXCIpOyB9XG5cbi5zdHlsZS1ndWlkZV9fY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07IH1cbiAgLnN0eWxlLWd1aWRlX19jb250YWluZXIgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogM2VtOyB9XG5cbi5zdHlsZS1ndWlkZV9fYm9keS10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS44O1xuICBjb2xvcjogIzAwMDAwMDsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAuc3R5bGUtZ3VpZGVfX2JvZHktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNzE0Mjk7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuc3R5bGUtZ3VpZGVfX2JvZHktdGV4dCB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41OyB9IH1cblxuLnN0eWxlLWd1aWRlX19oZWFkaW5nMSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMTI1OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zdHlsZS1ndWlkZV9faGVhZGluZzEge1xuICAgICAgZm9udC1zaXplOiA0cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTI1OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnN0eWxlLWd1aWRlX19oZWFkaW5nMSB7XG4gICAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjExMTExOyB9IH1cblxuLnN0eWxlLWd1aWRlX19oZWFkaW5nMiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zdHlsZS1ndWlkZV9faGVhZGluZzIge1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODc1OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnN0eWxlLWd1aWRlX19oZWFkaW5nMiB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yNTsgfSB9XG5cbi5zdHlsZS1ndWlkZV9faGVhZGluZzMge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjcyNzM7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLnN0eWxlLWd1aWRlX19oZWFkaW5nMyB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4xODc1OyB9IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgLnN0eWxlLWd1aWRlX19oZWFkaW5nMyB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjI3Mjc7IH0gfVxuXG4uc3R5bGUtZ3VpZGVfX2hlYWRpbmc0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAgIC5zdHlsZS1ndWlkZV9faGVhZGluZzQge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODQ2MTU7IH0gfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuc3R5bGUtZ3VpZGVfX2hlYWRpbmc0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4zNjM2NDsgfSB9XG5cbi5zdHlsZS1ndWlkZV9faGVhZGluZzUge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS43MTQyOTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDgwZW0pIHtcbiAgICAuc3R5bGUtZ3VpZGVfX2hlYWRpbmc1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7IH0gfVxuXG4uc3R5bGUtZ3VpZGVfX2hlYWRpbmc2IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNTsgfVxuXG4uc3R5bGUtZ3VpZGVfX2NvbG9yLWxpc3QgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDEuMjVlbTsgfVxuXG4uc3R5bGUtZ3VpZGVfX2NvbG9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuc3R5bGUtZ3VpZGVfX2NvbG9yOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0teWVsbG93OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRUUzM0Y7IH1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0tcGFsZS1ibHVlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGMEY0RkE7IH1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0tZ3JleTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNkE3MTdEOyB9XG5cbi5zdHlsZS1ndWlkZV9fY29sb3ItLWRhcmstZ3JleTpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUEyMDJFOyB9XG5cbi5zdHlsZS1ndWlkZV9fY29sb3ItLWdyYWRpZW50OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjMDNBRUFCLCAjMTg1OEM2KTsgfVxuXG4ubGEge1xuICBjb2xvcjogI0ZGRkZGRjsgfVxuICAubGEgLmNoYXJ0LXNlY3Rpb246Zmlyc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLXRvcDogMjJyZW07IH1cbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgICAgIC5sYSAuY2hhcnQtc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjZyZW07IH0gfVxuXG4ubGEtaGVhZGVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMjEuODc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxhLWhlYWRlciB7XG4gICAgICBoZWlnaHQ6IDI2LjI1cmVtOyB9IH1cbiAgLmxhLWhlYWRlcjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDExMS4zNzM3MDc1MzMyJTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvdHJpYW5nbGUuc3ZnXCIpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICB6LWluZGV4OiAxOyB9XG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4MGVtKSB7XG4gICAgICAubGEtaGVhZGVyOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAzNi41JTsgfSB9XG5cbi5sYS1oZWFkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAxcmVtO1xuICB6LWluZGV4OiAxOyB9XG5cbi5sYS1oZWFkZXItaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfVxuXG4ubGEtbmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxhLW5hbWUge1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cblxuLmxhLXNoYXJlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuXG4ubGEtc2hhcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDsgfVxuXG4ubGEtc2hhcmVfX2xhYmVsIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjEwNjg3cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubGEtc2hhcmVfX2xhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfSB9XG5cbi5sYS1zaGFyZV9faHIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICAgLmxhLXNoYXJlX19ociB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuLmZpbmQtYW5vdGhlci1sYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjEwNjg3cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAuZmluZC1hbm90aGVyLWxhIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfSB9XG5cbi5sYS1tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlOyB9XG5cbi5sYS1tYXAtaW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7IH1cblxuLmxlcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDYwZW0pIHtcbiAgICAubGVwID4gKiArICoge1xuICAgICAgbWFyZ2luLXRvcDogM2VtOyB9IH1cblxuLmxlcC1hcnJvdy1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cblxuLmxhX19pcy1wYXJ0LW9mLCAubGFfX2h1Yi1pcyB7XG4gIGNvbG9yOiAjNkE3MTdEO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS44OyB9XG5cbi5sYV9fbGVwLXVybCwgLmxhX19odWItdXJsIHtcbiAgY29sb3I6ICNEODVEMDk7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBib3JkZXItYm90dG9tOiAwLjEyNXJlbSBzb2xpZCAjRDg1RDA5O1xuICBwYWRkaW5nLWJvdHRvbTogMC4xZW07IH1cbiIsIiRndHIgICAgICAgOiByZW0oMzApO1xuJGd0ci1oYWxmICA6ICRndHIgLyAyO1xuJGNvbHMgICAgICA6IDEyO1xuJG1heC13aWR0aCA6IHJlbSgxNDQwKTtcblxuJG0tbWF4LXdpZHRoOiByZW0oNjE0KTtcbiRsLW1heC13aWR0aDogcmVtKDEwMjQpO1xuJHhsLW1heC13aWR0aDogcmVtKDE0NDApO1xuXG5AbWl4aW4gY29udGFpbmVyKCkge1xuICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogJGd0ci1oYWxmO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ3RyLWhhbGY7XG59XG5cbkBtaXhpbiBmbGV4LWdyaWQoJGRpcmVjdGlvbjogcm93LCAkYWxpZ246IGZsZXgtc3RhcnQsICRqdXN0aWZ5OiBmbGV4LXN0YXJ0LCAkZ3V0dGVyczogdHJ1ZSkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6ICRqdXN0aWZ5O1xuICBhbGlnbi1pdGVtczogJGFsaWduO1xuXG4gIEBpZiAkZ3V0dGVycyA9PSB0cnVlIHtcbiAgICBtYXJnaW4tbGVmdDogLSRndHItaGFsZjtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ3RyLWhhbGY7XG4gIH1cbn1cblxuQG1peGluIGZsZXgtc3BhbigkY29sdW1ucy1zcGFuLCAkZ3V0dGVyczogdHJ1ZSkge1xuICBAaWYgJGd1dHRlcnMge1xuICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZSgkY29sdW1ucy1zcGFuIC8gJGNvbHMpfSAtICN7JGd0cn0pO1xuICAgIG1hcmdpbjogJGd0ci1oYWxmO1xuICB9IEBlbHNlIHtcbiAgICB3aWR0aDogI3twZXJjZW50YWdlKCRjb2x1bW5zLXNwYW4gLyAkY29scyl9O1xuICB9XG59XG5cbkBtaXhpbiBmbGV4LW9mZnNldCgkY29sdW1ucywgJGd1dHRlcnM6IHRydWUpIHtcbiAgQGlmICRndXR0ZXJzIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygje3BlcmNlbnRhZ2UoJGNvbHVtbnMgLyAkY29scyl9ICsgI3skZ3RyLWhhbGZ9KTtcbiAgfSBAZWxzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoI3twZXJjZW50YWdlKCRjb2x1bW5zIC8gJGNvbHMpfSk7XG4gIH1cbn1cblxuLmNvbC12ZXJ0aWNhbC1mbGV4IHtcbiAgQGluY2x1ZGUgZmxleC1ncmlkKCRkaXJlY3Rpb246IGNvbHVtbiwgJGd1dHRlcnM6IGZhbHNlLCAkanVzdGlmeTogc3BhY2UtYmV0d2Vlbik7XG59XG5cbi5jb2wtZmxleC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBtYXgtd2lkdGg6ICRtLW1heC13aWR0aDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBtYXgtd2lkdGg6ICRsLW1heC13aWR0aDtcbiAgfVxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgbWF4LXdpZHRoOiAkeGwtbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vIENvbHVtbnNcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTIge1xuICAuY29sLXNwYW4tcy0jeyRpfSB7XG4gICAgQGluY2x1ZGUgZmxleC1zcGFuKCRpLCAkZ3V0dGVyczogZmFsc2UpO1xuICB9XG5cbiAgLmNvbC1zcGFuLWctcy0jeyRpfSB7XG4gICAgQGluY2x1ZGUgZmxleC1zcGFuKCRpKTtcbiAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEyIHtcbiAgLmNvbC1zcGFuLW0tI3skaX0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LXNwYW4oJGksICRndXR0ZXJzOiBmYWxzZSk7XG4gICAgfVxuICB9XG5cbiAgLmNvbC1zcGFuLWctbS0jeyRpfSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3BhbigkaSk7XG4gICAgfVxuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTIge1xuICAuY29sLXNwYW4tbC0jeyRpfSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1zcGFuKCRpLCAkZ3V0dGVyczogZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC5jb2wtc3Bhbi1nLWwtI3skaX0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3BhbigkaSk7XG4gICAgfVxuICB9XG59XG5cbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTIge1xuICAuY29sLXNwYW4teGwtI3skaX0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3BhbigkaSwgJGd1dHRlcnM6IGZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAuY29sLXNwYW4tZy14bC0jeyRpfSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1zcGFuKCRpKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBPZmZzZXRcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMTIge1xuICAuY29sLW9mZnNldC1zLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBmbGV4LW9mZnNldCgkaSwgJGd1dHRlcnM6IGZhbHNlKTtcbiAgfVxuICAvLyBXaXRoIGd1dHRlcnNcbiAgLmNvbC1vZmZzZXQtZy1zLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBmbGV4LW9mZnNldCgkaSk7XG4gIH1cbn1cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gIC5jb2wtb2Zmc2V0LW0tI3skaX0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LW9mZnNldCgkaSwgJGd1dHRlcnM6IGZhbHNlKTtcbiAgICB9XG4gIH1cbiAgLmNvbC1vZmZzZXQtZy1tLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1vZmZzZXQoJGkpO1xuICAgIH1cbiAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEyIHtcbiAgLmNvbC1vZmZzZXQtbC0jeyRpfSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1vZmZzZXQoJGksICRndXR0ZXJzOiBmYWxzZSk7XG4gICAgfVxuICB9XG4gIC5jb2wtb2Zmc2V0LWctbC0jeyRpfSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1vZmZzZXQoJGkpO1xuICAgIH1cbiAgfVxufVxuXG5AZm9yICRpIGZyb20gMSB0aHJvdWdoIDEyIHtcbiAgLmNvbC1vZmZzZXQteGwtI3skaX0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtb2Zmc2V0KCRpLCAkZ3V0dGVyczogZmFsc2UpO1xuICAgIH1cbiAgfVxuICAuY29sLW9mZnNldC1nLXhsLSN7JGl9IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LW9mZnNldCgkaSk7XG4gICAgfVxuICB9XG59XG4iLCIkZW0tYmFzZTogMTY7XG5cbi8vIENvbnZlcnQgcGl4ZWxzIHRvIHJlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgcmVtKDEyKVxuLy8gQXNzdW1lcyAkZW0tYmFzZSBpcyB0aGUgZm9udC1zaXplIG9mIDxodG1sPlxuXG5AZnVuY3Rpb24gcmVtKCRweHZhbCkge1xuICBAcmV0dXJuICgkcHh2YWwgLyAkZW0tYmFzZSkgKiAxcmVtO1xufVxuXG4vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcbi8vIGVnLiBmb3IgYSByZWxhdGlvbmFsIHZhbHVlIG9mIDEycHggd3JpdGUgZW0oMTIpIHdoZW4gdGhlIHBhcmVudCBpcyAxNnB4XG4vLyBpZiB0aGUgcGFyZW50IGlzIGFub3RoZXIgdmFsdWUgc2F5IDI0cHggd3JpdGUgZW0oMTIsIDI0KVxuXG5AZnVuY3Rpb24gZW0oJHB4dmFsLCAkYmFzZTogJGVtLWJhc2UpIHtcbiAgQHJldHVybiAoJHB4dmFsIC8gJGJhc2UpICogMWVtO1xufSIsIkBtaXhpbiBtZWRpYSgkYnJlYWtwb2ludCkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kICN7JGJyZWFrcG9pbnR9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4kc21hbGwtc2NyZWVuICAgICAgIDogZW0oNTUwKTtcbiRtZWRpdW0tc2NyZWVuICAgICAgOiBlbSg3NjgpO1xuJGxhcmdlLXNjcmVlbiAgICAgICA6IGVtKDk2MCk7XG4kZXh0cmEtbGFyZ2Utc2NyZWVuIDogZW0oMTI4MCk7XG5cbiRzbWFsbC1zY3JlZW4tZG93biAgOiBcIihtYXgtd2lkdGg6ICN7JHNtYWxsLXNjcmVlbiAtIGVtKDEpfSlcIjtcbiRzbWFsbC1zY3JlZW4tdXAgICAgOiBcIihtaW4td2lkdGg6ICN7JHNtYWxsLXNjcmVlbn0pXCI7XG4kbWVkaXVtLXNjcmVlbi1kb3duIDogXCIobWF4LXdpZHRoOiAjeyRtZWRpdW0tc2NyZWVuIC0gZW0oMSl9KVwiO1xuJG1lZGl1bS1zY3JlZW4tdXAgICA6IFwiKG1pbi13aWR0aDogI3skbWVkaXVtLXNjcmVlbn0pXCI7XG4kbGFyZ2Utc2NyZWVuLWRvd24gIDogXCIobWF4LXdpZHRoOiAjeyRsYXJnZS1zY3JlZW4gLSBlbSgxKX0pXCI7XG4kbGFyZ2Utc2NyZWVuLXVwICAgIDogXCIobWluLXdpZHRoOiAjeyRsYXJnZS1zY3JlZW59KVwiO1xuJGV4dHJhLWxhcmdlLXNjcmVlbi1kb3duICA6IFwiKG1heC13aWR0aDogI3skZXh0cmEtbGFyZ2Utc2NyZWVuIC0gZW0oMSl9KVwiO1xuJGV4dHJhLWxhcmdlLXNjcmVlbi11cCAgICA6IFwiKG1pbi13aWR0aDogI3skZXh0cmEtbGFyZ2Utc2NyZWVufSlcIjtcblxuJHNtYWxsLXRvLWxhcmdlLXNjcmVlbjogXCIobWluLXdpZHRoOiAjeyRzbWFsbC1zY3JlZW59KSBhbmQgKG1heC13aWR0aDogI3skbGFyZ2Utc2NyZWVuIC0gZW0oMSl9KVwiO1xuIiwiKixcbjpiZWZvcmUsXG46YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgJi5tZW51LWlzLW9wZW4ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLWRvd24pIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuICB9XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG4kZmY6ICdNb250c2VycmF0Jywgc2Fucy1zZXJpZjtcbiRmdy1saWdodDogMzAwO1xuJGZ3LXJlZ3VsYXI6IDQwMDtcbiRmdy1tZWRpdW06IDUwMDtcbiRmdy1zZW1pYm9sZDogNjAwO1xuJGZ3LWJvbGQ6IDcwMDtcblxuLy8gQ29sb3JzXG4kYmxhY2s6ICMwMDAwMDA7XG4kd2hpdGU6ICNGRkZGRkY7XG4keWVsbG93OiAjRkVFMzNGO1xuJHllbGxvdzI6ICNFNEM4MjY7XG4kZ3JleTogIzZBNzE3RDtcbiRkYXJrLWdyZXk6ICMxQTIwMkU7XG4kcGFsZS1ibHVlOiAjRjBGNEZBO1xuJGRhcmstYmx1ZTogIzNFNTU3QztcbiRsaWdodC1vcmFuZ2U6ICNGNENGMzE7XG4kb3JhbmdlOiAjRTJBNzIzO1xuJG1pZC1vcmFuZ2U6ICNERDgxMTI7XG4kZGFyay1vcmFuZ2U6ICNEODVEMDk7XG5cbiRncmFkLWJsdWU6ICMxODU4QzY7XG4kZ3JhZC1taWQ6ICMwQzg3Qjc7XG4kZ3JhZC1ncmVlbjogIzAzQUVBQjtcblxuJGRhcmstYmx1ZTogIzI0MzhBMDtcbiRibHVlOiAjMjM2NUQ2O1xuJGJsdWUyOiAjMzM3OEU2O1xuJG1lZGl1bS1hcXVhOiAjMDBBOUNEO1xuJGFxdWE6ICMwMENEQ0E7XG5cbiRib2R5LWNvbG9yOiAkYmxhY2s7XG5cbi8vIExheW91dFxuJHNwLWw6IHJlbSg2MCk7XG4kc3AtczogcmVtKDMwKTtcbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qIVxuICogSGFtYnVyZ2Vyc1xuICogQGRlc2NyaXB0aW9uIFRhc3R5IENTUy1hbmltYXRlZCBoYW1idXJnZXJzXG4gKiBAYXV0aG9yIEpvbmF0aGFuIFN1aCBAam9uc3VoXG4gKiBAc2l0ZSBodHRwczovL2pvbnN1aC5jb20vaGFtYnVyZ2Vyc1xuICogQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL2pvbnN1aC9oYW1idXJnZXJzXG4gKi9cblxuLy8gU2V0dGluZ3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4kaGFtYnVyZ2VyLXBhZGRpbmcteCAgICAgICAgICAgICAgICAgICAgICAgOiAxNXB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1wYWRkaW5nLXkgICAgICAgICAgICAgICAgICAgICAgIDogMTVweCAhZGVmYXVsdDtcbiRoYW1idXJnZXItbGF5ZXItd2lkdGggICAgICAgICAgICAgICAgICAgICA6IDQwcHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAgICAgICAgICAgICAgICAgICAgOiA0cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgICAgICAgICAgICAgICAgICAgOiA2cHggIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWxheWVyLWNvbG9yICAgICAgICAgICAgICAgICAgICAgOiAjMDAwICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzICAgICAgICAgICAgIDogNHB4ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1vcGFjaXR5ICAgICAgICAgICAgICAgICAgIDogMC43ICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICAgICAgIDogMC4xNXMgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4kaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXI6IGZhbHNlICFkZWZhdWx0O1xuJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG5cbi8vIFR5cGVzIChSZW1vdmUgb3IgY29tbWVudCBvdXQgd2hhdCB5b3UgZG9u4oCZdCBuZWVkKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiRoYW1idXJnZXItdHlwZXM6IChcbiAgM2R4LFxuICAzZHgtcixcbiAgM2R5LFxuICAzZHktcixcbiAgM2R4eSxcbiAgM2R4eS1yLFxuICBhcnJvdyxcbiAgYXJyb3ctcixcbiAgYXJyb3dhbHQsXG4gIGFycm93YWx0LXIsXG4gIGFycm93dHVybixcbiAgYXJyb3d0dXJuLXIsXG4gIGJvcmluZyxcbiAgY29sbGFwc2UsXG4gIGNvbGxhcHNlLXIsXG4gIGVsYXN0aWMsXG4gIGVsYXN0aWMtcixcbiAgZW1waGF0aWMsXG4gIGVtcGhhdGljLXIsXG4gIG1pbnVzLFxuICBzbGlkZXIsXG4gIHNsaWRlci1yLFxuICBzcGluLFxuICBzcGluLXIsXG4gIHNwcmluZyxcbiAgc3ByaW5nLXIsXG4gIHN0YW5kLFxuICBzdGFuZC1yLFxuICBzcXVlZXplLFxuICB2b3J0ZXgsXG4gIHZvcnRleC1yXG4pICFkZWZhdWx0O1xuXG4vLyBCYXNlIEhhbWJ1cmdlciAoV2UgbmVlZCB0aGlzKVxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJiYXNlXCI7XG5cbi8vIEhhbWJ1cmdlciB0eXBlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbkBpbXBvcnQgXCJ0eXBlcy8zZHhcIjtcbkBpbXBvcnQgXCJ0eXBlcy8zZHgtclwiO1xuQGltcG9ydCBcInR5cGVzLzNkeVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvM2R4eVwiO1xuQGltcG9ydCBcInR5cGVzLzNkeHktclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3ctclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93YWx0XCI7XG5AaW1wb3J0IFwidHlwZXMvYXJyb3dhbHQtclwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVyblwiO1xuQGltcG9ydCBcInR5cGVzL2Fycm93dHVybi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvYm9yaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvY29sbGFwc2VcIjtcbkBpbXBvcnQgXCJ0eXBlcy9jb2xsYXBzZS1yXCI7XG5AaW1wb3J0IFwidHlwZXMvZWxhc3RpY1wiO1xuQGltcG9ydCBcInR5cGVzL2VsYXN0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL2VtcGhhdGljXCI7XG5AaW1wb3J0IFwidHlwZXMvZW1waGF0aWMtclwiO1xuQGltcG9ydCBcInR5cGVzL21pbnVzXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyXCI7XG5AaW1wb3J0IFwidHlwZXMvc2xpZGVyLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcGluXCI7XG5AaW1wb3J0IFwidHlwZXMvc3Bpbi1yXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nXCI7XG5AaW1wb3J0IFwidHlwZXMvc3ByaW5nLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zdGFuZFwiO1xuQGltcG9ydCBcInR5cGVzL3N0YW5kLXJcIjtcbkBpbXBvcnQgXCJ0eXBlcy9zcXVlZXplXCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4XCI7XG5AaW1wb3J0IFwidHlwZXMvdm9ydGV4LXJcIjtcblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvb2tpbmcgdXAgYWRkaXRpb25hbCB0eXBlczpcbi8vXG4vLyBUaGUgU2FzcyBmb3IgZWFjaCBoYW1idXJnZXIgdHlwZSBzaG91bGQgYmUgbmVzdGVkXG4vLyBpbnNpZGUgYW4gQGlmIGRpcmVjdGl2ZSB0byBjaGVjayB3aGV0aGVyIG9yIG5vdFxuLy8gaXQgZXhpc3RzIGluICRoYW1idXJnZXItdHlwZXMgc28gb25seSB0aGUgQ1NTIGZvclxuLy8gaW5jbHVkZWQgdHlwZXMgYXJlIGdlbmVyYXRlZC5cbi8vXG4vLyBlLmcuIGhhbWJ1cmdlcnMvdHlwZXMvX25ldy10eXBlLnNjc3Ncbi8vXG4vLyBAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgbmV3LXR5cGUpIHtcbi8vICAgLmhhbWJ1cmdlci0tbmV3LXR5cGUge1xuLy8gICAgIC4uLlxuLy8gICB9XG4vLyB9XG4iLCIvLyBIYW1idXJnZXJcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaGFtYnVyZ2VyIHtcbiAgcGFkZGluZzogJGhhbWJ1cmdlci1wYWRkaW5nLXkgJGhhbWJ1cmdlci1wYWRkaW5nLXg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIGZpbHRlcjtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjtcblxuICAvLyBOb3JtYWxpemUgKDxidXR0b24+KVxuICBmb250OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGlmICRoYW1idXJnZXItaG92ZXItdXNlLWZpbHRlciA9PSB0cnVlIHtcbiAgICAgIGZpbHRlcjogJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG9wYWNpdHk6ICRoYW1idXJnZXItaG92ZXItb3BhY2l0eTtcbiAgICB9XG4gIH1cbn1cblxuLmhhbWJ1cmdlci1ib3gge1xuICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgaGVpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDMgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmhhbWJ1cmdlci1pbm5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgLyAtMjtcblxuICAmLFxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICB3aWR0aDogJGhhbWJ1cmdlci1sYXllci13aWR0aDtcbiAgICBoZWlnaHQ6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoYW1idXJnZXItbGF5ZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGhhbWJ1cmdlci1sYXllci1ib3JkZXItcmFkaXVzO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIH1cblxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBib3R0b206ICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMTtcbiAgfVxufVxuIiwiJGhhbWJ1cmdlci1wYWRkaW5nLXggICAgICAgICAgICAgICAgICAgICAgIDogMDtcbiRoYW1idXJnZXItcGFkZGluZy15ICAgICAgICAgICAgICAgICAgICAgICA6IDA7XG4kaGFtYnVyZ2VyLWxheWVyLXdpZHRoICAgICAgICAgICAgICAgICAgICAgOiByZW0oMTgpO1xuJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgICAgICAgICAgICAgICAgICAgIDogcmVtKDIpO1xuJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICAgICAgICAgICAgICAgICAgIDogcmVtKDQpO1xuJGhhbWJ1cmdlci1sYXllci1jb2xvciAgICAgICAgICAgICAgICAgICAgIDogI0ZGRkZGRjtcbiRoYW1idXJnZXItbGF5ZXItYm9yZGVyLXJhZGl1cyAgICAgICAgICAgICA6IDA7XG4kaGFtYnVyZ2VyLWhvdmVyLW9wYWNpdHkgICAgICAgICAgICAgICAgICAgOiAxO1xuJGhhbWJ1cmdlci1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICAgICAgIDogMC4xNXMgIWRlZmF1bHQ7XG4kaGFtYnVyZ2VyLWhvdmVyLXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vIFRvIHVzZSBDU1MgZmlsdGVycyBhcyB0aGUgaG92ZXIgZWZmZWN0IGluc3RlYWQgb2Ygb3BhY2l0eSxcbi8vIHNldCAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXIgYXMgdHJ1ZSBhbmRcbi8vIGNoYW5nZSB0aGUgdmFsdWUgb2YgJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgYWNjb3JkaW5nbHkuXG4vLyAkaGFtYnVyZ2VyLWhvdmVyLXVzZS1maWx0ZXI6IGZhbHNlICFkZWZhdWx0O1xuLy8gJGhhbWJ1cmdlci1ob3Zlci1maWx0ZXIgICAgOiBvcGFjaXR5KDUwJSkgIWRlZmF1bHQ7XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4KSB7XG4gIC8qXG4gICAqIDNEWFxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4IHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4LXIpIHtcbiAgLypcbiAgICogM0RYIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeC1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoLTE4MGRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgKCRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICsgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nKSAqIC0xLCAwKSByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIDNkeSkge1xuICAvKlxuICAgKiAzRFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeSB7XG4gICAgLmhhbWJ1cmdlci1ib3gge1xuICAgICAgcGVyc3BlY3RpdmU6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyO1xuICAgIH1cblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKC0xODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHktcikge1xuICAvKlxuICAgKiAzRFkgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R5LXIge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZywgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZykgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCAzZHh5KSB7XG4gIC8qXG4gICAqIDNEWFlcbiAgICovXG4gIC5oYW1idXJnZXItLTNkeHkge1xuICAgIC5oYW1idXJnZXItYm94IHtcbiAgICAgIHBlcnNwZWN0aXZlOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICB9XG5cbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgxODBkZWcpIHJvdGF0ZVkoMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgM2R4eS1yKSB7XG4gIC8qXG4gICAqIDNEWFkgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tM2R4eS1yIHtcbiAgICAuaGFtYnVyZ2VyLWJveCB7XG4gICAgICBwZXJzcGVjdGl2ZTogJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDI7XG4gICAgfVxuXG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciAwcyAwLjFzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMHMgMC4xcyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoMTgwZGVnKSByb3RhdGVZKDE4MGRlZykgcm90YXRlWigtMTgwZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKyAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcpICogLTEsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3cpIHtcbiAgLypcbiAgICogQXJyb3dcbiAgICovXG4gIC5oYW1idXJnZXItLWFycm93LmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAwLCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBhcnJvdy1yKSB7XG4gIC8qXG4gICAqIEFycm93IFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvdy1yLmlzLWFjdGl2ZSB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsIDAsIDApIHJvdGF0ZSg0NWRlZykgc2NhbGUoMC43LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYXJyb3dhbHQpIHtcbiAgLypcbiAgICogQXJyb3cgQWx0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd2FsdCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMXMgMC4xcyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuNDQsIDEpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTAuMjUsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMC4yLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMC4yNSwgMCkgcm90YXRlKDQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGFycm93YWx0LXIpIHtcbiAgLypcbiAgICogQXJyb3cgQWx0IFJpZ2h0XG4gICAqL1xuICAuaGFtYnVyZ2VyLS1hcnJvd2FsdC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjQ0LCAxKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjFzIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC40NCwgMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDAuMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0wLjI1LCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgZWFzZSxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xcyAwLjFzIGN1YmljLWJlemllcigwLjg5NSwgMC4wMywgMC42ODUsIDAuMjIpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjIsICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAwLjI1LCAwKSByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgwLjcsIDEpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMXMgMC4xcyBjdWJpYy1iZXppZXIoMC44OTUsIDAuMDMsIDAuNjg1LCAwLjIyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLypcbiAqIEFycm93IFR1cm5cbiAqL1xuLmhhbWJ1cmdlci0tYXJyb3d0dXJuLmlzLWFjdGl2ZSB7XG4gIC5oYW1idXJnZXItaW5uZXIge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg4cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgfVxuICB9XG59XG4iLCIvKlxuICogQXJyb3cgVHVybiBSaWdodFxuICovXG4uaGFtYnVyZ2VyLS1hcnJvd3R1cm4tci5pcy1hY3RpdmUge1xuICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC04cHgsIDAsIDApIHJvdGF0ZSgtNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtOHB4LCAwLCAwKSByb3RhdGUoNDVkZWcpIHNjYWxlKDAuNywgMSk7XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgYm9yaW5nKSB7XG4gIC8qXG4gICAqIEJvcmluZ1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tYm9yaW5nIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICYsXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgY29sbGFwc2UpIHtcbiAgLypcbiAgICogQ29sbGFwc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWNvbGxhcHNlIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4yMnMgbGluZWFyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE2cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgY29sbGFwc2Utcikge1xuICAvKlxuICAgKiBDb2xsYXBzZSBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1jb2xsYXBzZS1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xM3M7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBsaW5lYXI7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjEycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4yMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjIycyBsaW5lYXI7XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNnMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVsYXN0aWMpIHtcbiAgLypcbiAgICogRWxhc3RpY1xuICAgKi9cbiAgLmhhbWJ1cmdlci0tZWxhc3RpYyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDEzNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAkeS1vZmZzZXQgKiAtMiwgMCkgcm90YXRlKC0yNzBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVsYXN0aWMtcikge1xuICAvKlxuICAgKiBFbGFzdGljIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLWVsYXN0aWMtciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjc1cztcbiAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjEyNXMgMC4yNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjc1cyBjdWJpYy1iZXppZXIoMC42OCwgLTAuNTUsIDAuMjY1LCAxLjU1KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA3NXM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcztcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSgyNzBkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMDc1cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljKSB7XG4gIC8qXG4gICAqIEVtcGhhdGljXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1lbXBoYXRpYyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogbGVmdCAwLjEyNXMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTI1cyAwLjE3NXMgY3ViaWMtYmV6aWVyKDAuMDc1LCAwLjgyLCAwLjE2NSwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIDIsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIGVtcGhhdGljLXIpIHtcbiAgLypcbiAgICogRW1waGF0aWMgUmV2ZXJzZVxuICAgKi9cbiAgLmhhbWJ1cmdlci0tZW1waGF0aWMtciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjEyNXMgY3ViaWMtYmV6aWVyKDAuNiwgMC4wNCwgMC45OCwgMC4zMzUpLFxuICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgbGVmdCAwLjEyNXMgMC4xNzVzIGVhc2UtaW47XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyk7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xMjVzIGN1YmljLWJlemllcigwLjYsIDAuMDQsIDAuOTgsIDAuMzM1KSxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDVzIDAuMTI1cyBsaW5lYXIsXG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0IDAuMTI1cyAwLjE3NXMgZWFzZS1pbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAyLCAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTIsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IGxlZnQgMC4xMjVzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRvcCAwLjA1cyAwLjEyNXMgbGluZWFyLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEyNXMgMC4xNzVzIGN1YmljLWJlemllcigwLjA3NSwgMC44MiwgMC4xNjUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogLTI7XG4gICAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLXdpZHRoICogMjtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCRoYW1idXJnZXItbGF5ZXItd2lkdGggKiAtMiwgJGhhbWJ1cmdlci1sYXllci13aWR0aCAqIC0yLCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHJpZ2h0IDAuMTI1cyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0b3AgMC4wNXMgMC4xMjVzIGxpbmVhcixcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4xMjVzIDAuMTc1cyBjdWJpYy1iZXppZXIoMC4wNzUsIDAuODIsIDAuMTY1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIG1pbnVzKSB7XG4gIC8qXG4gICAqIE1pbnVzXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1taW51cyB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjA4cyAwcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDhzIDBzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIGxpbmVhcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJjo6YmVmb3JlLFxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wOHMgZWFzZS1vdXQsXG4gICAgICAgICAgICAgICAgICAgICAgdG9wIDAuMDhzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgMC4wOHMgbGluZWFyO1xuICAgICAgICB9XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlcikge1xuICAvKlxuICAgKiBTbGlkZXJcbiAgICovXG4gIC5oYW1idXJnZXItLXNsaWRlciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKDQ1ZGVnKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZykgdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAvIC03LCAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAtMSwgMCk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCAqIC0yLCAwKSByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHNsaWRlci1yKSB7XG4gIC8qXG4gICAqIFNsaWRlciBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zbGlkZXItciB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0b3A6ICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0IC8gMjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xNXM7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1oZWlnaHQgKiAyKSArICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKiAyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgJHktb2Zmc2V0OiAkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodDtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICR5LW9mZnNldCwgMCkgcm90YXRlKC00NWRlZyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlM2QoJGhhbWJ1cmdlci1sYXllci13aWR0aCAvIDcsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIC0xLCAwKTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJHktb2Zmc2V0ICogLTIsIDApIHJvdGF0ZSg5MGRlZyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluKSB7XG4gIC8qXG4gICAqIFNwaW5cbiAgICovXG4gIC5oYW1idXJnZXItLXNwaW4ge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xMnM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyAwLjEycyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcGluLXIpIHtcbiAgLypcbiAgICogU3BpbiBSZXZlcnNlXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcGluLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4xcyBlYXNlLWluO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb246IGJvdHRvbSAwLjFzIDAuMjVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjIycyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTIyNWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMXMgMC4xMnMgZWFzZS1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4yMnMgMC4xMnMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcHJpbmcpIHtcbiAgLypcbiAgICogU3ByaW5nXG4gICAqL1xuICAuaGFtYnVyZ2VyLS1zcHJpbmcge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAvIDI7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTNzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdG9wOiAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCArICRoYW1idXJnZXItbGF5ZXItc3BhY2luZztcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0b3A6ICgkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCAqIDIpICsgKCRoYW1idXJnZXItbGF5ZXItc3BhY2luZyAqIDIpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjIycztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMzMzMzMsIDAsIDAuNjY2NjcsIDAuMzMzMzMpLFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjEzcyAwLjIycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICRoYW1idXJnZXItbGF5ZXItc3BhY2luZyArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0LCAwKSByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICsgJGhhbWJ1cmdlci1sYXllci1oZWlnaHQsIDApIHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3ByaW5nLXIpIHtcbiAgLypcbiAgICogU3ByaW5nIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXNwcmluZy1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTNzO1xuICAgICAgdHJhbnNpdGlvbi1kZWxheTogMHM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdG9wOiAoJGhhbWJ1cmdlci1sYXllci1zcGFjaW5nICogMiArICRoYW1idXJnZXItbGF5ZXItaGVpZ2h0ICogMikgKiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMnMgMC4ycyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMC42NjY2NywgMC42NjY2NywgMSksXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMHMgbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLjY2NjY3LCAwLjY2NjY3LCAxKSxcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsICgkaGFtYnVyZ2VyLWxheWVyLXNwYWNpbmcgKyAkaGFtYnVyZ2VyLWxheWVyLWhlaWdodCkgKiAtMSwgMCkgcm90YXRlKC00NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMjJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjJzIGN1YmljLWJlemllcigwLjMzMzMzLCAwLCAwLjY2NjY3LCAwLjMzMzMzKSxcbiAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDBzIDAuMjJzIGxpbmVhcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4xcyAwLjE1cyBjdWJpYy1iZXppZXIoMC4zMzMzMywgMCwgMC42NjY2NywgMC4zMzMzMyksXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMTNzIDAuMjJzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgc3RhbmQpIHtcbiAgLypcbiAgICogU3RhbmRcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSksXG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMDc1cyBsaW5lYXI7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4wNzVzIGVhc2UtaW4sXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMHMgY3ViaWMtYmV6aWVyKDAuNTUsIDAuMDU1LCAwLjY3NSwgMC4xOSk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzdGFuZC1yKSB7XG4gIC8qXG4gICAqIFN0YW5kIFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXN0YW5kLXIge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMDc1cyAwLjE1cyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KSxcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgMHMgMC4wNzVzIGxpbmVhcjtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDAuMDc1cyAwLjA3NXMgZWFzZS1pbixcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwcyBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIDAuMDc1cyBlYXNlLWluLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4wNzVzIDBzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDBzIDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRvcCAwLjA3NXMgMC4xcyBlYXNlLW91dCxcbiAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIDAuMTVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjFzIGVhc2Utb3V0LFxuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjA3NXMgMC4xNXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkBpZiBpbmRleCgkaGFtYnVyZ2VyLXR5cGVzLCBzcXVlZXplKSB7XG4gIC8qXG4gICAqIFNxdWVlemVcbiAgICovXG4gIC5oYW1idXJnZXItLXNxdWVlemUge1xuICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wNzVzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIDAuMTJzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHkgMC4wNzVzIGVhc2U7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYm90dG9tIDAuMDc1cyAwLjEycyBlYXNlLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gMC4wNzVzIGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuMTJzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0b3AgMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eSAwLjA3NXMgMC4xMnMgZWFzZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBib3R0b20gMC4wNzVzIGVhc2UsXG4gICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMDc1cyAwLjEycyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGlmIGluZGV4KCRoYW1idXJnZXItdHlwZXMsIHZvcnRleCkge1xuICAvKlxuICAgKiBWb3J0ZXhcbiAgICovXG4gIC5oYW1idXJnZXItLXZvcnRleCB7XG4gICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbiAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbiAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdG9wLCBvcGFjaXR5O1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvdHRvbSwgdHJhbnNmb3JtO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIC5oYW1idXJnZXItaW5uZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3NjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAaWYgaW5kZXgoJGhhbWJ1cmdlci10eXBlcywgdm9ydGV4LXIpIHtcbiAgLypcbiAgICogVm9ydGV4IFJldmVyc2VcbiAgICovXG4gIC5oYW1idXJnZXItLXZvcnRleC1yIHtcbiAgICAuaGFtYnVyZ2VyLWlubmVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDBzO1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0b3AsIG9wYWNpdHk7XG4gICAgICB9XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYm90dG9tLCB0cmFuc2Zvcm07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmhhbWJ1cmdlci1pbm5lciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC03NjVkZWcpO1xuICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTksIDEsIDAuMjIsIDEpO1xuXG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyohXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNyBOQVZFUiBDb3JwLlxyXG4gKiBiaWxsYm9hcmQuanMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcclxuICogXHJcbiAqIGJpbGxib2FyZC5qcywgSmF2YVNjcmlwdCBjaGFydCBsaWJyYXJ5XHJcbiAqIGh0dHA6Ly9uYXZlci5naXRodWIuaW8vYmlsbGJvYXJkLmpzL1xyXG4gKiBcclxuICogQHZlcnNpb24gMS4xLjFcclxuICovXHJcbi8qLS0gQ2hhcnQgLS0qL1xyXG4uYmIgc3ZnIHtcclxuICBmb250OiAxMHB4IHNhbnMtc2VyaWY7XHJcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxyXG5cclxuLmJiIHBhdGgsIC5iYiBsaW5lIHtcclxuICBmaWxsOiBub25lO1xyXG4gIHN0cm9rZTogIzAwMDsgfVxyXG5cclxuLmJiIHRleHQge1xyXG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcclxuICB1c2VyLXNlbGVjdDogbm9uZTsgfVxyXG5cclxuLmJiLWxlZ2VuZC1pdGVtLXRpbGUsXHJcbi5iYi14Z3JpZC1mb2N1cyxcclxuLmJiLXlncmlkLFxyXG4uYmItZXZlbnQtcmVjdCxcclxuLmJiLWJhcnMgcGF0aCB7XHJcbiAgc2hhcGUtcmVuZGVyaW5nOiBjcmlzcEVkZ2VzOyB9XHJcblxyXG4uYmItY2hhcnQtYXJjIHBhdGgge1xyXG4gIHN0cm9rZTogI2ZmZjsgfVxyXG5cclxuLmJiLWNoYXJ0LWFyYyB0ZXh0IHtcclxuICBmaWxsOiAjZmZmO1xyXG4gIGZvbnQtc2l6ZTogMTNweDsgfVxyXG5cclxuLyotLSBBeGlzIC0tKi9cclxuLyotLSBHcmlkIC0tKi9cclxuLmJiLWdyaWQgbGluZSB7XHJcbiAgc3Ryb2tlOiAjYWFhOyB9XHJcblxyXG4uYmItZ3JpZCB0ZXh0IHtcclxuICBmaWxsOiAjYWFhOyB9XHJcblxyXG4uYmIteGdyaWQsIC5iYi15Z3JpZCB7XHJcbiAgc3Ryb2tlLWRhc2hhcnJheTogMyAzOyB9XHJcblxyXG4vKi0tIFRleHQgb24gQ2hhcnQgLS0qL1xyXG4uYmItdGV4dC5iYi1lbXB0eSB7XHJcbiAgZmlsbDogIzgwODA4MDtcclxuICBmb250LXNpemU6IDJlbTsgfVxyXG5cclxuLyotLSBMaW5lIC0tKi9cclxuLmJiLWxpbmUge1xyXG4gIHN0cm9rZS13aWR0aDogMXB4OyB9XHJcblxyXG4vKi0tIFBvaW50IC0tKi9cclxuLmJiLWNpcmNsZS5fZXhwYW5kZWRfIHtcclxuICBzdHJva2Utd2lkdGg6IDFweDtcclxuICBzdHJva2U6IHdoaXRlOyB9XHJcblxyXG4uYmItc2VsZWN0ZWQtY2lyY2xlIHtcclxuICBmaWxsOiB3aGl0ZTtcclxuICBzdHJva2Utd2lkdGg6IDJweDsgfVxyXG5cclxuLyotLSBCYXIgLS0qL1xyXG4uYmItYmFyIHtcclxuICBzdHJva2Utd2lkdGg6IDA7IH1cclxuICAuYmItYmFyLl9leHBhbmRlZF8ge1xyXG4gICAgZmlsbC1vcGFjaXR5OiAwLjc1OyB9XHJcblxyXG4vKi0tIEZvY3VzIC0tKi9cclxuLmJiLXRhcmdldC5iYi1mb2N1c2VkIHtcclxuICBvcGFjaXR5OiAxOyB9XHJcblxyXG4uYmItdGFyZ2V0LmJiLWZvY3VzZWQgcGF0aC5iYi1saW5lLCAuYmItdGFyZ2V0LmJiLWZvY3VzZWQgcGF0aC5iYi1zdGVwIHtcclxuICBzdHJva2Utd2lkdGg6IDJweDsgfVxyXG5cclxuLmJiLXRhcmdldC5iYi1kZWZvY3VzZWQge1xyXG4gIG9wYWNpdHk6IDAuMyAhaW1wb3J0YW50OyB9XHJcblxyXG4vKi0tIFJlZ2lvbiAtLSovXHJcbi5iYi1yZWdpb24ge1xyXG4gIGZpbGw6IHN0ZWVsYmx1ZTtcclxuICBmaWxsLW9wYWNpdHk6IC4xOyB9XHJcblxyXG4vKi0tIEJydXNoIC0tKi9cclxuLmJiLWJydXNoIC5leHRlbnQge1xyXG4gIGZpbGwtb3BhY2l0eTogLjE7IH1cclxuXHJcbi8qLS0gU2VsZWN0IC0gRHJhZyAtLSovXHJcbi8qLS0gTGVnZW5kIC0tKi9cclxuLmJiLWxlZ2VuZC1pdGVtIHtcclxuICBmb250LXNpemU6IDEycHg7IH1cclxuXHJcbi5iYi1sZWdlbmQtaXRlbS1oaWRkZW4ge1xyXG4gIG9wYWNpdHk6IDAuMTU7IH1cclxuXHJcbi5iYi1sZWdlbmQtYmFja2dyb3VuZCB7XHJcbiAgb3BhY2l0eTogMC43NTtcclxuICBmaWxsOiB3aGl0ZTtcclxuICBzdHJva2U6IGxpZ2h0Z3JheTtcclxuICBzdHJva2Utd2lkdGg6IDE7IH1cclxuXHJcbi8qLS0gVGl0bGUgLS0qL1xyXG4uYmItdGl0bGUge1xyXG4gIGZvbnQ6IDE0cHggc2Fucy1zZXJpZjsgfVxyXG5cclxuLyotLSBUb29sdGlwIC0tKi9cclxuLmJiLXRvb2x0aXAtY29udGFpbmVyIHtcclxuICB6LWluZGV4OiAxMDsgfVxyXG5cclxuLmJiLXRvb2x0aXAge1xyXG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICBlbXB0eS1jZWxsczogc2hvdztcclxuICBvcGFjaXR5OiAwLjk7XHJcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiA3cHggN3B4IDEycHggLTlweCAjNzc3Nzc3O1xyXG4gIC1tb3otYm94LXNoYWRvdzogN3B4IDdweCAxMnB4IC05cHggIzc3Nzc3NztcclxuICBib3gtc2hhZG93OiA3cHggN3B4IDEycHggLTlweCAjNzc3Nzc3OyB9XHJcbiAgLmJiLXRvb2x0aXAgdHIge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI0NDQzsgfVxyXG4gIC5iYi10b29sdGlwIHRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNhYWE7XHJcbiAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICBwYWRkaW5nOiAycHggNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIGNvbG9yOiAjRkZGOyB9XHJcbiAgLmJiLXRvb2x0aXAgdGQge1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgcGFkZGluZzogM3B4IDZweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBib3JkZXItbGVmdDogMXB4IGRvdHRlZCAjOTk5OyB9XHJcbiAgICAuYmItdG9vbHRpcCB0ZCA+IHNwYW4ge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogNnB4OyB9XHJcbiAgICAuYmItdG9vbHRpcCB0ZC52YWx1ZSB7XHJcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XHJcblxyXG4vKi0tIEFyZWEgLS0qL1xyXG4uYmItYXJlYSB7XHJcbiAgc3Ryb2tlLXdpZHRoOiAwO1xyXG4gIG9wYWNpdHk6IDAuMjsgfVxyXG5cclxuLyotLSBBcmMgLS0qL1xyXG4uYmItY2hhcnQtYXJjcy10aXRsZSB7XHJcbiAgZG9taW5hbnQtYmFzZWxpbmU6IG1pZGRsZTtcclxuICBmb250LXNpemU6IDEuM2VtOyB9XHJcblxyXG4uYmItY2hhcnQtYXJjcyAuYmItY2hhcnQtYXJjcy1iYWNrZ3JvdW5kIHtcclxuICBmaWxsOiAjZTBlMGUwO1xyXG4gIHN0cm9rZTogbm9uZTsgfVxyXG5cclxuLmJiLWNoYXJ0LWFyY3MgLmJiLWNoYXJ0LWFyY3MtZ2F1Z2UtdW5pdCB7XHJcbiAgZmlsbDogIzAwMDtcclxuICBmb250LXNpemU6IDE2cHg7IH1cclxuXHJcbi5iYi1jaGFydC1hcmNzIC5iYi1jaGFydC1hcmNzLWdhdWdlLW1heCB7XHJcbiAgZmlsbDogIzc3NzsgfVxyXG5cclxuLmJiLWNoYXJ0LWFyY3MgLmJiLWNoYXJ0LWFyY3MtZ2F1Z2UtbWluIHtcclxuICBmaWxsOiAjNzc3OyB9XHJcblxyXG4uYmItY2hhcnQtYXJjIC5iYi1nYXVnZS12YWx1ZSB7XHJcbiAgZmlsbDogIzAwMDsgfVxyXG5cclxuLyojIHNvdXJjZU1hcHBpbmdVUkw9YmlsbGJvYXJkLmNzcy5tYXAqLyIsImJvZHkge1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtZmFtaWx5OiAkZmY7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbn1cblxudWwge1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5AbWl4aW4gaGVhZGluZzEge1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG4gIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgbGluZS1oZWlnaHQ6ICgzNi8zMik7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSg2NCk7XG4gICAgbGluZS1oZWlnaHQ6ICg3Mi82NCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oNzIpO1xuICAgIGxpbmUtaGVpZ2h0OiAoODAvNzIpO1xuICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nMiB7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgZm9udC1zaXplOiByZW0oMjQpO1xuICBsaW5lLWhlaWdodDogKDM2LzI0KTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICBsaW5lLWhlaWdodDogKDYwLzMyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSg0OCk7XG4gICAgbGluZS1oZWlnaHQ6ICg2MC80OCk7XG4gIH1cbn1cblxuQG1peGluIGhlYWRpbmczIHtcbiAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gIGZvbnQtc2l6ZTogcmVtKDExKTtcbiAgbGluZS1oZWlnaHQ6ICgxNC8xMSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6ICgxOS8xNik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMjIpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMjcvMjIpO1xuICB9XG59XG5cbkBtaXhpbiBoZWFkaW5nNCB7XG4gIGZvbnQtd2VpZ2h0OiAkZnctYm9sZDtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBsaW5lLWhlaWdodDogKDE4LzEyKTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtd2VpZ2h0OiAkZnctbWVkaXVtO1xuICAgIGZvbnQtc2l6ZTogcmVtKDEzKTtcbiAgICBsaW5lLWhlaWdodDogKDI0LzEzKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgyMik7XG4gICAgbGluZS1oZWlnaHQ6ICgzMC8yMik7XG4gIH1cbn1cblxuQG1peGluIGhlYWRpbmc1IHtcbiAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgbGluZS1oZWlnaHQ6ICgyNC8xNCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgICBsaW5lLWhlaWdodDogKDMwLzIwKTtcbiAgfVxufVxuXG5AbWl4aW4gaGVhZGluZzYge1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgbGluZS1oZWlnaHQ6ICgxNS8xMik7XG59XG5cbkBtaXhpbiBib2R5LXRleHQge1xuICBmb250LXdlaWdodDogJGZ3LWxpZ2h0O1xuICBmb250LXNpemU6IHJlbSgxMik7XG4gIGxpbmUtaGVpZ2h0OiAoMTgvMTApO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTQpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMjQvMTQpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICBsaW5lLWhlaWdodDogKDI0LzE2KTtcbiAgfVxufVxuXG5AbWl4aW4gdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiIsImgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBtYXJnaW46IDA7XG59XG5cbi8vIGgxIHtcbi8vICAgbWFyZ2luLWxlZnQ6IC0wLjA3NWVtO1xuLy8gfVxuLy9cbi8vIGgyIHtcbi8vICAgbWFyZ2luLWxlZnQ6IC0wLjA3ZW07XG4vLyB9XG4iLCIuYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogcmVtKDQwKTtcbiAgcGFkZGluZzogMCBlbSgxNCwgMTIpO1xuICBmb250LWZhbWlseTogJGZmO1xuICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xuICBmb250LXNpemU6IHJlbSgxMik7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgYm9yZGVyLXJhZGl1czogcmVtKDEwMCk7XG4gIGJvcmRlcjogbm9uZTtcblxuICBzdmcge1xuICAgIHdpZHRoOiAxLjJlbTtcbiAgICBtYXJnaW4tbGVmdDogcmVtKDkpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgICAvLyBsaW5lLWhlaWdodDogKDE4LzE0KTtcbiAgICBwYWRkaW5nOiAwIGVtKDIwLCAxNCk7XG4gICAgaGVpZ2h0OiByZW0oNTQpO1xuXG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oMTIpO1xuICAgIH1cbiAgfVxufVxuXG4uYnRuLS1iLXkge1xuICBzdmcge1xuICAgIGZpbGw6ICR5ZWxsb3c7XG4gIH1cbn1cblxuLmJ0bi0tYi13IHtcbiAgc3ZnIHtcbiAgICBmaWxsOiAkd2hpdGU7XG4gIH1cbn1cblxuLmJ0bi0tdy1iIHtcbiAgY29sb3I6ICRibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgc3ZnIHtcbiAgICBmaWxsOiAkYmxhY2s7XG4gIH1cbn1cblxuLmJ0bi0tbGF5ZXItc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRibGFjaywgNDAlKTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGJvcmRlci1jb2xvcjogJHllbGxvdztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXItbGVmdDogMC43NWVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwLjc1ZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIFx0ICBib3JkZXItdG9wOiAwLjc1ZW0gc29saWQgJHllbGxvdztcbiAgICAgIGJvdHRvbTogLTAuNzVlbTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cbn1cblxuLmJ0bi0tY2hldnJvbiB7XG4gIHN2ZyB7XG4gICAgd2lkdGg6IDAuNWVtO1xuICB9XG59XG5cbi5idG4tLWRvdWJsZSB7XG4gIGJvcmRlcjogcmVtKDIpIHNvbGlkICR3aGl0ZTtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuYnRuIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVtKDI1LzIpO1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogZW0oMjUvMik7XG4gICAgfVxuXG4gICAgcGF0aCB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcyBlYXNlO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICBwYXRoLFxuICAgICAgcmVjdCB7XG4gICAgICAgIGZpbGw6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzdmcge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5pbmZvLWJ0biB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuIiwiQG1peGluIGZsb3coJHJhdGlvOiAxLjI1KSB7XG4gID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6ICRyYXRpbyAqIDFlbTtcbiAgfVxufVxuXG5AbWl4aW4geC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG5AbWl4aW4geS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbkBtaXhpbiB4eS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuIiwiLmdyYWRpZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkZ3JhZC1ncmVlbiwgJGdyYWQtbWlkIDY2JSwgJGdyYWQtYmx1ZSk7XG59XG5cbi5ncmFkaWVudC0tc21hbGwge1xuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gIH1cbn1cblxuLmdyYWRpZW50LS1sYXJnZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLWRvd24pIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMTEuMzczNzA3NTMzMiU7XG4gICAgYmFja2dyb3VuZDoge1xuICAgICAgaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3RyaWFuZ2xlLnN2ZycpO1xuICAgICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBwb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICAgICAgc2l6ZTogY29udGFpbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICB3aWR0aDogNzAlO1xuICAgIH1cbiAgfVxufVxuXG4uZ3JhZGllbnRfX3N5bWJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMCU7XG4gIGxlZnQ6IDI0JTtcbiAgd2lkdGg6IDgwJTtcbiAgbWF4LXdpZHRoOiByZW0oNTQwKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IHJlbSgyKSBzb2xpZCByZ2JhKCRkYXJrLWJsdWUsIDAuMSk7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEzJTtcbiAgICByaWdodDogMTMlO1xuICAgIGJvdHRvbTogMTMlO1xuICAgIGxlZnQ6IDEzJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiByZW0oMikgc29saWQgcmdiYSgkZGFyay1ibHVlLCAwLjEpO1xuICB9XG59XG4iLCIubmF2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDA7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5uYXZfX2xvZ29zIHtcbiAgd2lkdGg6IHJlbSgyMTApO1xuICBiYWNrZ3JvdW5kOiB7XG4gICAgaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2hlYWRlci1sb2dvcy5zdmcnKTtcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwb3NpdGlvbjogbGVmdCB0b3A7XG4gICAgc2l6ZTogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIG1hcmdpbi10b3A6IHJlbSgxNSk7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDE1KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDEwMCUgKyAje3JlbSgxNSl9KTtcbiAgICByaWdodDogJGd0ci1oYWxmO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IHRvcDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgd2lkdGg6IHJlbSgyNDApO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogcGVyY2VudGFnZSg2NC8yNjUpO1xuICB9XG59XG5cbi5uYXZfX21haW4ge1xuICBAaW5jbHVkZSBmbGV4LWdyaWQoJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4sICRhbGlnbjogY2VudGVyLCAkZ3V0dGVyczogZmFsc2UpO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgcGFkZGluZy10b3A6IHJlbSgyNCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oMTkpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDM1KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDIwKTtcbiAgfVxufVxuXG4ubmF2X19zaXRlLW5hbWUge1xuICBAaW5jbHVkZSB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBsaW5lLWhlaWdodDogKDE1LzEyKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHJlbSgxLjIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gICAgbGluZS1oZWlnaHQ6ICgyNC8yMCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbSgyKTtcbiAgfVxufVxuXG5cblxuLm1vYmlsZS1tZW51LWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgbGluZS1oZWlnaHQ6IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi5zaXRlLXVybCwgLm5hdl9faHIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5uYXZfX2hyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IHJlbSgyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBib3JkZXI6IG5vbmU7XG59XG4iLCIubWVudSB7XG4gIHBhZGRpbmc6IDA7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi1kb3duKSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZCgkZGlyZWN0aW9uOiBjb2x1bW4sICRndXR0ZXJzOiBmYWxzZSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5cbi5tZW51X19jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcblxuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZy10b3A6IHJlbSg4OCk7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSxcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5IDBzIDAuMnM7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogcmVtKDE1KTtcbiAgICAgIGJvdHRvbTogcmVtKDEwMCk7XG4gICAgICB3aWR0aDogcmVtKDE5Nyk7XG4gICAgICBoZWlnaHQ6IHJlbSgyMDYpO1xuICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICBpbWFnZTogdXJsKCcuLi9pbWFnZXMvbWVudS1zeW1ib2wuc3ZnJyk7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWVudV9faXRlbSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi1kb3duKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDIyKTtcbiAgICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgICBmb250LXNpemU6IHJlbSgxNik7XG4gICAgbGluZS1oZWlnaHQ6ICgxOS8xNik7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbSgxLjcxKTtcblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBAaW5jbHVkZSB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIGxpbmUtaGVpZ2h0OiAoMTUvMTIpO1xuICAgIGxldHRlci1zcGFjaW5nOiByZW0oMS43KTtcbiAgfVxufVxuXG4ubWVudV9faXRlbS0tbW9iLW9ubHkge1xuICBkaXNwbGF5OiBub25lO1xuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubWVudV9fbGluayxcbi5zaXRlLXVybCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICR3aGl0ZTtcblxuICAuaXMtYWN0aXZlICYge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLnNpdGUtdXJsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuXG4ubWVudV9fbGluayB7XG4gIC5pcy1ob21lICYtLWhvbWUsXG4gIC5pcy1hYm91dCAmLS1hYm91dCxcbiAgLmlzLXJlY29tbWVuZGF0aW9ucyAmLS1yZWNvbW1lbmRhdGlvbnMge1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICB9XG5cbiAgJi0tYWJvdXQsXG4gICYtLXJlY29tbWVuZGF0aW9ucyB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcbiAgICB9XG4gIH1cbn1cblxuLm1lbnVfX2xpbmstc2VwYXJhdG9yIHtcbiAgd2lkdGg6IHJlbSgyKTtcbiAgaGVpZ2h0OiByZW0oMTgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIG9wYWNpdHk6IDAuNDtcblxuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5tZW51X19sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMWVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXRvLWxhcmdlLXNjcmVlbikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLm1lbnVfX3NoYXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gIH1cbn1cblxuLm1lbnVfX2hyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tdXApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIuc2hhcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tdXApIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtMTApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHJlbSgtMTUpO1xuICB9XG59XG5cbi5zaGFyZV9fbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGhlaWdodDogcmVtKDMwKTtcbiAgcGFkZGluZy1sZWZ0OiByZW0oMTUpO1xuICBwYWRkaW5nLXJpZ2h0OiByZW0oMTUpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHJlbSgxMCk7XG4gICAgcGFkZGluZy1yaWdodDogcmVtKDEwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0oMTUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IHJlbSgxNSk7XG4gIH1cbn1cbiIsIi5zZWFyY2hfX2NvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gIHBhZGRpbmctdG9wOiByZW0oMjQpO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtKDI0KTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMzUpO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oNTApO1xuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5cbi5zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1ib3R0b206IHJlbSgyKSBzb2xpZCAkYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG59XG5cbi5zZWFyY2hfX2lucHV0IHtcbiAgZmxleDogMTtcbiAgcGFkZGluZy1ib3R0b206IDAuM2VtO1xuICBmb250LWZhbWlseTogJGZmO1xuICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgZm9udC1zaXplOiByZW0oMTEpO1xuICBsaW5lLWhlaWdodDogKDE5LzE2KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHJlbSgyKTtcbiAgQGluY2x1ZGUgdXBwZXJjYXNlO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDYwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgICBsaW5lLWhlaWdodDogKDM5LzMyKTtcbiAgICBsZXR0ZXItc3BhY2luZzogcmVtKDQpO1xuICB9XG5cbiAgJltkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC1mYW1pbHk6ICRmZjtcbiAgICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLnNlYXJjaF9fc3VibWl0IHtcbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IHJlbSg0KTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogMC43ZW07XG5cbiAgICBzdmcge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IHJlbSgxMCk7XG4gIH1cbn1cblxuLnNlYXJjaF9fZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogcmVkO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTEuM3JlbTtcbiAgZm9udC1zaXplOiByZW0oMTEpO1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IHJlbSgxMCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxZW07XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNlYXJjaF9fdGFnbGluZSB7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIEBpbmNsdWRlIGhlYWRpbmc2O1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbiIsIi5rZXktY29sIHtcbiAgQGluY2x1ZGUgZmxvdztcbn1cblxuLmtleS1saXN0IHtcbiAgQGluY2x1ZGUgZmxvdygwLjUpO1xufVxuXG4ua2V5LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gICY6bnRoLW9mLXR5cGUoMSkge1xuICAgIC5rZXktY29sb3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstb3JhbmdlXG4gICAgfVxuICB9XG4gICY6bnRoLW9mLXR5cGUoMikge1xuICAgIC5rZXktY29sb3Ige1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZVxuICAgIH1cbiAgfVxuICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAua2V5LWNvbG9yIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1vcmFuZ2VcbiAgICB9XG4gIH1cbn1cblxuLmtleS1pdGVtLWhlYWRpbmcge1xuICBjb2xvcjogJGdyZXk7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBsaW5lLWhlaWdodDogKDE4LzEyKTtcbiAgLy8gZGlzcGxheTogZmxleDtcblxuICBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ua2V5LWNvbG9yIHtcbiAgd2lkdGg6IHJlbSgxOCk7XG4gIGhlaWdodDogcmVtKDE4KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcblxuICAmOm50aC1vZi10eXBlKDEpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDg1RDA5O1xuICB9XG4gICY6bnRoLW9mLXR5cGUoMikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFMkE3MjM7XG4gIH1cbiAgJjpudGgtb2YtdHlwZSgzKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZFRTMzRjtcbiAgfVxufVxuIiwiLmZpbmRpbmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAkc3AtcztcbiAgcGFkZGluZy1ib3R0b206ICRzcC1zO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg4NSk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg4NSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxNTApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUwKTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgIGJhY2tncm91bmQ6IHtcbiAgICAgICAgaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL3RyaWFuZ2xlLXNtYWxsLnN2ZycpO1xuICAgICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgICAgICAgc2l6ZTogY29udGFpbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLS1ibGFjayB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gIH1cblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIHBhZGRpbmctdG9wOiAkc3AtcztcblxuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgICBwYWRkaW5nLXRvcDogcmVtKDYwKTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmZpbmRpbmdfX2dyaWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZsZXgtZ3JpZCgkZGlyZWN0aW9uOiBjb2x1bW4pO1xuICB6LWluZGV4OiAxO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAmLS1yZXZlcnNlIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cbn1cblxuLmZpbmRpbmdfX2NvbCB7XG4gIEBpbmNsdWRlIGZsZXgtc3BhbigxMik7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuICAgIG1heC13aWR0aDogcmVtKDU0MCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG5cbiAgJi0tY2hhcnQge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig3KTtcbiAgICB9XG4gIH1cblxuICAmLS10ZXh0IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LXNwYW4oNSk7XG4gICAgfVxuICB9XG59XG5cbi5maW5kaW5nX19ncmFkaWVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkZ3JhZC1ncmVlbiwgJGdyYWQtYmx1ZSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogcmVtKC0xKTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICBpbWFnZTogdXJsKCcuLi9pbWFnZXMvdHJpYW5nbGUuc3ZnJyk7XG4gICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBvc2l0aW9uOiByaWdodCBib3R0b207XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogcmVtKDg1MCk7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiByZW0oODA4KTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IHJlbSg3NDYpO1xuICAgIH1cbiAgfVxuXG4gICYtLTIge1xuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogcmVtKDEwMTApO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogcmVtKDkwOCk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiByZW0oODQyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZpbmRpbmdfX21haW4tdGl0bGUge1xuICBAaW5jbHVkZSBoZWFkaW5nMjtcbiAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gIGNvbG9yOiAkYXF1YTtcbn1cblxuLmZpbmRpbmdfX21haW4ge1xuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBwYWRkaW5nOiByZW0oNDApIHJlbSg0MCkgcmVtKDQwKSAwO1xuICAgIHBhZGRpbmc6IHJlbSg0MCk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7cmVtKDM2KX0pO1xuXG4gICAgLmZpbmRpbmctLWJsYWNrICYge1xuICAgICAgLy8gd2lkdGg6IDEwMCU7XG4gICAgICAvLyBwYWRkaW5nLWxlZnQ6IHJlbSg0MCk7XG4gICAgfVxuICB9XG5cbiAgLmZpbmRpbmctLXdoaXRlICYgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7IH1cblxuICAmOmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIC5maW5kaW5nLS13aGl0ZSAmIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBib3gtc2hhZG93OiByZW0oMzApIHJlbSgzMCkgcmVtKDUwKSAwIHJnYmEoIzAwMDE2QiwgMC4wNik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjphZnRlciB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBjYWxjKDEwMCUgKyAje3JlbSg2KX0pO1xuICAgICAgbGVmdDogY2FsYygxMDAlICsgI3tyZW0oNil9KTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IHJlbSgxMik7XG4gICAgICBoZWlnaHQ6IHJlbSgxMik7XG4gICAgICBib3JkZXItdG9wOiByZW0oMikgc29saWQgJGJsYWNrO1xuICAgICAgYm9yZGVyLWxlZnQ6IHJlbSgyKSBzb2xpZCAkYmxhY2s7XG5cbiAgICAgIC5maW5kaW5nLS1ibGFjayAmIHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IHJlbSg0KTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJvcmRlci1yaWdodDogcmVtKDIpIHNvbGlkICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5maW5kaW5nX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuICBsaW5lLWhlaWdodDogKDM2LzI0KTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSg0NCk7XG4gIH1cblxuICAuZmluZGluZy0td2hpdGUgJiB7IGNvbG9yOiAkYmxhY2s7IH1cbiAgLmZpbmRpbmctLWJsYWNrICYgeyBjb2xvcjogJHdoaXRlOyB9XG59XG5cbi5maW5kaW5nX19zdHJvbmcge1xuICBjb2xvcjogJHllbGxvdztcbn1cblxuLmZpbmRpbmdfX3N1YnRpdGxlIHtcbiAgLy8gZm9udC1zaXplOiByZW0oMTgpO1xuICAvLyBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgLy8gbGluZS1oZWlnaHQ6ICgyNC8yMCk7XG4gIC8vXG4gIC8vIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gIC8vICAgZm9udC1zaXplOiByZW0oMjApO1xuICAvLyB9XG4gIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gIGxpbmUtaGVpZ2h0OiAoNDAvMzApO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMzApO1xuICB9XG59XG5cbi5maW5kaW5nX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICBAaW5jbHVkZSBmbG93KDEpO1xuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgICBsaW5lLWhlaWdodDogKDI0LzE2KTtcbiAgICBjb2xvcjogJGdyZXk7XG5cbiAgICAuZmluZGluZy0tYmxhY2sgJiB7IGNvbG9yOiAkd2hpdGU7IH1cbiAgfVxufVxuXG4uZmluZGluZ19fbGFiZWwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTAwJTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiByZW0oMik7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiByZW0oMTIpO1xuICAgIGhlaWdodDogcmVtKDEyKTtcbiAgICBib3JkZXItYm90dG9tOiByZW0oMikgc29saWQgJGJsYWNrO1xuICAgIGJvcmRlci1yaWdodDogcmVtKDIpIHNvbGlkICRibGFjaztcbiAgfVxuXG4gICYtLXJpZ2h0IHtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAje3JlbSg0KX0pO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDEwMCU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIHBhZGRpbmctbGVmdDogMy42ZW07XG4gIH1cblxuICAmLS1sZWZ0IHtcbiAgICByaWdodDogMTAwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKSB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDMuNmVtO1xuICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIGJvcmRlci1sZWZ0OiByZW0oMikgc29saWQgJHdoaXRlO1xuICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4uZmluZGluZ19fc3ltYm9sIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDoge1xuICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgIHBvc2l0aW9uOiBjZW50ZXI7XG4gICAgc2l6ZTogY29udGFpbjtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLWRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJi0tMSB7XG4gICAgcmlnaHQ6IDJ2dztcbiAgICBib3R0b206IDF2dztcbiAgICB3aWR0aDogcmVtKDI2MSk7XG4gICAgaGVpZ2h0OiByZW0oMjY5KTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy9maW5kaW5nLXN5bWJvbC0xLnN2ZycpO1xuICB9XG5cbiAgJi0tMiB7XG4gICAgbGVmdDogcmVtKC0xOTApO1xuICAgIHRvcDogcmVtKC05MCk7XG4gICAgd2lkdGg6IHJlbSgyNDQpO1xuICAgIGhlaWdodDogcmVtKDE4Mik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvZmluZGluZy1zeW1ib2wtMi5zdmcnKTtcbiAgfVxuXG4gICYtLTMge1xuICAgIHJpZ2h0OiAydnc7XG4gICAgYm90dG9tOiAxdnc7XG4gICAgd2lkdGg6IHJlbSgzMjkpO1xuICAgIGhlaWdodDogcmVtKDE4Nik7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvZmluZGluZy1zeW1ib2wtMy5zdmcnKTtcbiAgfVxuXG4gICYtLTQge1xuICAgIGxlZnQ6IHJlbSgtMjU2KTtcbiAgICB0b3A6IHJlbSgtNzkpO1xuICAgIHdpZHRoOiByZW0oMjM5KTtcbiAgICBoZWlnaHQ6IHJlbSgyMjMpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ZpbmRpbmctc3ltYm9sLTQuc3ZnJyk7XG4gIH1cblxuICAmLS01IHtcbiAgICByaWdodDogM3Z3O1xuICAgIGJvdHRvbTogMXZ3O1xuICAgIHdpZHRoOiByZW0oMjU1KTtcbiAgICBoZWlnaHQ6IHJlbSgyNjEpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ZpbmRpbmctc3ltYm9sLTUuc3ZnJyk7XG4gIH1cbn1cblxuLmZpbmRpbmctaW5mb2dyYXBoaWMge1xuICB3aWR0aDogOTAlO1xuICBtYXgtd2lkdGg6IHJlbSg3MjQpO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB7XG4gICAgaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2ZpbmRpbmctNS5zdmcnKTtcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwb3NpdGlvbjogY2VudGVyO1xuICAgIHNpemU6IGNvbnRhaW47XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDM4MC83MjQpO1xuICB9XG59XG4iLCIubGVnZW5kIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgJi0tcm93IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4ubGVnZW5kX19pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuICAgIG1hcmdpbjogcmVtKDYpO1xuICB9XG5cbiAgKyAjeyZ9IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiByZW0oMTIpO1xuICAgIH1cbiAgfVxuXG4gIC5sZWdlbmQtLXJvdyAmIHtcbiAgICBtYXJnaW46IHJlbSg2KTtcbiAgfVxufVxuXG4ubGVnZW5kX19jb2xvciB7XG4gIHdpZHRoOiByZW0oMTgpO1xuICBoZWlnaHQ6IHJlbSgxOCk7XG4gIG1hcmdpbi1yaWdodDogcmVtKDEwKTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcblxuICAmLS0xIHsgYmFja2dyb3VuZC1jb2xvcjogI0Y4RTY2ODsgfVxuICAmLS0yIHsgYmFja2dyb3VuZC1jb2xvcjogIzAwQ0RDQTsgfVxuICAmLS0zIHsgYmFja2dyb3VuZC1jb2xvcjogI0REREI1RDsgfVxuICAmLS00IHsgYmFja2dyb3VuZC1jb2xvcjogI0JFRDg2RDsgfVxuICAmLS01IHsgYmFja2dyb3VuZC1jb2xvcjogI0Y3REExRjsgfVxuICAmLS02IHsgYmFja2dyb3VuZC1jb2xvcjogI0Y1RTUyRDsgfVxufVxuXG4ubGVnZW5kX190ZXh0IHtcbiAgZm9udC1zaXplOiByZW0oMTIpO1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAkZ3JleTtcblxuICAubGVnZW5kLS1yb3cgJiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cbiIsIi50ZXN0aW1vbmlhbHMge1xuICBwYWRkaW5nLXRvcDogcmVtKDUwKTtcbiAgcGFkZGluZy1ib3R0b206IHJlbSgyNSk7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg3MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgzNSk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxMDApO1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oNTApO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFsc19fdGl0bGUge1xuICBmb250LXNpemU6IHJlbSgyNCk7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgbGluZS1oZWlnaHQ6ICgzNi8yNCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgzMik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oNDgpO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbHNfX3RleHQge1xuICBtYXJnaW4tdG9wOiAxZW07XG4gIG1heC13aWR0aDogNTZlbTtcbn1cblxuLnRlc3RpbW9uaWFsc19fZ3JpZCB7XG4gIEBpbmNsdWRlIGZsZXgtZ3JpZCgkZGlyZWN0aW9uOiBjb2x1bW4sICRqdXN0aWZ5OiBzcGFjZS1iZXR3ZWVuLCAkYWxpZ246IGNlbnRlcik7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMzApO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDUwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxufVxuIiwiLnRlc3RpbW9uaWFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IHJlbSgzNjApO1xuICBAaW5jbHVkZSBmbGV4LXNwYW4oMTIpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgQGluY2x1ZGUgZmxleC1zcGFuKDYpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig0KTtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBAaW5jbHVkZSBmbGV4LXNwYW4oMyk7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFsX190aHVtYiB7XG4gIHdpZHRoOiA3MCU7XG4gIG1heC13aWR0aDogcmVtKDMyMCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDoge1xuICAgIGNvbG9yOiAkZ3JleTtcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwb3NpdGlvbjogY2VudGVyO1xuICAgIHNpemU6IGNvdmVyO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IHJlbSgyNjApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIG1heC13aWR0aDogcmVtKDMyMCk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICB9XG59XG5cbi50ZXN0aW1vbmlhbF9fdGl0bGUge1xuICBtYXJnaW4tdG9wOiAxLjhlbTtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgyMCk7XG4gIH1cbn1cblxuLnRlc3RpbW9uaWFsX19uYW1lIHtcbiAgLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgxKSAmIHsgY29sb3I6ICRhcXVhOyB9XG4gIC50ZXN0aW1vbmlhbDpudGgtY2hpbGQoMikgJiB7IGNvbG9yOiAkYmx1ZTI7IH1cbiAgLnRlc3RpbW9uaWFsOm50aC1jaGlsZCgzKSAmIHsgY29sb3I6ICR5ZWxsb3cyOyB9XG4gIC50ZXN0aW1vbmlhbDpudGgtY2hpbGQoNCkgJiB7IGNvbG9yOiAkb3JhbmdlOyB9XG59XG5cbi50ZXN0aW1vbmlhbF9fY29tcGFueSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGVzdGltb25pYWxfX3F1b3RlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFlbTtcbn1cbiIsIi5hYm91dC1oZXJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogcmVtKDE0MCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oODApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkZ3JhZC1ncmVlbiwgIzEzOUVCRSk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEzMCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxNzApO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTAwKTtcbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiByZW0oLTEpO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogcmVtKC0xKTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHtcbiAgICAgIGltYWdlOiB1cmwoJy4uL2ltYWdlcy90cmlhbmdsZS5zdmcnKTtcbiAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgcG9zaXRpb246IHJpZ2h0IGJvdHRvbTtcbiAgICAgIHNpemU6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWFnZXMvYWJvdXQtaGVyby1zeW1ib2wtc21hbGwuc3ZnJyk7XG5cbiAgICAgIC5pcy1jb250ZW50ICYge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltYWdlcy90cmlhbmdsZS5zdmcnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWhlcm9fX21haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hYm91dC1oZXJvX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogcmVtKDIwKTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMzIpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDQ4KTtcbiAgfVxufVxuXG4uYWJvdXQtaGVyb19fdGV4dCB7XG4gIG1heC13aWR0aDogMzhlbTtcbiAgbWFyZ2luLXRvcDogcmVtKDEwKTtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xuICBsaW5lLWhlaWdodDogKDI0LzE2KTtcblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTYpO1xuICB9XG59XG4iLCIuYWJvdXRfX3RpdGxlIHtcbiAgQGluY2x1ZGUgaGVhZGluZzI7XG5cbiAgJi0tYmx1ZSB7XG4gICAgY29sb3I6ICRibHVlMjtcbiAgfVxuXG4gICYtLWFxdWEge1xuICAgIGNvbG9yOiAkYXF1YTtcbiAgfVxufVxuXG4uYWJvdXQtYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiByZW0oNDApO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtKDQwKTtcblxuICAuYWJvdXRfX2hlYWRpbmcgKyAmIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDIwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg1MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg1MCk7XG5cbiAgICAuYWJvdXRfX2hlYWRpbmcgKyAmIHtcbiAgICAgIHBhZGRpbmctdG9wOiByZW0oMjUpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDYwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDYwKTtcblxuICAgIC5hYm91dF9faGVhZGluZyArICYge1xuICAgICAgcGFkZGluZy10b3A6IHJlbSgzMCk7XG4gICAgfVxuICB9XG5cbiAgKyAjeyZ9LFxuICArIC5hYm91dF9faGVhZGluZyB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRndHJ9KTtcbiAgICAgIGhlaWdodDogcmVtKDIpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhbGUtYmx1ZTtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgICAgbWF4LXdpZHRoOiAkbS1tYXgtd2lkdGggLSAkZ3RyO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICAgIG1heC13aWR0aDogJGwtbWF4LXdpZHRoIC0gJGd0cjtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgICBtYXgtd2lkdGg6ICR4bC1tYXgtd2lkdGggLSAkZ3RyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiByZW0oLTEpO1xuICAgICAgYm90dG9tOiByZW0oLTEpO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiByZW0oNTAwKTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDc5OS83MjIpO1xuICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICBpbWFnZTogdXJsKCcuLi9pbWFnZXMvdHJpYW5nbGUtc21hbGwuc3ZnJyk7XG4gICAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmlnaHQgYm90dG9tO1xuICAgICAgICBzaXplOiBjb250YWluO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICAgIG1heC13aWR0aDogcmVtKDcyMik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLmFib3V0LWJsb2NrX19ncmlkIHtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIEBpbmNsdWRlIGZsZXgtZ3JpZCgpO1xuICB9XG59XG5cbi5hYm91dC1ibG9ja19fY29sIHtcbiAgJi0tMSB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgQGluY2x1ZGUgZmxleC1zcGFuKDUpO1xuICAgIH1cbiAgfVxuXG4gICYtLTIge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig2KTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtb2Zmc2V0KDEpO1xuICAgIH1cbiAgfVxuXG4gICYtLTMge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig4KTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtb2Zmc2V0KDIpO1xuICAgIH1cbiAgfVxufVxuXG4uYWJvdXQtYmxvY2tfX2JveCB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogcmVtKDM2MCk7XG4gICAgcGFkZGluZzogcmVtKDYwKTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IHJlbSgzMCkgcmVtKDMwKSByZW0oNTApIDAgcmdiYSgjMDAwMTZCLCAwLjA2KTtcbiAgfVxufVxuXG4uYWJvdXQtYmxvY2tfX2xvZ28ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB7XG4gICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IGNlbnRlcjtcbiAgICBzaXplOiBjb250YWluO1xuICB9XG5cbiAgJi0tbmVzdGEge1xuICAgIG1heC13aWR0aDogcmVtKDQwNCk7XG4gICAgYmFja2dyb3VuZDoge1xuICAgICAgaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2xvZ28tbmVzdGEuc3ZnJyk7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IHBlcmNlbnRhZ2UoMTYyLzQwNCk7XG4gICAgfVxuICB9XG5cbiAgJi0tc2FnZSB7XG4gICAgbWF4LXdpZHRoOiByZW0oMzE1KTtcbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICBpbWFnZTogdXJsKCcuLi9pbWFnZXMvbG9nby1zYWdlMi5zdmcnKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogcGVyY2VudGFnZSgxMjAvMzE1KTtcbiAgICB9XG4gIH1cbn1cblxuLmFib3V0LWJsb2NrX190aXRsZSB7XG4gIGZvbnQtc2l6ZTogcmVtKDI0KTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDMyKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSg0OCk7XG4gIH1cbn1cblxuLmFib3V0LWJsb2NrX19zdHJvbmcge1xuICBjb2xvcjogI0YwQzcyNjtcbn1cblxuLmFib3V0LWJsb2NrX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogMS41ZW07XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgbGluZS1oZWlnaHQ6ICgyNC8xNCk7XG4gIGNvbG9yOiAkZ3JleTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE2KTtcbiAgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkYXF1YTtcbiAgfVxufVxuXG4uYWJvdXQtYmxvY2tfX2J0biB7XG4gIG1hcmdpbi10b3A6IDJlbTtcbn1cbiIsIi5hYm91dF9faGVhZGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6ICRzcC1zO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6ICRzcC1sO1xuICB9XG59XG5cbi5hYm91dF9fdGl0bGUge1xuICBmb250LXNpemU6IHJlbSgxNCk7XG4gIGZvbnQtd2VpZ2h0OiAkZnctbWVkaXVtO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMjgpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig4KTtcbiAgICBAaW5jbHVkZSBmbGV4LW9mZnNldCgyKTtcbiAgfVxufVxuIiwiLmNvb2tpZXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgcGFkZGluZy10b3A6IHJlbSgxNSk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICB6LWluZGV4OiAxMDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGN1YmljLWJlemllcigwLjY1LCAwLjA1LCAwLjM2LCAxKSAwLjJzO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSgzMCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSgzMCk7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5jb29raWVzX19ncmlkIHtcbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5cbi5jb29raWVzX19yb3cge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICB9XG4gIH1cblxuICArICN7Jn0ge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLWRvd24pIHtcbiAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICB9XG4gIH1cbn1cblxuLmNvb2tpZXNfX3RleHQge1xuICBmb250LXNpemU6IHJlbSgxMik7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gIH1cbn1cbiIsIi5tYXAtdG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtMTQwJSk7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogcmVtKDgpIHJlbSgxMCk7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgY29sb3I6ICRibGFjaztcbiAgYm9yZGVyLXJhZGl1czogcmVtKDUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4zKSAwIDAgcmVtKDE0KTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzIGVhc2U7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoMTAwJSAtICN7cmVtKDEpfSk7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBib3JkZXItdG9wOiByZW0oNikgc29saWQgJHdoaXRlO1xuICAgIGJvcmRlci1sZWZ0OiByZW0oNikgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiByZW0oNikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbiIsIi5yZXN1bHRzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6ICRndHItaGFsZjtcbiAgcmlnaHQ6ICRndHItaGFsZjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFlbSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHotaW5kZXg6IDM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dCxcbiAgICAgICAgICAgICAgdHJhbnNmb3JtIDAuMnMgZWFzZS1pbi1vdXQsXG4gICAgICAgICAgICAgIHZpc2liaWxpdHkgMHMgMC4ycztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQsXG4gICAgICAgICAgICAgIHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xuICB9XG59XG5cbi5yZXN1bHRzX19saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuOGVtIDFlbTtcbiAgZm9udC1zaXplOiByZW0oMTQpO1xuICBjb2xvcjogJHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTgpO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwLjJlbSk7XG4gICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gICsgI3smfSB7XG4gICAgYm9yZGVyLXRvcDogcmVtKDEpIHNvbGlkICRkYXJrLWdyZXk7XG4gIH1cbn1cbiIsIi53eXNpd3lnIHtcbiAgQGluY2x1ZGUgZmxvdygxKTtcbiAgcGFkZGluZy10b3A6IDJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctdG9wOiAzZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNlbTtcbiAgfVxuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IHJlbSgxNCk7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgICAgZm9udC1zaXplOiByZW0oMjgpO1xuICAgIH1cbiAgfVxuXG4gIGg0IHtcbiAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgICAgZm9udC1zaXplOiByZW0oMjEpO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIH1cblxuICB0YWJsZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBib3JkZXI6IHJlbSgxKSBzb2xpZDtcbiAgfVxuXG4gIHRoLFxuICB0ZCB7XG4gICAgcGFkZGluZzogMC41ZW07XG4gIH1cblxuICB1bCB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjFlbTtcbiAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRhcXVhO1xuICB9XG59XG4iLCIuZm91ci1vLWZvdXIge1xuICBwYWRkaW5nLXRvcDogcmVtKDE2MCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oMjApO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG59XG4iLCIuaW50cm8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oMzApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4uaW50cm9fX21haW4ge1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgQGluY2x1ZGUgZmxleC1ncmlkKCRhbGlnbjogc3RyZXRjaCwgJGd1dHRlcnM6IGZhbHNlKTtcbiAgfVxufVxuXG4uaW50cm9fX2NvbCB7XG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBAaW5jbHVkZSBmbGV4LXNwYW4oNiwgJGd1dHRlcnM6IGZhbHNlKTtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGZsb3coKTtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuICAgICAgcGFkZGluZzogJHNwLXMgMDtcbiAgICB9XG4gIH1cbn1cblxuLmludHJvX19zZWFyY2gge1xuICAvLyBwYWRkaW5nOiAkc3AtcyAwO1xufVxuXG4uZXhwbG9yZV9faGVhZGluZyB7XG4gIEBpbmNsdWRlIGhlYWRpbmcyO1xufVxuXG4uZXhwbG9yZV9fYm9keS10ZXh0IHtcbiAgQGluY2x1ZGUgYm9keS10ZXh0O1xufVxuIiwiLmZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiByZW0oMzApO1xuICBwYWRkaW5nLWJvdHRvbTogcmVtKDMwKTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgcGFkZGluZy10b3A6IHJlbSg2MCk7XG4gICAgcGFkZGluZy1ib3R0b206IHJlbSg2MCk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDUwKTtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDI0KTtcbiAgICBib3JkZXItdG9wOiByZW0oMikgc29saWQgJHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyX19sb2dvcyB7XG4gIHdpZHRoOiByZW0oMjA4KTtcbiAgYmFja2dyb3VuZDoge1xuICAgIGltYWdlOiB1cmwoJy4uL2ltYWdlcy9mb290ZXItbG9nb3Muc3ZnJyk7XG4gICAgcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgcG9zaXRpb246IGxlZnQgY2VudGVyO1xuICAgIHNpemU6IGNvbnRhaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMzYpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICB3aWR0aDogcmVtKDI2NSk7XG4gIH1cblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiBwZXJjZW50YWdlKDY0LzI2NSk7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbGVnYWwge1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICBtYXJnaW4tdG9wOiByZW0oMTUpO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxufVxuXG4uZm9vdGVyX19jYyB7XG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgaW1nIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIH1cbiAgfVxufVxuXG4uZm9vdGVyX19jb3B5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG4gICsgI3smfSB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuICB9XG5cbiAgYSB7XG4gICAgY29sb3I6ICRvcmFuZ2U7XG4gIH1cbn1cblxuLmZvb3Rlcl9fbmF2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBmbGV4OiAxO1xuICB9XG59XG5cbi5mb290ZXJfX2xpbmssXG4uZm9vdGVyX19sYWJlbCB7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IHJlbSgxLjcpO1xufVxuXG4uZm9vdGVyX19saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICsgI3smfSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgfVxufVxuXG4uZm9vdGVyX19sYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogcmVtKDIwKTtcblxuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mb290ZXJfX3NlcGVyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiByZW0oMik7XG4gIGhlaWdodDogcmVtKDE4KTtcbiAgbWFyZ2luLWxlZnQ6IHJlbSgxMCk7XG4gIG1hcmdpbi1yaWdodDogcmVtKDEwKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuNCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiByZW0oMjApO1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDIwKTtcbiAgfVxufVxuXG4uZm9vdGVyX19zaGFyZSB7XG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgfVxufVxuIiwiLmhlcm8ge1xuICBjb2xvcjogJHdoaXRlO1xuICBwYWRkaW5nLXRvcDogcmVtKDE2MCk7XG4gIHBhZGRpbmctYm90dG9tOiByZW0oNDYpO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDE2MCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMTgwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nLXRvcDogcmVtKDIwMCk7XG4gIH1cbn1cblxuLmhlcm9fX2dyaWQge1xuICBAaW5jbHVkZSBmbGV4LWdyaWQoJGd1dHRlcnM6IGZhbHNlKTtcbn1cblxuLmhlcm9fX2NvbC0xIHtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig2LCAkZ3V0dGVyczogZmFsc2UpO1xuICAgIEBpbmNsdWRlIGZsb3coMik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgQGluY2x1ZGUgZmxleC1zcGFuKDYsICRndXR0ZXJzOiBmYWxzZSk7XG4gIH1cbn1cblxuLmhlcm9fX2NvbC0yIHtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgbWFyZ2luLXRvcDogJHNwLXM7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBpbmNsdWRlIGZsZXgtc3Bhbig1LCAkZ3V0dGVyczogZmFsc2UpO1xuICAgIEBpbmNsdWRlIGZsZXgtb2Zmc2V0KDEsICRndXR0ZXJzOiBmYWxzZSk7XG4gICAgbWFyZ2luLXRvcDogcmVtKDMwKTtcbiAgfVxufVxuXG4uaGVyb19fdGl0bGUtY29udGFpbmVyIHtcbiAgQGluY2x1ZGUgZmxvdztcbn1cblxuLmhlcm9fX3RpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBoZWFkaW5nMTtcbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDY4KTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IHJlbSgtODApO1xuICAgIGxlZnQ6IHJlbSgtODApO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiByZW0oMTk3KTtcbiAgICBoZWlnaHQ6IHJlbSgyMDUpO1xuICAgIGJhY2tncm91bmQ6IHtcbiAgICAgIGltYWdlOiB1cmwoJy4uL2ltYWdlcy9oZXJvLXN5bWJvbC5zdmcnKTtcbiAgICAgIHJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIHNpemU6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHNwYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBmb250LXdlaWdodDogJGZ3LWxpZ2h0O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyb19fdGFnbGluZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY29sb3I6ICR5ZWxsb3c7XG4gIEBpbmNsdWRlIGhlYWRpbmczO1xuICBAaW5jbHVkZSB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiByZW0oMSk7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbn1cblxuLmhlcm9fX2J1dHRvbi1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IHJlbSgyNSk7XG4gIHotaW5kZXg6IDI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tZG93bikge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgZmxvdztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tbGVmdDogcmVtKC03KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICAvLyBtYXJnaW4tdG9wOiByZW0oODApO1xuICB9XG5cbiAgLmJ0biB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLWRvd24pIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgICBtYXJnaW46IHJlbSg3KTtcbiAgICB9XG4gIH1cbn1cblxuLmhlcm9fX2tleS1maW5kaW5ncyB7XG4gIEBpbmNsdWRlIGZsb3c7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIEBpbmNsdWRlIGZsb3coMyk7XG4gIH1cbn1cblxuLmhlcm9fX2tleS1maW5kaW5nIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmhlcm9fX3N2Zy1jb250YWluZXIge1xuICB3aWR0aDogcmVtKDYwKTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogcmVtKDIyKTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgd2lkdGg6IHJlbSg5MCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgd2lkdGg6IHJlbSgxMjApO1xuICAgIG1hcmdpbi1yaWdodDogcmVtKDYwKTtcbiAgfVxufVxuXG4uaGVyb19fa2V5LWZpbmRpbmctaGVhZGxpbmUge1xuICBmbGV4OiAxO1xuICBAaW5jbHVkZSB1cHBlcmNhc2U7XG4gIEBpbmNsdWRlIGhlYWRpbmc1O1xuICBsZXR0ZXItc3BhY2luZzogcmVtKDIpO1xuXG4gICY6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29udGVudDogXCIvLyBcIjtcbiAgfVxufVxuXG4uaGVyb19fYm9keS10ZXh0LWNvbnRhaW5lciB7XG4gIEBpbmNsdWRlIGZsb3c7XG4gIG1hcmdpbi10b3A6ICRzcC1zO1xufVxuXG4uaGVyb19fYm9keS10ZXh0IHtcbiAgQGluY2x1ZGUgYm9keS10ZXh0O1xuICBAaW5jbHVkZSBtZWRpYSgkZXh0cmEtbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cbn1cblxuLmhlcm9fX2RpdmlkZXItaHIge1xuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRtZWRpdW0tc2NyZWVuLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDYwKTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNjAgLSA0Nik7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgbWFyZ2luLXRvcDogcmVtKDc3KTtcbiAgICBtYXJnaW4tYm90dG9tOiByZW0oNTYgLSA0Nik7XG4gIH1cbn1cbiIsIi5tYXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIG1pbi1oZWlnaHQ6IHJlbSg1MDApO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ubWFwX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IHJlbSg5ODApO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICB9XG59XG5cbi5tYXBfX2NvbnRyb2xzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDtcbn1cblxuLm1hcF9fa2V5LWRlc2NyaXB0aW9uIHtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLm1hcF9fbGF5ZXItY29udHJvbHMge1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5cbi5tYXBfX2xheWVyLXNlbGVjdG9ycyB7XG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgbWFyZ2luLXJpZ2h0OiByZW0oLTE1KTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDE1KTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBwYWRkaW5nOiByZW0oMTgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4ubWFwX19sYXllci1rZXlzIHtcbiAgcGFkZGluZzogcmVtKDE0KTtcbiAgY29sb3I6ICRwYWxlLWJsdWU7XG4gIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgbGluZS1oZWlnaHQ6ICgxOC8xMCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyZXk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIHdpZHRoOiAxNWVtO1xuICAgIHBhZGRpbmc6IHJlbSgxOCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICB9XG59XG5cbi5tYXBfX2xheWVyLWtleXMtbGlzdCB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgQGluY2x1ZGUgZmxvdygwLjUpO1xuICB9XG59XG5cbi5tYXBfX2tleS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogcmVtKDEyKTtcbn1cblxuLm1hcF9fa2V5LWJhbmQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICBtYXJnaW46IHJlbSg0KTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbi5tYXBfX2tleS1jb2xvciB7XG4gIHdpZHRoOiByZW0oMTgpO1xuICBoZWlnaHQ6IHJlbSgxOCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbi5tYXBfX2NvbnRyb2wtbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgKyAjeyZ9IHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiByZW0oOSk7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIC5tYXBfX2xheWVyLWJ0biB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0oMTUpO1xuICAgICAgfVxuXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm1hcF9fbGF5ZXItYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsaW5lLWhlaWdodDogMTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICBwYWRkaW5nOiByZW0oMTIpO1xuICAgIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGJvcmRlcjogcmVtKDIpIHNvbGlkIHJnYmEoJHdoaXRlLCAwLjE2KTtcbiAgICBib3JkZXItcmFkaXVzOiByZW0oMTAwKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcGFkZGluZy10b3A6IHJlbSgxNSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICAgIG1hcmdpbi10b3A6IHJlbSgxNSk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tZG93bikge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgfVxuXG4gICAgJjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICBib3JkZXItdG9wOiByZW0oOCkgc29saWQgJHllbGxvdztcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHJlbSg4KSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiByZW0oOCkgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tYXBfX2NvbnRyb2wta2V5IHtcbiAgZGlzcGxheTogbm9uZTtcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbiIsIi8vIEdlbmVyYWwgY2hhcnQgc3R5bGVzXG4uY2hhcnRfX2hlYWRpbmctY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNoYXJ0X19oZWFkaW5nIHtcbiAgQGluY2x1ZGUgaGVhZGluZzU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLmhlYWRpbmctc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xuICAgIGZvbnQtc2l6ZTogMC41ZW07XG4gIH1cbn1cblxuLmNoYXJ0X190aXRsZSB7XG4gIGZvbnQtc2l6ZTogcmVtKDE0KTtcbiAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDE4KTtcbiAgfVxuXG4gICYtLWJhciB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtKDEwKTtcbiAgfVxufVxuXG4uY2hhcnRfX2luZm8ge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGdyZXksIDUwJSk7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGxlZnQ6IDA7XG4gIGJveC1zaGFkb3c6IDAuNXJlbSAwLjVyZW0gMXJlbSAwIHJnYmEoJGdyZXksIDAuMik7XG4gIGJvdHRvbTogM3JlbTtcbiAgZm9udC1zaXplOiAwLjhlbTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgYm90dG9tOiA1cmVtO1xuICAgIG1pbi13aWR0aDogMTZyZW07XG4gIH1cblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZsb3c7XG59XG5cbi5jaGFydF9fbnVtYmVyIHtcbiAgZm9udC1zaXplOiByZW0oMjApO1xuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDM2KTtcbiAgfVxuICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiByZW0oMS4xMik7XG5cbiAgLnBlcmNlbnQtc3BhbiB7XG4gICAgZm9udC1zaXplOiAwLjVlbTtcbiAgfVxuXG4gIC5sYV9fbGlnaHQtb3JhbmdlICYge1xuICAgIGNvbG9yOiAkbGlnaHQtb3JhbmdlO1xuICB9XG5cbiAgLmxhX19vcmFuZ2UgJiB7XG4gICAgY29sb3I6ICRvcmFuZ2U7XG4gIH1cblxuICAubGFfX21pZC1vcmFuZ2UgJiB7XG4gICAgY29sb3I6ICRtaWQtb3JhbmdlO1xuICB9XG5cbiAgLmxhX19kYXJrLW9yYW5nZSAmIHtcbiAgICBjb2xvcjogJGRhcmstb3JhbmdlO1xuICB9XG5cbiAgLmxhX19kYXJrLWJsdWUgJiB7XG4gICAgY29sb3I6ICRkYXJrLWJsdWU7XG4gIH1cblxuICAubGFfX2JsdWUgJiB7XG4gICAgY29sb3I6ICRibHVlO1xuICB9XG5cbiAgLmxhX19tZWRpdW0tYXF1YSAmIHtcbiAgICBjb2xvcjogJG1lZGl1bS1hcXVhO1xuICB9XG5cbiAgLmxhX19hcXVhICYge1xuICAgIGNvbG9yOiAkYXF1YTtcbiAgfVxufVxuXG4uY2hhcnRfX251bWJlci0tbCB7XG4gIGZvbnQtc2l6ZTogcmVtKDcwKTtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDgwKTtcbiAgfVxufVxuXG4uY2hhcnRfX251bWJlci0tbSB7XG4gIGZvbnQtc2l6ZTogcmVtKDQwKTtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDUwKTtcbiAgfVxufVxuXG4uY2hhcnRfX2ljb24tY29udGFpbmVyIHtcbiAgd2lkdGg6IHJlbSg2Mik7XG4gIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNoYXJ0X19jaXJjbGUtY29udGFpbmVyIHtcbiAgd2lkdGg6IHJlbSgxMjApO1xuICBAaW5jbHVkZSBtZWRpYSgkc21hbGwtc2NyZWVuLWRvd24pIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi11cCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5jaGFydF9fY2lyY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogcmVtKDEyMCk7XG4gIGhlaWdodDogcmVtKDEyMCk7XG4gIGJvcmRlcjogcmVtKDgpIHNvbGlkICR3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgLmNoYXJ0X19udW1iZXIge1xuICAgIEBpbmNsdWRlIHh5LWNlbnRlcjtcbiAgfVxufVxuIiwiLmJiIHtcbiAgc3ZnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLyBCQiBjaGFydCBvdmVycmlkZXNcbi5iYi10b29sdGlwIHtcbiAgYm9yZGVyOiBub25lO1xuICB0ciwgdGQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICB0aCB7XG4gICAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbn1cblxuLnRpY2sge1xuICBmb250LWZhbWlseTogJGZmO1xufVxuXG4uYmItYXhpcy15IC5kb21haW4ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uYmItYXhpcy14IC5kb21haW4gIHtcbiAgc3Ryb2tlOiAkcGFsZS1ibHVlO1xuICBzdHJva2Utd2lkdGg6IHJlbSgyKTtcblxuICAuY2hhcnQtc2VjdGlvbi0tcGFsZSAmIHtcbiAgICBzdHJva2U6ICR3aGl0ZTtcbiAgfVxuXG4gIC5iYXItY2hhcnQtLWRhcmsgJiB7XG4gICAgc3Ryb2tlOiAjMjkyOTI5O1xuICB9XG59XG5cbi5iYi1heGlzLXkgLnRpY2sgbGluZSwgLmJiLWF4aXMteCAudGljayBsaW5lICB7XG4gIHN0cm9rZTogbm9uZTtcbn1cblxuLmJiLWF4aXMteC1sYWJlbCxcbi5iYi1heGlzLXktbGFiZWwsXG4uYmItYXhpcy15Mi1sYWJlbCB7XG4gIC5iYXItY2hhcnQgJiB7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICAgIGZvbnQtZmFtaWx5OiAkZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmaWxsOiAjMjkyOTI5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XG4gIH1cbiAgLmJhci1jaGFydC0tZGFyayAmIHtcbiAgICBmaWxsOiAkeWVsbG93O1xuICAgIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgfVxufVxuXG4uYmItYXhpcy15Mi1sYWJlbCB7XG4gIC8vIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbn1cblxuLmJiLXRvb2x0aXAtY29udGFpbmVyIHtcbiAgLmJhci1jaGFydC0tZGFyayAmIHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICB9XG4gICNmaW5kaW5nLTMgJiB7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHNtYWxsLXNjcmVlbi1kb3duKSB7XG4gICAgICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5iYi10b29sdGlwIHRkLFxuLmJiLXRvb2x0aXAgdGgge1xuICAuYmFyLWNoYXJ0LS1kYXJrICYsXG4gIC5kb251dC1jaGFydCAmIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4uYmItdG9vbHRpcCB0ZC52YWx1ZSB7XG4gIC5iYXItY2hhcnQtLWRhcmsgJixcbiAgLmRvbnV0LWNoYXJ0ICYge1xuICAgIGNvbG9yOiAkeWVsbG93O1xuICB9XG59XG4iLCIvLyBCYXIgY2hhcnQgc3R5bGVzXG4uYmFyLWNoYXJ0X19jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYtLWxhcmdlIHtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4ubGEtYmFyLWNoYXJ0IHtcbiAgLnRpY2sge1xuICAgIHRleHQge1xuICAgICAgZmlsbDogJGdyZXk7XG4gICAgICBmb250LXNpemU6IHJlbSgxMik7XG4gICAgICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcbiAgICB9XG4gIH1cbiAgLmJiLXlncmlkIHtcbiAgICBzdHJva2UtZGFzaGFycmF5OiAwO1xuICAgIHN0cm9rZS13aWR0aDogcmVtKDIpO1xuICAgIHN0cm9rZTogJHBhbGUtYmx1ZTtcblxuICAgIC5jaGFydC1zZWN0aW9uLS1wYWxlICYge1xuICAgICAgc3Ryb2tlOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG5cbi5sYS1iYXItY2hhcnQtLWxhcmdlIHtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi1kb3duKSB7XG4gICAgbWluLXdpZHRoOiA4MDBweDtcbiAgfVxufVxuXG4uYmFyLWNoYXJ0IHtcbiAgbWluLWhlaWdodDogNDQwcHg7XG5cbiAgJi0tc21hbGwge1xuICAgIG1heC13aWR0aDogcmVtKDUwMCk7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgLmJiLXNoYXBlLTAgeyBmaWxsOiAjRkVFMzNGICFpbXBvcnRhbnQ7IH1cbiAgICAuYmItc2hhcGUtMSB7IGZpbGw6ICNEOUUwNTMgIWltcG9ydGFudDsgfVxuICAgIC5iYi1zaGFwZS0yIHsgZmlsbDogIzZCRDY5MCAhaW1wb3J0YW50OyB9XG4gICAgLmJiLXNoYXBlLTMgeyBmaWxsOiAjMDBDRENBICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIC50aWNrIHtcbiAgICB0ZXh0IHtcbiAgICAgIGZpbGw6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKCRzbWFsbC1zY3JlZW4tZG93bikge1xuICAgICAgICBmb250LXNpemU6IHJlbSgxMCk7XG4gICAgICB9XG4gICAgICBmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcblxuICAgICAgLmZpbmRpbmctLXdoaXRlICYge1xuICAgICAgICBmaWxsOiAkZ3JleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmIteWdyaWQge1xuICAgIHN0cm9rZS1kYXNoYXJyYXk6IDA7XG4gICAgc3Ryb2tlOiAjMjkyOTI5O1xuXG4gICAgLmZpbmRpbmctLXdoaXRlICYge1xuICAgICAgc3Ryb2tlOiAkcGFsZS1ibHVlO1xuICAgIH1cbiAgfVxuXG4gIC5iYi1heGlzLXkge1xuICAgIC5kb21haW4ge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIERvbnV0IGNoYXJ0IHN0eWxlc1xuLmRvbnV0LWNoYXJ0X19jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMzIwcHg7XG5cbiAgLmNoYXJ0X19pbmZvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3R0b206IC02cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgQGluY2x1ZGUgeC1jZW50ZXI7XG4gICAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICAgIGJvdHRvbTogMTVyZW07XG4gICAgfVxuICB9XG59XG5cbi5kb251dC1jaGFydF9faGVhZGluZy1jb250YWluZXJ7XG4gIEBpbmNsdWRlIHh5LWNlbnRlcjtcbiAgei1pbmRleDogMTtcbn1cblxuLmRvbnV0LWNoYXJ0IHtcbiAgbWFyZ2luLXRvcDogcmVtKDEwKTtcblxuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cblxuLmRvbnV0LWNoYXJ0X19sZWdlbmQge1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxufVxuXG4uZG9udXQtY2hhcnRfX21haW4ge1xuICBoZWlnaHQ6IHJlbSgzMjApO1xuXG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGV4dHJhLWxhcmdlLXNjcmVlbi11cCkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbn1cbiIsIi8vIFJhbmdlIGNoYXJ0IHN0eWxlc1xuLnJhbmdlLWNoYXJ0X19saW5lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogcmVtKDMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFsZS1ibHVlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgbGV0dGVyLXNwYWNpbmc6IHJlbSgxLjUpO1xuICBjb2xvcjogJGdyZXk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cblxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICdtaW4nO1xuICAgIEBpbmNsdWRlIHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbnRlbnQ6ICdtYXgnO1xuICAgIEBpbmNsdWRlIHVwcGVyY2FzZTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgLmxhX19saWdodC1vcmFuZ2UgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LW9yYW5nZTtcbiAgfVxuXG4gIC5sYV9fbWlkLW9yYW5nZSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkLW9yYW5nZTtcbiAgfVxuXG4gIC5sYV9fb3JhbmdlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2U7XG4gIH1cblxuICAubGFfX2Rhcmstb3JhbmdlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLW9yYW5nZTtcbiAgfVxuXG4gIC5sYV9fZGFyay1ibHVlICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWJsdWU7XG4gIH1cblxuICAubGFfX2JsdWUgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gIH1cblxuICAubGFfX21lZGl1bS1hcXVhICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRtZWRpdW0tYXF1YTtcbiAgfVxuXG4gIC5sYV9fYXF1YSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXF1YTtcbiAgfVxufVxuXG4ucmFuZ2UtY2hhcnRfX2NvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5yYW5nZS1jaGFydF9fYXJyb3ctY29udGFpbmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IHJlbSgyNik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuXG4gICYuaXMtaGlkZGVuIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLmxhX19saWdodC1vcmFuZ2UgJiB7XG4gICAgZmlsbDogJGxpZ2h0LW9yYW5nZTtcbiAgfVxuXG4gIC5sYV9fb3JhbmdlICYge1xuICAgIGZpbGw6ICRvcmFuZ2U7XG4gIH1cblxuICAubGFfX21pZC1vcmFuZ2UgJiB7XG4gICAgZmlsbDogJG1pZC1vcmFuZ2U7XG4gIH1cblxuICAubGFfX2Rhcmstb3JhbmdlICYge1xuICAgIGZpbGw6ICRkYXJrLW9yYW5nZTtcbiAgfVxuXG4gIC5sYV9fZGFyay1ibHVlICYge1xuICAgIGZpbGw6ICRkYXJrLWJsdWU7XG4gIH1cblxuICAubGFfX2JsdWUgJiB7XG4gICAgZmlsbDogJGJsdWU7XG4gIH1cblxuICAubGFfX21lZGl1bS1hcXVhICYge1xuICAgIGZpbGw6ICRtZWRpdW0tYXF1YTtcbiAgfVxuXG4gIC5sYV9fYXF1YSAmIHtcbiAgICBmaWxsOiAkYXF1YTtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi5jaGFydC1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGJsYWNrO1xuICBwYWRkaW5nLXRvcDogcmVtKDYwKTtcbiAgcGFkZGluZy1ib3R0b206IHJlbSg2MCk7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctdG9wOiByZW0oMTIwKTtcbiAgICBwYWRkaW5nLWJvdHRvbTogcmVtKDEyMCk7XG4gIH1cbn1cblxuLmNoYXJ0LXNlY3Rpb25fX3JhbmdlLWV4cGxhbmF0aW9uIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG5cbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIHBhZGRpbmctdG9wOiAxLjhyZW07XG4gIH1cbn1cblxuLmNoYXJ0LXNlY3Rpb24tLXBhbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFsZS1ibHVlO1xufVxuXG4uY2hhcnQtc2VjdGlvbl9fZ3JpZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaW5jbHVkZSBmbGV4LWdyaWQoJGd1dHRlcnM6IGZhbHNlLCAkYWxpZ246IHN0cmV0Y2gpO1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLWRvd24pIHtcbiAgICA+ICoge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cblxuICAuYmFyLWNoYXJ0X19jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi8vIE1vdmUgdGhpcyBvdXRcbi5jaGFydF9fZ3JhcGhpYyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHtcbiAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBwb3NpdGlvbjogY2VudGVyO1xuICAgIHNpemU6IGNvbnRhaW47XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi1kb3duKSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICYtLTEge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiByZW0oMjY3KTtcbiAgICBoZWlnaHQ6IHJlbSgyNDYpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2NoYXJ0X19ncmFwaGljMS5zdmcnKTtcbiAgfVxuXG4gICYtLTIge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiByZW0oMTgwKTtcbiAgICBoZWlnaHQ6IHJlbSgxNzIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2NoYXJ0X19ncmFwaGljMi5zdmcnKTtcbiAgfVxuXG4gICYtLTMge1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiByZW0oMjc5KTtcbiAgICBoZWlnaHQ6IHJlbSgyMjApO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1hZ2VzL2NoYXJ0X19ncmFwaGljMy5zdmcnKTtcbiAgfVxufVxuIiwiLnN0eWxlLWd1aWRlX19jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogJHNwLXM7XG4gIHBhZGRpbmctYm90dG9tOiAkc3AtcztcbiAgQGluY2x1ZGUgZmxvdygzKTtcbn1cblxuLnN0eWxlLWd1aWRlX19ib2R5LXRleHQge1xuICBAaW5jbHVkZSBib2R5LXRleHQ7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5zdHlsZS1ndWlkZV9faGVhZGluZzEge1xuICBAaW5jbHVkZSBoZWFkaW5nMTtcbn1cblxuLnN0eWxlLWd1aWRlX19oZWFkaW5nMiB7XG4gIEBpbmNsdWRlIGhlYWRpbmcyO1xufVxuXG4uc3R5bGUtZ3VpZGVfX2hlYWRpbmczIHtcbiAgQGluY2x1ZGUgaGVhZGluZzM7XG59XG5cbi5zdHlsZS1ndWlkZV9faGVhZGluZzQge1xuICBAaW5jbHVkZSBoZWFkaW5nNDtcbn1cblxuLnN0eWxlLWd1aWRlX19oZWFkaW5nNSB7XG4gIEBpbmNsdWRlIGhlYWRpbmc1O1xufVxuXG4uc3R5bGUtZ3VpZGVfX2hlYWRpbmc2IHtcbiAgQGluY2x1ZGUgaGVhZGluZzY7XG59XG5cbi5zdHlsZS1ndWlkZV9fY29sb3ItbGlzdCB7XG4gIEBpbmNsdWRlIGZsb3c7XG59XG5cbi5zdHlsZS1ndWlkZV9fY29sb3Ige1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAmOmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHdpZHRoOiAycmVtO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0teWVsbG93IHtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gIH1cbn1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0tcGFsZS1ibHVlIHtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWxlLWJsdWU7XG4gIH1cbn1cblxuLnN0eWxlLWd1aWRlX19jb2xvci0tZ3JleSB7XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgfVxufVxuXG4uc3R5bGUtZ3VpZGVfX2NvbG9yLS1kYXJrLWdyZXkge1xuICAmOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JleTtcbiAgfVxufVxuXG4uc3R5bGUtZ3VpZGVfX2NvbG9yLS1ncmFkaWVudCB7XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGdyYWQtZ3JlZW4sICRncmFkLWJsdWUpO1xuICB9XG59XG4iLCIubGEge1xuICBjb2xvcjogJHdoaXRlO1xuICAuY2hhcnQtc2VjdGlvbjpmaXJzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tdG9wOiAyMnJlbTtcbiAgICBAaW5jbHVkZSBtZWRpYSgkbWVkaXVtLXNjcmVlbi11cCkge1xuICAgICAgbWFyZ2luLXRvcDogMjZyZW07XG4gICAgfVxuICB9XG59XG5cbi5sYS1oZWFkZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiByZW0oMzUwKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBoZWlnaHQ6IHJlbSg0MjApO1xuICB9XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDExMS4zNzM3MDc1MzMyJTtcbiAgICBiYWNrZ3JvdW5kOiB7XG4gICAgICBpbWFnZTogdXJsKCcuLi9pbWFnZXMvdHJpYW5nbGUuc3ZnJyk7XG4gICAgICByZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIHBvc2l0aW9uOiByaWdodCBib3R0b207XG4gICAgICBzaXplOiBjb250YWluO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1lZGlhKCRleHRyYS1sYXJnZS1zY3JlZW4tdXApIHtcbiAgICAgIHdpZHRoOiAzNi41JTtcbiAgICB9XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4ubGEtaGVhZGVyLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvdHRvbTogMXJlbTtcbiAgei1pbmRleDogMTtcbn1cblxuLmxhLWhlYWRlci1pbm5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4ubGEtbmFtZSB7XG4gIEBpbmNsdWRlIHh5LWNlbnRlcjtcbiAgei1pbmRleDogMTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1zaXplOiByZW0oMjApO1xuICBmb250LXdlaWdodDogJGZ3LXJlZ3VsYXI7XG5cbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBmb250LXNpemU6IHJlbSgzMik7XG4gIH1cbn1cblxuLmxhLXNoYXJlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmxhLXNoYXJlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5sYS1zaGFyZV9fbGFiZWwge1xuICBjb2xvcjogJHdoaXRlO1xuICBAaW5jbHVkZSB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogcmVtKDEwKTtcbiAgQGluY2x1ZGUgbWVkaWEoJGxhcmdlLXNjcmVlbi11cCkge1xuICAgIGZvbnQtc2l6ZTogcmVtKDEyKTtcbiAgfVxuICBsZXR0ZXItc3BhY2luZzogcmVtKDEuNzEpO1xuICBtYXJnaW4tcmlnaHQ6IDFlbTtcbn1cblxuLmxhLXNoYXJlX19ociB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuMTI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgQGluY2x1ZGUgbWVkaWEoJG1lZGl1bS1zY3JlZW4tdXApIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5maW5kLWFub3RoZXItbGEge1xuICBjb2xvcjogJHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIEBpbmNsdWRlIHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiByZW0oMTApO1xuICBAaW5jbHVkZSBtZWRpYSgkbGFyZ2Utc2NyZWVuLXVwKSB7XG4gICAgZm9udC1zaXplOiByZW0oMTIpO1xuICB9XG4gIGxldHRlci1zcGFjaW5nOiByZW0oMS43MSk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubGEtbWFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmxhLW1hcC1pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cblxuLmxlcCB7XG4gIEBpbmNsdWRlIG1lZGlhKCRsYXJnZS1zY3JlZW4tdXApIHtcbiAgICBAaW5jbHVkZSBmbG93KDMpO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmxlcC1hcnJvdy1jb250YWluZXIge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5sYV9faXMtcGFydC1vZiwgLmxhX19odWItaXMge1xuICBjb2xvcjogJGdyZXk7XG4gIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcbiAgZm9udC1zaXplOiByZW0oMTApO1xuICBsaW5lLWhlaWdodDogKDE4LzEwKTtcbn1cblxuLmxhX19sZXAtdXJsLCAubGFfX2h1Yi11cmwgIHtcbiAgY29sb3I6ICRkYXJrLW9yYW5nZTtcbiAgZm9udC1zaXplOiByZW0oMzIpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IHJlbSgyKSBzb2xpZCAkZGFyay1vcmFuZ2U7XG4gIHBhZGRpbmctYm90dG9tOiAwLjFlbTtcbn1cbiJdfQ== */
