/*
 __  __ _ _ _        _           _          ____  _             _ _       
|  \/  (_) | | _____| |__   __ _| | _____  / ___|| |_ _   _  __| (_) ___  
| |\/| | | | |/ / __| '_ \ / _` | |/ / _ \ \___ \| __| | | |/ _` | |/ _ \ 
| |  | | | |   <\__ \ | | | (_| |   <  __/  ___) | |_| |_| | (_| | | (_) |
|_|  |_|_|_|_|\_\___/_| |_|\__,_|_|\_\___| |____/ \__|\__,_|\__,_|_|\___/ 
________________________   Digital Everything   _________________________
*/
/*! normalize.css v4.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}
/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}
/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}
/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}
/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}
/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}
/* Links
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}
/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}
/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}
/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}
/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}
/**
 * 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;
}
/**
 * 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
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}
/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}
/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}
/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}
/* Forms
   ========================================================================== */
/**
 * Change font properties to `inherit` in all browsers (opinionated).
 */
button,
input,
select,
textarea {
  font: inherit;
}
/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 * 2. Show the overflow in Edge, Firefox, and IE.
 */
button,
input,
select {
  /* 2 */
  overflow: visible;
}
/**
 * Remove the margin in Safari.
 * 1. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  /* 1 */
  margin: 0;
}
/**
 * Remove the inheritence of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritence of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}
/**
 * Change the cursor in all browsers (opinionated).
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  cursor: pointer;
}
/**
 * Restore the default cursor to disabled elements unset by the previous rule.
 */
[disabled] {
  cursor: default;
}
/**
 * 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.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}
/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
input:-moz-focusring {
  outline: 1px dotted ButtonText;
}
/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}
/**
 * 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"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * Correct the odd appearance of search inputs in Chrome and Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
}
/**
 * Remove the inner padding and cancel buttons in Chrome on OS X and
 * Safari on OS X.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
[col="12"] {
  width: 96%;
  float: left;
}
[col="11"] {
  width: 87.83333333%;
  float: left;
}
[col="10"] {
  width: 79.66666667%;
  float: left;
}
[col="9"] {
  width: 71.5%;
  float: left;
}
[col="8"] {
  width: 63.33333333%;
  float: left;
}
[col="7"] {
  width: 55.16666667%;
  float: left;
}
[col="6"] {
  width: 47%;
  float: left;
}
[col="5"] {
  width: 38.83333333%;
  float: left;
}
[col="4"] {
  width: 30.66666667%;
  float: left;
}
[col="3"] {
  width: 22.5%;
  float: left;
}
[col="2"] {
  width: 14.33333333%;
  float: left;
}
[col="1"] {
  width: 6.16666667%;
  float: left;
}
@media screen and (max-width: 1099px) and (min-width: 940px) {
  [col-t="12"] {
    width: 96%;
    float: left;
  }
  [col-t="11"] {
    width: 87.83333333%;
    float: left;
  }
  [col-t="10"] {
    width: 79.66666667%;
    float: left;
  }
  [col-t="9"] {
    width: 71.5%;
    float: left;
  }
  [col-t="8"] {
    width: 63.33333333%;
    float: left;
  }
  [col-t="7"] {
    width: 55.16666667%;
    float: left;
  }
  [col-t="6"] {
    width: 47%;
    float: left;
  }
  [col-t="5"] {
    width: 38.83333333%;
    float: left;
  }
  [col-t="4"] {
    width: 30.66666667%;
    float: left;
  }
  [col-t="3"] {
    width: 22.5%;
    float: left;
  }
  [col-t="2"] {
    width: 14.33333333%;
    float: left;
  }
  [col-t="1"] {
    width: 6.16666667%;
    float: left;
  }
}
@media screen and (max-width: 639px) {
  [col-p="12"] {
    width: 96%;
    float: left;
  }
  [col-p="11"] {
    width: 87.83333333%;
    float: left;
  }
  [col-p="10"] {
    width: 79.66666667%;
    float: left;
  }
  [col-p="9"] {
    width: 71.5%;
    float: left;
  }
  [col-p="8"] {
    width: 63.33333333%;
    float: left;
  }
  [col-p="7"] {
    width: 55.16666667%;
    float: left;
  }
  [col-p="6"] {
    width: 47%;
    float: left;
  }
  [col-p="5"] {
    width: 38.83333333%;
    float: left;
  }
  [col-p="4"] {
    width: 30.66666667%;
    float: left;
  }
  [col-p="3"] {
    width: 22.5%;
    float: left;
  }
  [col-p="2"] {
    width: 14.33333333%;
    float: left;
  }
  [col-p="1"] {
    width: 6.16666667%;
    float: left;
  }
}
@media screen and (max-width: 939px) {
  .hide-on-mobile {
    display: none !important;
  }
}
@media screen and (max-width: 1099px) and (min-width: 940px) {
  .hide-on-tablet {
    display: none !important;
  }
}
@media screen and (max-width: 939px) and (min-width: 640px) {
  .hide-on-tablet {
    display: none !important;
  }
}
@media screen and (max-width: 639px) {
  .hide-on-phone {
    display: none !important;
  }
}
@media screen and (min-width: 1100px)  {
  .only-on-mobile {
    display: none !important;
  }
}
@media screen and (min-width: 1700px) {
  .only-on-mobile {
    display: none !important;
  }
}
@media screen and (min-width: 1100px)  {
  .only-on-phone {
    display: none !important;
  }
}
@media screen and (min-width: 1700px) {
  .only-on-phone {
    display: none !important;
  }
}
@media screen and (max-width: 1099px) and (min-width: 940px) {
  .only-on-phone {
    display: none !important;
  }
}
@media screen and (max-width: 939px) and (min-width: 640px) {
  .only-on-phone {
    display: none !important;
  }
}
.hidden {
  display: none !important;
}
.vert-center {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.horz-center {
  position: relative;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.both-center {
  position: relative;
  left: 50%;
  top: 50%;
  -webkit-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
}
.text-center {
  text-align: center;
}
.float-left {
  float: left;
}
.float-right {
  float: right;
}
.full-width {
  width: 100%;
}
.center {
  float: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mt1 {
  margin-top: 1vw !important;
}
@media screen and (max-width: 639px) {
  .mt1 {
    margin-top: 10px;
  }
}
.mb1 {
  margin-bottom: 1vw !important;
}
@media screen and (max-width: 639px) {
  .mb1 {
    margin-bottom: 10px;
  }
}
.pt1 {
  padding-top: 1vw !important;
}
@media screen and (max-width: 639px) {
  .pt1 {
    padding-top: 10px;
  }
}
.pb1 {
  padding-bottom: 1vw !important;
}
@media screen and (max-width: 639px) {
  .pb1 {
    padding-bottom: 10px;
  }
}
.mt2 {
  margin-top: 2vw !important;
}
@media screen and (max-width: 639px) {
  .mt2 {
    margin-top: 20px;
  }
}
.mb2 {
  margin-bottom: 2vw !important;
}
@media screen and (max-width: 639px) {
  .mb2 {
    margin-bottom: 20px;
  }
}
.pt2 {
  padding-top: 2vw !important;
}
@media screen and (max-width: 639px) {
  .pt2 {
    padding-top: 20px;
  }
}
.pb2 {
  padding-bottom: 2vw !important;
}
@media screen and (max-width: 639px) {
  .pb2 {
    padding-bottom: 20px;
  }
}
.mt3 {
  margin-top: 3vw !important;
}
@media screen and (max-width: 639px) {
  .mt3 {
    margin-top: 30px;
  }
}
.mb3 {
  margin-bottom: 3vw !important;
}
@media screen and (max-width: 639px) {
  .mb3 {
    margin-bottom: 30px;
  }
}
.pt3 {
  padding-top: 3vw !important;
}
@media screen and (max-width: 639px) {
  .pt3 {
    padding-top: 30px;
  }
}
.pb3 {
  padding-bottom: 3vw !important;
}
@media screen and (max-width: 639px) {
  .pb3 {
    padding-bottom: 30px;
  }
}
.mt4 {
  margin-top: 4vw !important;
}
@media screen and (max-width: 639px) {
  .mt4 {
    margin-top: 40px;
  }
}
.mb4 {
  margin-bottom: 4vw !important;
}
@media screen and (max-width: 639px) {
  .mb4 {
    margin-bottom: 40px;
  }
}
.pt4 {
  padding-top: 4vw !important;
}
@media screen and (max-width: 639px) {
  .pt4 {
    padding-top: 40px;
  }
}
.pb4 {
  padding-bottom: 4vw !important;
}
@media screen and (max-width: 639px) {
  .pb4 {
    padding-bottom: 40px;
  }
}
.mt5 {
  margin-top: 5vw !important;
}
@media screen and (max-width: 639px) {
  .mt5 {
    margin-top: 50px;
  }
}
.mb5 {
  margin-bottom: 5vw !important;
}
@media screen and (max-width: 639px) {
  .mb5 {
    margin-bottom: 50px;
  }
}
.pt5 {
  padding-top: 5vw !important;
}
@media screen and (max-width: 639px) {
  .pt5 {
    padding-top: 50px;
  }
}
.pb5 {
  padding-bottom: 5vw !important;
}
@media screen and (max-width: 639px) {
  .pb5 {
    padding-bottom: 50px;
  }
}
.mt6 {
  margin-top: 6vw !important;
}
@media screen and (max-width: 639px) {
  .mt6 {
    margin-top: 60px;
  }
}
.mb6 {
  margin-bottom: 6vw !important;
}
@media screen and (max-width: 639px) {
  .mb6 {
    margin-bottom: 60px;
  }
}
.pt6 {
  padding-top: 6vw !important;
}
@media screen and (max-width: 639px) {
  .pt6 {
    padding-top: 60px;
  }
}
.pb6 {
  padding-bottom: 6vw !important;
}
@media screen and (max-width: 639px) {
  .pb6 {
    padding-bottom: 60px;
  }
}
.mt7 {
  margin-top: 7vw !important;
}
@media screen and (max-width: 639px) {
  .mt7 {
    margin-top: 70px;
  }
}
.mb7 {
  margin-bottom: 7vw !important;
}
@media screen and (max-width: 639px) {
  .mb7 {
    margin-bottom: 70px;
  }
}
.pt7 {
  padding-top: 7vw !important;
}
@media screen and (max-width: 639px) {
  .pt7 {
    padding-top: 70px;
  }
}
.pb7 {
  padding-bottom: 7vw !important;
}
@media screen and (max-width: 639px) {
  .pb7 {
    padding-bottom: 70px;
  }
}
.mt8 {
  margin-top: 8vw !important;
}
@media screen and (max-width: 639px) {
  .mt8 {
    margin-top: 80px;
  }
}
.mb8 {
  margin-bottom: 8vw !important;
}
@media screen and (max-width: 639px) {
  .mb8 {
    margin-bottom: 80px;
  }
}
.pt8 {
  padding-top: 8vw !important;
}
@media screen and (max-width: 639px) {
  .pt8 {
    padding-top: 80px;
  }
}
.pb8 {
  padding-bottom: 8vw !important;
}
@media screen and (max-width: 639px) {
  .pb8 {
    padding-bottom: 80px;
  }
}
.mt9 {
  margin-top: 9vw !important;
}
@media screen and (max-width: 639px) {
  .mt9 {
    margin-top: 90px;
  }
}
.mb9 {
  margin-bottom: 9vw !important;
}
@media screen and (max-width: 639px) {
  .mb9 {
    margin-bottom: 90px;
  }
}
.pt9 {
  padding-top: 9vw !important;
}
@media screen and (max-width: 639px) {
  .pt9 {
    padding-top: 90px;
  }
}
.pb9 {
  padding-bottom: 9vw !important;
}
@media screen and (max-width: 639px) {
  .pb9 {
    padding-bottom: 90px;
  }
}
.mt10 {
  margin-top: 10vw !important;
}
@media screen and (max-width: 639px) {
  .mt10 {
    margin-top: 100px;
  }
}
.mb10 {
  margin-bottom: 10vw !important;
}
@media screen and (max-width: 639px) {
  .mb10 {
    margin-bottom: 100px;
  }
}
.pt10 {
  padding-top: 10vw !important;
}
@media screen and (max-width: 639px) {
  .pt10 {
    padding-top: 100px;
  }
}
.pb10 {
  padding-bottom: 10vw !important;
}
@media screen and (max-width: 639px) {
  .pb10 {
    padding-bottom: 100px;
  }
}
.mt11 {
  margin-top: 11vw !important;
}
@media screen and (max-width: 639px) {
  .mt11 {
    margin-top: 110px;
  }
}
.mb11 {
  margin-bottom: 11vw !important;
}
@media screen and (max-width: 639px) {
  .mb11 {
    margin-bottom: 110px;
  }
}
.pt11 {
  padding-top: 11vw !important;
}
@media screen and (max-width: 639px) {
  .pt11 {
    padding-top: 110px;
  }
}
.pb11 {
  padding-bottom: 11vw !important;
}
@media screen and (max-width: 639px) {
  .pb11 {
    padding-bottom: 110px;
  }
}
.mt12 {
  margin-top: 12vw !important;
}
@media screen and (max-width: 639px) {
  .mt12 {
    margin-top: 120px;
  }
}
.mb12 {
  margin-bottom: 12vw !important;
}
@media screen and (max-width: 639px) {
  .mb12 {
    margin-bottom: 120px;
  }
}
.pt12 {
  padding-top: 12vw !important;
}
@media screen and (max-width: 639px) {
  .pt12 {
    padding-top: 120px;
  }
}
.pb12 {
  padding-bottom: 12vw !important;
}
@media screen and (max-width: 639px) {
  .pb12 {
    padding-bottom: 120px;
  }
}
.mt13 {
  margin-top: 13vw !important;
}
@media screen and (max-width: 639px) {
  .mt13 {
    margin-top: 130px;
  }
}
.mb13 {
  margin-bottom: 13vw !important;
}
@media screen and (max-width: 639px) {
  .mb13 {
    margin-bottom: 130px;
  }
}
.pt13 {
  padding-top: 13vw !important;
}
@media screen and (max-width: 639px) {
  .pt13 {
    padding-top: 130px;
  }
}
.pb13 {
  padding-bottom: 13vw !important;
}
@media screen and (max-width: 639px) {
  .pb13 {
    padding-bottom: 130px;
  }
}
.mt14 {
  margin-top: 14vw !important;
}
@media screen and (max-width: 639px) {
  .mt14 {
    margin-top: 140px;
  }
}
.mb14 {
  margin-bottom: 14vw !important;
}
@media screen and (max-width: 639px) {
  .mb14 {
    margin-bottom: 140px;
  }
}
.pt14 {
  padding-top: 14vw !important;
}
@media screen and (max-width: 639px) {
  .pt14 {
    padding-top: 140px;
  }
}
.pb14 {
  padding-bottom: 14vw !important;
}
@media screen and (max-width: 639px) {
  .pb14 {
    padding-bottom: 140px;
  }
}
.mt15 {
  margin-top: 15vw !important;
}
@media screen and (max-width: 639px) {
  .mt15 {
    margin-top: 150px;
  }
}
.mb15 {
  margin-bottom: 15vw !important;
}
@media screen and (max-width: 639px) {
  .mb15 {
    margin-bottom: 150px;
  }
}
.pt15 {
  padding-top: 15vw !important;
}
@media screen and (max-width: 639px) {
  .pt15 {
    padding-top: 150px;
  }
}
.pb15 {
  padding-bottom: 15vw !important;
}
@media screen and (max-width: 639px) {
  .pb15 {
    padding-bottom: 150px;
  }
}
.clear:before {
  content: '';
  display: table;
}
.clear::after {
  content: '';
  display: table;
  clear: both;
}
.no-clear:before {
  content: normal;
  display: inherit;
}
.no-clear:after {
  content: normal;
  display: inherit;
  clear: none;
}
body {
  text-rendering: optimizeLegibility;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  font-weight: normal;
}
h1 {
  font-size: 38px;
  margin: 0px auto 10px;
}
h2 {
  font-size: 32px;
}
h3 {
  font-size: 24px;
}
h4 {
  font-size: 18px;
}
h5 {
  font-size: 16px;
}
h6 {
  font-size: 12px;
}
p {
  margin: 0px auto 8px;
  line-height: 1.5;
}
ul {
  padding: 0;
  margin: 0;
}
ul li {
  list-style: none;
  padding: 0px;
  margin: 0 0 8px 0;
}
a {
  text-decoration: none;
}
.gridMe {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 9999;
}
.gridMe.hidden {
  display: none;
}
.gridMe div {
  height: 100%;
  width: 6.16666667%;
  position: absolute;
  background-color: rgba(2, 238, 255, 0.1);
  border-left: 1px solid #02eeff;
  border-right: 1px solid #02eeff;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.gridMe div:nth-child(13) {
  left: 100%;
}
.gridMe div:nth-child(12) {
  left: 91.83333333%;
}
.gridMe div:nth-child(11) {
  left: 83.66666667%;
}
.gridMe div:nth-child(10) {
  left: 75.5%;
}
.gridMe div:nth-child(9) {
  left: 67.33333333%;
}
.gridMe div:nth-child(8) {
  left: 59.16666667%;
}
.gridMe div:nth-child(7) {
  left: 51%;
}
.gridMe div:nth-child(6) {
  left: 42.83333333%;
}
.gridMe div:nth-child(5) {
  left: 34.66666667%;
}
.gridMe div:nth-child(4) {
  left: 26.5%;
}
.gridMe div:nth-child(3) {
  left: 18.33333333%;
}
.gridMe div:nth-child(2) {
  left: 10.16666667%;
}
.gridMe div:nth-child(1) {
  left: 2%;
}
@font-face {
  font-family: 'Sailec';
  src: url('../fonts/Sailec-Bold.eot');
  src: local('Sailec Bold'), local('Sailec-Bold'), url('../fonts/Sailec-Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/Sailec-Bold.woff2') format('woff2'), url('../fonts/Sailec-Bold.woff') format('woff'), url('../fonts/Sailec-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: 'Apercu Mono';
  src: url('../fonts/Apercu-Mono.eot');
  src: local('Apercu Mono'), local('Apercu-Mono'), url('../fonts/Apercu-Mono.eot?#iefix') format('embedded-opentype'), url('../fonts/Apercu-Mono.woff2') format('woff2'), url('../fonts/Apercu-Mono.woff') format('woff'), url('../fonts/Apercu-Mono.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'Apercu';
  src: url('../fonts/Apercu-LightItalic.eot');
  src: local('Apercu Light Italic'), local('Apercu-LightItalic'), url('../fonts/Apercu-LightItalic.eot?#iefix') format('embedded-opentype'), url('../fonts/Apercu-LightItalic.woff2') format('woff2'), url('../fonts/Apercu-LightItalic.woff') format('woff'), url('../fonts/Apercu-LightItalic.ttf') format('truetype');
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: 'Apercu';
  src: url('../fonts/Apercu-Light.eot');
  src: local('Apercu Light'), local('Apercu-Light'), url('../fonts/Apercu-Light.eot?#iefix') format('embedded-opentype'), url('../fonts/Apercu-Light.woff2') format('woff2'), url('../fonts/Apercu-Light.woff') format('woff'), url('../fonts/Apercu-Light.ttf') format('truetype');
  font-weight: 300;
  font-style: normal;
}
body {
  font-family: 'Apercu', Helvetica, sans-serif;
  font-size: 20px;
  line-height: 1.65;
}
body.menu-open {
  overflow: hidden;
}
body.modal-open {
  overflow: hidden;
  height: 100%;
  width: 100%;
  position: fixed;
}
body.resizing #universe,
body.loading #universe {
  -webkit-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
  height: 100vh;
}
body.resizing #universe .page-header,
body.loading #universe .page-header {
  -webkit-transform: translate3d(0, 25vh, 0);
  -ms-transform: translate3d(0, 25vh, 0);
  transform: translate3d(0, 25vh, 0);
}
body.resizing #universe .project-section,
body.loading #universe .project-section {
  -webkit-transform: translate3d(0, 50vh, 0);
  -ms-transform: translate3d(0, 50vh, 0);
  transform: translate3d(0, 50vh, 0);
}
body #universe {
  height: auto;
  -webkit-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  -webkit-transition: opacity 450ms 0ms ease-in-out;
  -o-transition: opacity 450ms 0ms ease-in-out;
  transition: opacity 450ms 0ms ease-in-out;
}
span {
  font-size: 14px;
  font-family: 'Apercu', Helvetica, sans-serif;
}
p,
.p {
  font-size: 20px;
  line-height: 1.75;
  font-family: 'Apercu', Helvetica, sans-serif;
  font-weight: 300;
  color: #000000;
  margin-bottom: 20px;
}
p a,
.p a {
  color: #49d292;
  text-decoration: none;
}
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-family: 'Sailec', Helvetica, sans-serif;
}
h1,
.h1 {
  font-size: 48px;
  line-height: 1.45;
  font-family: 'Sailec', Helvetica, sans-serif;
  font-weight: bold;
  color: #000000;
  margin-bottom: 25px;
}
h1.white,
.h1.white {
  color: white;
}
h1.green,
.h1.green {
  color: #49d292;
}
h2,
.h2 {
  font-size: 38px;
  line-height: 1.45;
  font-family: 'Sailec', Helvetica, sans-serif;
  font-weight: bold;
  color: #000000;
}
h2.white,
.h2.white {
  color: white;
}
h3,
.h3 {
  font-size: 36px;
  line-height: 1.35;
  font-family: 'Sailec', Helvetica, sans-serif;
  font-weight: bold;
  color: #000000;
  margin-top: 10px;
  margin-bottom: 10px;
}
h3.white,
.h3.white {
  color: white;
}
h3.bold,
.h3.bold {
  font-weight: bold;
}
.text-block h3,
.text-block .h3 {
  font-weight: bold;
}
h4,
.h4 {
  font-size: 22px;
  line-height: 1.65;
  font-family: 'Sailec', Helvetica, sans-serif;
  font-weight: bold;
  color: #000000;
}
h4.white,
.h4.white {
  color: white;
}
.global-alignment {
  padding-left: 18.33333333%;
}
@media screen and (max-width: 639px) {
  .global-alignment {
    padding-left: 8.16666667%;
  }
}
.section-title {
  -webkit-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
  position: absolute;
  left: -130px;
  top: -webkit-calc((100vh - 80vh)/2);
  top: calc((100vh - 80vh)/2);
  -webkit-transform-origin: top right;
  animation-transform-origin: top right;
  -ms-transform-origin: top right;
      transform-origin: top right;
  text-align: right;
  width: 150px;
  color: #BFBFBF;
  font-size: 12px;
  font-family: 'Apercu Mono', 'Monaco', monospace;
}
@media screen and (max-width: 639px) {
  .section-title {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
    margin-left: 8.16666667%;
    text-align: left;
    margin-top: -20px;
    left: 0px;
  }
}
@media screen and (max-width: 939px) and (min-width: 640px) {
  h1,
  .h1 {
    font-size: 35px;
  }
  h2,
  .h2 {
    font-size: 30px;
  }
  h3,
  .h3 {
    font-size: 24px;
  }
  h4,
  .h4 {
    font-size: 20px;
  }
  p,
  .p {
    font-size: 17px;
    line-height: 1.85;
  }
  a.text-link,
  .text-link-clone {
    font-size: 15px;
  }
  a.large-cta,
  span.large-cta {
    font-size: 17px;
  }
  li {
    font-size: 16px;
  }
}
@media screen and (max-width: 639px) {
  h1,
  .h1 {
    font-size: 28px;
  }
  h2,
  .h2 {
    font-size: 25px;
  }
  h3,
  .h3 {
    font-size: 22px;
  }
  h4,
  .h4 {
    font-size: 19px;
  }
  p,
  .p {
    font-size: 17px;
  }
  a.text-link,
  .text-link-clone {
    font-size: 16px;
  }
  a.large-cta,
  span.large-cta {
    font-size: 17px;
  }
}
.page-header {
  -webkit-transition: transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -o-transition: transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -webkit-transition: -webkit-transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: -webkit-transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95), -webkit-transform 650ms 50ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
}
.page-header .content {
  width: 42.83333333%;
  padding-left: 18.33333333%;
  padding-top: 32vh;
  padding-bottom: 16vh;
}
@media screen and (max-width: 639px) {
  .page-header .content {
    padding-left: 8.16666667%;
  }
}
.page-header .content h1 {
  margin-bottom: 0px;
}
.page-header .content .sub-header {
  font-family: 'Apercu Mono', 'Monaco', monospace;
  color: #6d6d6d;
}
@media screen and (max-width: 639px) {
  .page-header .content {
    width: 83.66666667%;
  }
  .page-header .content .sub-header {
    font-size: 14px;
  }
}
.project-section {
  overflow-x: hidden;
  width: 100vw;
  position: relative;
  -webkit-transition: transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -o-transition: transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -webkit-transition: -webkit-transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: -webkit-transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95), -webkit-transform 650ms 150ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
}
.project-section .projects {
  padding-top: -webkit-calc((100vh - 80vh)/2);
  padding-top: calc((100vh - 80vh)/2);
  padding-bottom: 16vh;
  padding-left: 18.33333333%;
}
@media screen and (max-width: 639px) {
  .project-section .projects {
    padding-left: 8.16666667%;
  }
}
.project-section .projects .project {
  height: 80vh;
  min-height: 500px;
  width: 70vw;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  margin-right: 6vw;
  overflow: hidden;
  float: left;
  display: -webkit-flex;
  /* Safari */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  /* Safari */
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-align-items: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-justify-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-transition: transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -o-transition: transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -webkit-transition: -webkit-transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , -webkit-box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: -webkit-transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , -webkit-box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , -webkit-transform 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95) , -webkit-box-shadow 850ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
}
.project-section .projects .project:after {
  content: '';
  position: absolute;
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  border-bottom: 1px solid rgba(0, 24, 40, 0.1);
}
.project-section .projects .project a {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 1000;
}
.project-section .projects .project img {
  position: absolute;
  bottom: -5%;
  left: 40%;
  width: 55%;
  -webkit-transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  -o-transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
}
.project-section .projects .project img.center {
  bottom: auto;
  top: 50%;
  left: 65%;
  width: 60%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  -ms-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}
.project-section .projects .project img.right {
  bottom: auto;
  top: 50%;
  left: 80%;
  width: 90%;
  -webkit-transform: translate3d(-50%, -50%, 0);
  -ms-transform: translate3d(-50%, -50%, 0);
  transform: translate3d(-50%, -50%, 0);
}
.project-section .projects .project img.full {
  top: -2.5%;
  right: -5%;
  height: 105%;
  width: auto;
  left: unset;
  -webkit-transform: scale(1.02, 1.02);
  -ms-transform: scale(1.02, 1.02);
  transform: scale(1.02, 1.02);
  -webkit-transform-origin: center left;
  animation-transform-origin: center left;
  -ms-transform-origin: center left;
      transform-origin: center left;
}
.project-section .projects .project .text {
  padding-left: 4vw;
  width: -webkit-calc(35% - 4vw);
  width: calc(35% - 4vw);
}
.project-section .projects .project .text h3 {
  color: white;
  margin-bottom: 0px;
}
.project-section .projects .project .text .motto {
  font-size: 20px;
  color: white;
  line-height: 1.45;
}
.project-section .projects .project .services {
  width: 35%;
  position: absolute;
  bottom: 30px;
  padding-left: 4vw;
  left: 0px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.8);
  font-family: 'Apercu Mono', 'Monaco', monospace;
}
.project-section .projects .project.black .text .motto,
.project-section .projects .project.black .text h3 {
  color: black;
}
.project-section .projects .project.black .services {
  color: rgba(0, 0, 0, 0.8);
}
.project-section .projects .project:hover {
  -webkit-transform: scale(1.01, 1.01);
  -ms-transform: scale(1.01, 1.01);
  transform: scale(1.01, 1.01);
  -webkit-box-shadow: 0 25px 40px -10px rgba(0, 24, 40, 0.25);
  box-shadow: 0 25px 40px -10px rgba(0, 24, 40, 0.25);
}
.project-section .projects .project:hover img {
  bottom: 0%;
}
.project-section .projects .project:hover img.center,
.project-section .projects .project:hover img.right {
  -webkit-transform: translate3d(-50%, -50%, 0) scale(0.95, 0.95);
  -ms-transform: translate3d(-50%, -50%, 0) scale(0.95, 0.95);
  transform: translate3d(-50%, -50%, 0) scale(0.95, 0.95);
}
.project-section .projects .project:hover img.full {
  -webkit-transform: scale(0.95, 0.95);
  -ms-transform: scale(0.95, 0.95);
  transform: scale(0.95, 0.95);
}
@media screen and (max-width: 1099px) and (min-width: 640px) {
  .project-section .projects .project {
    min-height: 450px;
    height: 65vh;
    width: 85vw;
  }
  .project-section .projects .project img {
    left: 50%;
    width: 45%;
  }
  .project-section .projects .project .text {
    width: 45%;
  }
  .project-section .projects .project .text .motto {
    font-size: 16px;
  }
}
@media screen and (max-width: 939px) and (min-width: 640px) {
  .project-section .projects .project {
    min-height: 400px;
    height: 50vh;
  }
}
@media screen and (max-width: 639px) {
  .project-section .projects {
    padding-left: 0px;
    padding-right: 0px;
  }
  .project-section .projects .project {
    margin: 4vh auto 0px;
    margin-left: 8.16666667%;
    margin-right: 8.16666667%;
    width: 83.66666667%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    min-height: 300px;
    height: 65vh;
    display: -webkit-flex;
    /* Safari */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    /* Safari */
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-align-items: flex-start;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-justify-content: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .project-section .projects .project .text {
    padding-left: 5%;
    width: 90%;
    margin-top: 4vh;
  }
  .project-section .projects .project .text h3 {
    color: white;
    margin-bottom: 0px;
  }
  .project-section .projects .project .text .motto {
    font-size: 16px;
  }
  .project-section .projects .project .services {
    padding-left: 5%;
    width: 90%;
    bottom: 3%;
  }
  .project-section .projects .project img {
    position: absolute;
    top: 35%;
    left: 5%;
    width: 90%;
    -webkit-transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
    -o-transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
    transition: all 650ms 0ms cubic-bezier(0.165, 0.84, 0.19, 0.95);
  }
  .project-section .projects .project img.center {
    top: 35%;
    left: 5%;
    width: 90%;
    -webkit-transform: translate3d(0%, 0%, 0);
    -ms-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
  }
  .project-section .projects .project img.right {
    top: 35%;
    left: 10%;
    width: 125%;
    -webkit-transform: translate3d(0%, 0%, 0);
    -ms-transform: translate3d(0%, 0%, 0);
    transform: translate3d(0%, 0%, 0);
  }
  .project-section .projects .project:hover {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-box-shadow: 0 25px 40px -10px rgba(0, 24, 40, 0.25);
    box-shadow: 0 25px 40px -10px rgba(0, 24, 40, 0.25);
  }
  .project-section .projects .project:hover img {
    bottom: 0%;
  }
  .project-section .projects .project:hover img.center,
  .project-section .projects .project:hover img.right {
    -webkit-transform: translate3d(0%, 0%, 0) scale(1, 1);
    -ms-transform: translate3d(0%, 0%, 0) scale(1, 1);
    transform: translate3d(0%, 0%, 0) scale(1, 1);
  }
}
.bio {
  position: relative;
}
.bio .section-title {
  top: -webkit-calc(16vh + 5px);
  top: calc(16vh + 5px);
}
.bio .content {
  padding-left: 18.33333333%;
  padding-top: 16vh;
  padding-bottom: 16vh;
  width: 55.16666667%;
}
@media screen and (max-width: 639px) {
  .bio .content {
    padding-left: 8.16666667%;
  }
}
.bio .content h2,
.bio .content h1,
.bio .content h3,
.bio .content h4 {
  margin-top: 0px;
}
.bio .content .social {
  font-family: 'Apercu Mono', 'Monaco', monospace;
  font-size: 12px;
  margin-top: 8vh;
}
.bio .content .social a {
  color: #9B9B9B;
  margin-right: 20px;
}
.bio .content .social a:hover {
  color: #49d292;
}
.bio .content .social a:last-child {
  margin-right: 0px;
}
@media screen and (max-width: 639px) {
  .bio .section-title {
    top: -webkit-calc(8vh - 35px);
    top: calc(8vh - 35px);
  }
  .bio .content {
    padding-top: 8vh;
    padding-bottom: 8vh;
    width: 83.66666667%;
  }
}
.affix {
  min-height: 100vh;
  width: 100%;
}
.affix.fixed {
  position: fixed;
  top: 0px;
}
.affix.set {
  position: absolute;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uY3NzIiwidmFuaWxsYS9ub3JtYWxpemUubGVzcyIsInZhbmlsbGEvZ3JpZC5sZXNzIiwidmFuaWxsYS9oZWxwZXJzLmxlc3MiLCJ2YW5pbGxhL21peGlucy5sZXNzIiwidmFuaWxsYS9nbG9iYWwubGVzcyIsInZhbmlsbGEvZGV2X2dyaWQubGVzcyIsImZvbnRzLmxlc3MiLCJnbG9iYWwubGVzcyIsImhvbWVwYWdlLmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7RUFPRTtBQUNGLDRFQUE0RTtBQUM1RTs7O0dBR0c7QUNMSDtFQUNFLHdCQUFBO0VET0EsT0FBTztFQ05QLDJCQUFBO0VEUUEsT0FBTztFQ1BQLCtCQUFBO0VEU0EsT0FBTztDQUNSO0FBQ0Q7O0dBRUc7QUNOSDtFQUNFLFVBQUE7Q0RRRDtBQUNEO2dGQUNnRjtBQUNoRjs7OztHQUlHO0FDSEg7Ozs7Ozs7Ozs7OztFRGdCRSxPQUFPO0VDSlAsZUFBQTtDRE1EO0FBQ0Q7O0dBRUc7QUNGSDs7OztFQUlFLHNCQUFBO0NESUQ7QUFDRDs7R0FFRztBQ0FIO0VBQ0UsY0FBQTtFQUNBLFVBQUE7Q0RFRDtBQUNEOztHQUVHO0FDRUg7RUFDRSx5QkFBQTtDREFEO0FBQ0Q7OztHQUdHO0FDSUg7O0VBRUUsY0FBQTtDREZEO0FBQ0Q7Z0ZBQ2dGO0FBQ2hGOztHQUVHO0FDT0g7RUFDRSw4QkFBQTtDRExEO0FBQ0Q7OztHQUdHO0FDU0g7O0VBRUUsaUJBQUE7Q0RQRDtBQUNEO2dGQUNnRjtBQUNoRjs7O0dBR0c7QUNZSDtFQUNFLG9CQUFBO0VEVkEsT0FBTztFQ1dQLDJCQUFBO0VEVEEsT0FBTztFQ1VQLDBDQUFBO1VBQUEsa0NBQUE7RURSQSxPQUFPO0NBQ1I7QUFDRDs7R0FFRztBQ1dIOztFQUVFLHFCQUFBO0NEVEQ7QUFDRDs7R0FFRztBQ2FIOztFQUVFLG9CQUFBO0NEWEQ7QUFDRDs7R0FFRztBQ2VIO0VBQ0UsbUJBQUE7Q0RiRDtBQUNEOzs7R0FHRztBQ2lCSDtFQUNF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REQ7RUFDQyxtQkFBQTtDVG9pREE7QVNyaUREO0VBR0UsOEJBQUE7RUFBQSxzQkFBQTtDVHFpREQ7QVN4aUREO0VOOUdFLDJCQUFBO0VNcUhBLGtCQUFBO0VBQ0EscUJBQUE7RU4xRUEsb0JBQUE7Q0hnbkREO0FRN3BEQTtFQXVGRDtJTHRGRSwwQkFBQTtHSGdxREM7Q0FDRjtBU25qREQ7Ozs7RUFXRyxnQkFBQTtDVDhpREY7QVN6akREO0VBY0csZ0RBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0NUOGlERjtBUzlqREQ7RUFrQkksZUFBQTtFQUNBLG1CQUFBO0NUK2lESDtBUzlpREc7RUFDQyxlQUFBO0NUZ2pESjtBUzlpREc7RUFDQyxrQkFBQTtDVGdqREo7QVMzaURBO0VBdUJBO0lBckJFLDhCQUFBO0lBQUEsc0JBQUE7R1Q2aURBO0VTeGhERjtJQWxCRSxpQkFBQTtJQUNBLG9CQUFBO0lOckdELG9CQUFBO0dIbXBEQztDQUNGO0FTemlERDtFQUNDLGtCQUFBO0VBQ0EsWUFBQTtDVDJpREE7QVN6aURBO0VBQ0MsZ0JBQUE7RUFDQSxTQUFBO0NUMmlERDtBU3ppREE7RUFDQyxtQkFBQTtDVDJpREQiLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuIF9fICBfXyBfIF8gXyAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICBfX19fICBfICAgICAgICAgICAgIF8gXyAgICAgICBcbnwgIFxcLyAgKF8pIHwgfCBfX19fX3wgfF9fICAgX18gX3wgfCBfX19fXyAgLyBfX198fCB8XyBfICAgXyAgX198IChfKSBfX18gIFxufCB8XFwvfCB8IHwgfCB8LyAvIF9ffCAnXyBcXCAvIF9gIHwgfC8gLyBfIFxcIFxcX19fIFxcfCBfX3wgfCB8IHwvIF9gIHwgfC8gXyBcXCBcbnwgfCAgfCB8IHwgfCAgIDxcXF9fIFxcIHwgfCB8IChffCB8ICAgPCAgX18vICBfX18pIHwgfF98IHxffCB8IChffCB8IHwgKF8pIHxcbnxffCAgfF98X3xffF98XFxfXFxfX18vX3wgfF98XFxfXyxffF98XFxfXFxfX198IHxfX19fLyBcXF9ffFxcX18sX3xcXF9fLF98X3xcXF9fXy8gXG5fX19fX19fX19fX19fX19fX19fX19fX18gICBEaWdpdGFsIEV2ZXJ5dGhpbmcgICBfX19fX19fX19fX19fX19fX19fX19fX19fXG4qL1xuLyohIG5vcm1hbGl6ZS5jc3MgdjQuMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIElFIGFuZCBpT1MuXG4gKi9cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFLCBhbmQgRmlyZWZveC5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFLlxuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sXG5tZW51LFxubmF2LFxuc2VjdGlvbixcbnN1bW1hcnkge1xuICAvKiAxICovXG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSA5LS5cbiAqL1xuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBpT1MgNC03LlxuICovXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC0uXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRS5cbiAqL1xudGVtcGxhdGUsXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4vKiBMaW5rc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4vKipcbiAqIFJlbW92ZSB0aGUgb3V0bGluZSBvbiBmb2N1c2VkIGxpbmtzIHdoZW4gdGhleSBhcmUgYWxzbyBhY3RpdmUgb3IgaG92ZXJlZFxuICogaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG4vKiBUZXh0LWxldmVsIHNlbWFudGljc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIEZpcmVmb3ggMzktLlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbiAqL1xuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBQcmV2ZW50IHRoZSBkdXBsaWNhdGUgYXBwbGljYXRpb24gb2YgYGJvbGRlcmAgYnkgdGhlIG5leHQgcnVsZSBpbiBTYWZhcmkgNi5cbiAqL1xuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc3R5bGUgaW4gQW5kcm9pZCA0LjMtLlxuICovXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xubWFyayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqL1xuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cbi8qIEVtYmVkZGVkIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG4vKipcbiAqIEhpZGUgdGhlIG92ZXJmbG93IGluIElFLlxuICovXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTtcbiAgLyogMiAqL1xufVxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgbWFyZ2luIGluIElFIDguXG4gKi9cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgLyogMSAqL1xuICBoZWlnaHQ6IDA7XG4gIC8qIDEgKi9cbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIC8qIDIgKi9cbn1cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvbnQgd2VpZ2h0IHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKi9cbmJ1dHRvbixcbmlucHV0LFxuc2VsZWN0IHtcbiAgLyogMiAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBtYXJnaW4gaW4gU2FmYXJpLlxuICogMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuICovXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgLyogMSAqL1xuICBtYXJnaW46IDA7XG59XG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGVuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0ZW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5idXR0b24sXG5zZWxlY3Qge1xuICAvKiAxICovXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLyoqXG4gKiBDaGFuZ2UgdGhlIGN1cnNvciBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4vKipcbiAqIFJlc3RvcmUgdGhlIGRlZmF1bHQgY3Vyc29yIHRvIGRpc2FibGVkIGVsZW1lbnRzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5bZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TLlxuICovXG5idXR0b24sXG5odG1sIFt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4vKipcbiAqIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuaW5wdXQ6LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG4vKipcbiAqIENoYW5nZSB0aGUgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5maWVsZHNldCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjMGMwYzA7XG4gIG1hcmdpbjogMCAycHg7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjYyNWVtIDAuNzVlbTtcbn1cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIGNvbG9yOiBpbmhlcml0O1xuICAvKiAyICovXG4gIGRpc3BsYXk6IHRhYmxlO1xuICAvKiAxICovXG4gIG1heC13aWR0aDogMTAwJTtcbiAgLyogMSAqL1xuICBwYWRkaW5nOiAwO1xuICAvKiAzICovXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIC8qIDEgKi9cbn1cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRS5cbiAqL1xudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi8qKlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAtLlxuICogMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLS5cbiAqL1xuW3R5cGU9XCJjaGVja2JveFwiXSxcblt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAvKiAxICovXG4gIHBhZGRpbmc6IDA7XG4gIC8qIDIgKi9cbn1cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLyoqXG4gKiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBvZiBzZWFyY2ggaW5wdXRzIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICovXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgYW5kIGNhbmNlbCBidXR0b25zIGluIENocm9tZSBvbiBPUyBYIGFuZFxuICogU2FmYXJpIG9uIE9TIFguXG4gKi9cblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5bY29sPVwiMTJcIl0ge1xuICB3aWR0aDogOTYlO1xuICBmbG9hdDogbGVmdDtcbn1cbltjb2w9XCIxMVwiXSB7XG4gIHdpZHRoOiA4Ny44MzMzMzMzMyU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuW2NvbD1cIjEwXCJdIHtcbiAgd2lkdGg6IDc5LjY2NjY2NjY3JTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5bY29sPVwiOVwiXSB7XG4gIHdpZHRoOiA3MS41JTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5bY29sPVwiOFwiXSB7XG4gIHdpZHRoOiA2My4zMzMzMzMzMyU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuW2NvbD1cIjdcIl0ge1xuICB3aWR0aDogNTUuMTY2NjY2NjclO1xuICBmbG9hdDogbGVmdDtcbn1cbltjb2w9XCI2XCJdIHtcbiAgd2lkdGg6IDQ3JTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5bY29sPVwiNVwiXSB7XG4gIHdpZHRoOiAzOC44MzMzMzMzMyU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuW2NvbD1cIjRcIl0ge1xuICB3aWR0aDogMzAuNjY2NjY2NjclO1xuICBmbG9hdDogbGVmdDtcbn1cbltjb2w9XCIzXCJdIHtcbiAgd2lkdGg6IDIyLjUlO1xuICBmbG9hdDogbGVmdDtcbn1cbltjb2w9XCIyXCJdIHtcbiAgd2lkdGg6IDE0LjMzMzMzMzMzJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5bY29sPVwiMVwiXSB7XG4gIHdpZHRoOiA2LjE2NjY2NjY3JTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIGFuZCAobWluLXdpZHRoOiA5NDBweCkge1xuICBbY29sLXQ9XCIxMlwiXSB7XG4gICAgd2lkdGg6IDk2JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCIxMVwiXSB7XG4gICAgd2lkdGg6IDg3LjgzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCIxMFwiXSB7XG4gICAgd2lkdGg6IDc5LjY2NjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCI5XCJdIHtcbiAgICB3aWR0aDogNzEuNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC10PVwiOFwiXSB7XG4gICAgd2lkdGg6IDYzLjMzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCI3XCJdIHtcbiAgICB3aWR0aDogNTUuMTY2NjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIFtjb2wtdD1cIjZcIl0ge1xuICAgIHdpZHRoOiA0NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC10PVwiNVwiXSB7XG4gICAgd2lkdGg6IDM4LjgzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCI0XCJdIHtcbiAgICB3aWR0aDogMzAuNjY2NjY2NjclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIFtjb2wtdD1cIjNcIl0ge1xuICAgIHdpZHRoOiAyMi41JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXQ9XCIyXCJdIHtcbiAgICB3aWR0aDogMTQuMzMzMzMzMzMlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIFtjb2wtdD1cIjFcIl0ge1xuICAgIHdpZHRoOiA2LjE2NjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgW2NvbC1wPVwiMTJcIl0ge1xuICAgIHdpZHRoOiA5NiU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiMTFcIl0ge1xuICAgIHdpZHRoOiA4Ny44MzMzMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiMTBcIl0ge1xuICAgIHdpZHRoOiA3OS42NjY2NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiOVwiXSB7XG4gICAgd2lkdGg6IDcxLjUlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIFtjb2wtcD1cIjhcIl0ge1xuICAgIHdpZHRoOiA2My4zMzMzMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiN1wiXSB7XG4gICAgd2lkdGg6IDU1LjE2NjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXA9XCI2XCJdIHtcbiAgICB3aWR0aDogNDclO1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIFtjb2wtcD1cIjVcIl0ge1xuICAgIHdpZHRoOiAzOC44MzMzMzMzMyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiNFwiXSB7XG4gICAgd2lkdGg6IDMwLjY2NjY2NjY3JTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXA9XCIzXCJdIHtcbiAgICB3aWR0aDogMjIuNSU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgW2NvbC1wPVwiMlwiXSB7XG4gICAgd2lkdGg6IDE0LjMzMzMzMzMzJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICBbY29sLXA9XCIxXCJdIHtcbiAgICB3aWR0aDogNi4xNjY2NjY2NyU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDkzOXB4KSB7XG4gIC5oaWRlLW9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIGFuZCAobWluLXdpZHRoOiA5NDBweCkge1xuICAuaGlkZS1vbi10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTM5cHgpIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAuaGlkZS1vbi10YWJsZXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLmhpZGUtb24tcGhvbmUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTEwMHB4KSAge1xuICAub25seS1vbi1tb2JpbGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTcwMHB4KSB7XG4gIC5vbmx5LW9uLW1vYmlsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMTAwcHgpICB7XG4gIC5vbmx5LW9uLXBob25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE3MDBweCkge1xuICAub25seS1vbi1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDk5cHgpIGFuZCAobWluLXdpZHRoOiA5NDBweCkge1xuICAub25seS1vbi1waG9uZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MzlweCkgYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5vbmx5LW9uLXBob25lIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4udmVydC1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLmhvcnotY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4uYm90aC1jZW50ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgdHJhbnNsYXRlWCgtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHRyYW5zbGF0ZVgoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSB0cmFuc2xhdGVYKC01MCUpO1xufVxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmZsb2F0LWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY2VudGVyIHtcbiAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4ubXQxIHtcbiAgbWFyZ2luLXRvcDogMXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubXQxIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG4ubWIxIHtcbiAgbWFyZ2luLWJvdHRvbTogMXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWIxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB9XG59XG4ucHQxIHtcbiAgcGFkZGluZy10b3A6IDF2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnB0MSB7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gIH1cbn1cbi5wYjEge1xuICBwYWRkaW5nLWJvdHRvbTogMXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucGIxIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxufVxuLm10MiB7XG4gIG1hcmdpbi10b3A6IDJ2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm10MiB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuLm1iMiB7XG4gIG1hcmdpbi1ib3R0b206IDJ2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1iMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLnB0MiB7XG4gIHBhZGRpbmctdG9wOiAydncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wdDIge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICB9XG59XG4ucGIyIHtcbiAgcGFkZGluZy1ib3R0b206IDJ2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBiMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi5tdDMge1xuICBtYXJnaW4tdG9wOiAzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tdDMge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbi5tYjMge1xuICBtYXJnaW4tYm90dG9tOiAzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tYjMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cbi5wdDMge1xuICBwYWRkaW5nLXRvcDogM3Z3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHQzIHtcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgfVxufVxuLnBiMyB7XG4gIHBhZGRpbmctYm90dG9tOiAzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYjMge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG59XG4ubXQ0IHtcbiAgbWFyZ2luLXRvcDogNHZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubXQ0IHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG59XG4ubWI0IHtcbiAgbWFyZ2luLWJvdHRvbTogNHZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWI0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG4ucHQ0IHtcbiAgcGFkZGluZy10b3A6IDR2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnB0NCB7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbn1cbi5wYjQge1xuICBwYWRkaW5nLWJvdHRvbTogNHZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucGI0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgfVxufVxuLm10NSB7XG4gIG1hcmdpbi10b3A6IDV2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm10NSB7XG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgfVxufVxuLm1iNSB7XG4gIG1hcmdpbi1ib3R0b206IDV2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1iNSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuLnB0NSB7XG4gIHBhZGRpbmctdG9wOiA1dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wdDUge1xuICAgIHBhZGRpbmctdG9wOiA1MHB4O1xuICB9XG59XG4ucGI1IHtcbiAgcGFkZGluZy1ib3R0b206IDV2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBiNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbn1cbi5tdDYge1xuICBtYXJnaW4tdG9wOiA2dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tdDYge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cbi5tYjYge1xuICBtYXJnaW4tYm90dG9tOiA2dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tYjYge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbi5wdDYge1xuICBwYWRkaW5nLXRvcDogNnZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHQ2IHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxufVxuLnBiNiB7XG4gIHBhZGRpbmctYm90dG9tOiA2dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYjYge1xuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xuICB9XG59XG4ubXQ3IHtcbiAgbWFyZ2luLXRvcDogN3Z3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubXQ3IHtcbiAgICBtYXJnaW4tdG9wOiA3MHB4O1xuICB9XG59XG4ubWI3IHtcbiAgbWFyZ2luLWJvdHRvbTogN3Z3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWI3IHtcbiAgICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICB9XG59XG4ucHQ3IHtcbiAgcGFkZGluZy10b3A6IDd2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnB0NyB7XG4gICAgcGFkZGluZy10b3A6IDcwcHg7XG4gIH1cbn1cbi5wYjcge1xuICBwYWRkaW5nLWJvdHRvbTogN3Z3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucGI3IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgfVxufVxuLm10OCB7XG4gIG1hcmdpbi10b3A6IDh2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm10OCB7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbiAgfVxufVxuLm1iOCB7XG4gIG1hcmdpbi1ib3R0b206IDh2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1iOCB7XG4gICAgbWFyZ2luLWJvdHRvbTogODBweDtcbiAgfVxufVxuLnB0OCB7XG4gIHBhZGRpbmctdG9wOiA4dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wdDgge1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICB9XG59XG4ucGI4IHtcbiAgcGFkZGluZy1ib3R0b206IDh2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBiOCB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbn1cbi5tdDkge1xuICBtYXJnaW4tdG9wOiA5dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tdDkge1xuICAgIG1hcmdpbi10b3A6IDkwcHg7XG4gIH1cbn1cbi5tYjkge1xuICBtYXJnaW4tYm90dG9tOiA5dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tYjkge1xuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XG4gIH1cbn1cbi5wdDkge1xuICBwYWRkaW5nLXRvcDogOXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHQ5IHtcbiAgICBwYWRkaW5nLXRvcDogOTBweDtcbiAgfVxufVxuLnBiOSB7XG4gIHBhZGRpbmctYm90dG9tOiA5dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYjkge1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICB9XG59XG4ubXQxMCB7XG4gIG1hcmdpbi10b3A6IDEwdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tdDEwIHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgfVxufVxuLm1iMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWIxMCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG4gIH1cbn1cbi5wdDEwIHtcbiAgcGFkZGluZy10b3A6IDEwdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wdDEwIHtcbiAgICBwYWRkaW5nLXRvcDogMTAwcHg7XG4gIH1cbn1cbi5wYjEwIHtcbiAgcGFkZGluZy1ib3R0b206IDEwdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYjEwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XG4gIH1cbn1cbi5tdDExIHtcbiAgbWFyZ2luLXRvcDogMTF2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm10MTEge1xuICAgIG1hcmdpbi10b3A6IDExMHB4O1xuICB9XG59XG4ubWIxMSB7XG4gIG1hcmdpbi1ib3R0b206IDExdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tYjExIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMTBweDtcbiAgfVxufVxuLnB0MTEge1xuICBwYWRkaW5nLXRvcDogMTF2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnB0MTEge1xuICAgIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgfVxufVxuLnBiMTEge1xuICBwYWRkaW5nLWJvdHRvbTogMTF2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBiMTEge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMTBweDtcbiAgfVxufVxuLm10MTIge1xuICBtYXJnaW4tdG9wOiAxMnZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubXQxMiB7XG4gICAgbWFyZ2luLXRvcDogMTIwcHg7XG4gIH1cbn1cbi5tYjEyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTJ2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1iMTIge1xuICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xuICB9XG59XG4ucHQxMiB7XG4gIHBhZGRpbmctdG9wOiAxMnZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHQxMiB7XG4gICAgcGFkZGluZy10b3A6IDEyMHB4O1xuICB9XG59XG4ucGIxMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxMnZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucGIxMiB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG59XG4ubXQxMyB7XG4gIG1hcmdpbi10b3A6IDEzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tdDEzIHtcbiAgICBtYXJnaW4tdG9wOiAxMzBweDtcbiAgfVxufVxuLm1iMTMge1xuICBtYXJnaW4tYm90dG9tOiAxM3Z3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubWIxMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XG4gIH1cbn1cbi5wdDEzIHtcbiAgcGFkZGluZy10b3A6IDEzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wdDEzIHtcbiAgICBwYWRkaW5nLXRvcDogMTMwcHg7XG4gIH1cbn1cbi5wYjEzIHtcbiAgcGFkZGluZy1ib3R0b206IDEzdncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYjEzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTMwcHg7XG4gIH1cbn1cbi5tdDE0IHtcbiAgbWFyZ2luLXRvcDogMTR2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm10MTQge1xuICAgIG1hcmdpbi10b3A6IDE0MHB4O1xuICB9XG59XG4ubWIxNCB7XG4gIG1hcmdpbi1ib3R0b206IDE0dncgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5tYjE0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNDBweDtcbiAgfVxufVxuLnB0MTQge1xuICBwYWRkaW5nLXRvcDogMTR2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnB0MTQge1xuICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgfVxufVxuLnBiMTQge1xuICBwYWRkaW5nLWJvdHRvbTogMTR2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBiMTQge1xuICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcbiAgfVxufVxuLm10MTUge1xuICBtYXJnaW4tdG9wOiAxNXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAubXQxNSB7XG4gICAgbWFyZ2luLXRvcDogMTUwcHg7XG4gIH1cbn1cbi5tYjE1IHtcbiAgbWFyZ2luLWJvdHRvbTogMTV2dyAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLm1iMTUge1xuICAgIG1hcmdpbi1ib3R0b206IDE1MHB4O1xuICB9XG59XG4ucHQxNSB7XG4gIHBhZGRpbmctdG9wOiAxNXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHQxNSB7XG4gICAgcGFkZGluZy10b3A6IDE1MHB4O1xuICB9XG59XG4ucGIxNSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNXZ3ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucGIxNSB7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG59XG4uY2xlYXI6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIGRpc3BsYXk6IHRhYmxlO1xufVxuLmNsZWFyOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4ubm8tY2xlYXI6YmVmb3JlIHtcbiAgY29udGVudDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmhlcml0O1xufVxuLm5vLWNsZWFyOmFmdGVyIHtcbiAgY29udGVudDogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBjbGVhcjogbm9uZTtcbn1cbmJvZHkge1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5oMSB7XG4gIGZvbnQtc2l6ZTogMzhweDtcbiAgbWFyZ2luOiAwcHggYXV0byAxMHB4O1xufVxuaDIge1xuICBmb250LXNpemU6IDMycHg7XG59XG5oMyB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cbmg0IHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuaDUge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5oNiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cbnAge1xuICBtYXJnaW46IDBweCBhdXRvIDhweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbnVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxudWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwcHg7XG4gIG1hcmdpbjogMCAwIDhweCAwO1xufVxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5ncmlkTWUge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogOTk5OTtcbn1cbi5ncmlkTWUuaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5ncmlkTWUgZGl2IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogNi4xNjY2NjY2NyU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyLCAyMzgsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDJlZWZmO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMDJlZWZmO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5ncmlkTWUgZGl2Om50aC1jaGlsZCgxMykge1xuICBsZWZ0OiAxMDAlO1xufVxuLmdyaWRNZSBkaXY6bnRoLWNoaWxkKDEyKSB7XG4gIGxlZnQ6IDkxLjgzMzMzMzMzJTtcbn1cbi5ncmlkTWUgZGl2Om50aC1jaGlsZCgxMSkge1xuICBsZWZ0OiA4My42NjY2NjY2NyU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoMTApIHtcbiAgbGVmdDogNzUuNSU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoOSkge1xuICBsZWZ0OiA2Ny4zMzMzMzMzMyU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoOCkge1xuICBsZWZ0OiA1OS4xNjY2NjY2NyU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoNykge1xuICBsZWZ0OiA1MSU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoNikge1xuICBsZWZ0OiA0Mi44MzMzMzMzMyU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoNSkge1xuICBsZWZ0OiAzNC42NjY2NjY2NyU7XG59XG4uZ3JpZE1lIGRpdjpudGgtY2hpbGQoNCkge1xuICBsZWZ0OiAyNi41JTtcbn1cbi5ncmlkTWUgZGl2Om50aC1jaGlsZCgzKSB7XG4gIGxlZnQ6IDE4LjMzMzMzMzMzJTtcbn1cbi5ncmlkTWUgZGl2Om50aC1jaGlsZCgyKSB7XG4gIGxlZnQ6IDEwLjE2NjY2NjY3JTtcbn1cbi5ncmlkTWUgZGl2Om50aC1jaGlsZCgxKSB7XG4gIGxlZnQ6IDIlO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnU2FpbGVjJztcbiAgc3JjOiB1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLmVvdCcpO1xuICBzcmM6IGxvY2FsKCdTYWlsZWMgQm9sZCcpLCBsb2NhbCgnU2FpbGVjLUJvbGQnKSwgdXJsKCcuLi9mb250cy9TYWlsZWMtQm9sZC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCB1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcuLi9mb250cy9TYWlsZWMtQm9sZC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UgTW9ubyc7XG4gIHNyYzogdXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby5lb3QnKTtcbiAgc3JjOiBsb2NhbCgnQXBlcmN1IE1vbm8nKSwgbG9jYWwoJ0FwZXJjdS1Nb25vJyksIHVybCgnLi4vZm9udHMvQXBlcmN1LU1vbm8uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIHVybCgnLi4vZm9udHMvQXBlcmN1LU1vbm8udHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0SXRhbGljLmVvdCcpO1xuICBzcmM6IGxvY2FsKCdBcGVyY3UgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdBcGVyY3UtTGlnaHRJdGFsaWMnKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTGlnaHRJdGFsaWMuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTGlnaHRJdGFsaWMud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTGlnaHRJdGFsaWMudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UnO1xuICBzcmM6IHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0LmVvdCcpO1xuICBzcmM6IGxvY2FsKCdBcGVyY3UgTGlnaHQnKSwgbG9jYWwoJ0FwZXJjdS1MaWdodCcpLCB1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLCB1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSwgdXJsKCcuLi9mb250cy9BcGVyY3UtTGlnaHQud29mZicpIGZvcm1hdCgnd29mZicpLCB1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cbmJvZHkge1xuICBmb250LWZhbWlseTogJ0FwZXJjdScsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS42NTtcbn1cbmJvZHkubWVudS1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbmJvZHkubW9kYWwtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbmJvZHkucmVzaXppbmcgI3VuaXZlcnNlLFxuYm9keS5sb2FkaW5nICN1bml2ZXJzZSB7XG4gIC13ZWJraXQtb3BhY2l0eTogMDtcbiAgLW1vei1vcGFjaXR5OiAwO1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuYm9keS5yZXNpemluZyAjdW5pdmVyc2UgLnBhZ2UtaGVhZGVyLFxuYm9keS5sb2FkaW5nICN1bml2ZXJzZSAucGFnZS1oZWFkZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjV2aCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXZoLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjV2aCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjV2aCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjV2aCwgMCk7XG59XG5ib2R5LnJlc2l6aW5nICN1bml2ZXJzZSAucHJvamVjdC1zZWN0aW9uLFxuYm9keS5sb2FkaW5nICN1bml2ZXJzZSAucHJvamVjdC1zZWN0aW9uIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwdmgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNTB2aCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwdmgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwdmgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDUwdmgsIDApO1xufVxuYm9keSAjdW5pdmVyc2Uge1xuICBoZWlnaHQ6IGF1dG87XG4gIC13ZWJraXQtb3BhY2l0eTogMTtcbiAgLW1vei1vcGFjaXR5OiAxO1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgNDUwbXMgMG1zIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgNDUwbXMgMG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSA0NTBtcyAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgNDUwbXMgMG1zIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQ1MG1zIDBtcyBlYXNlLWluLW91dDtcbn1cbnNwYW4ge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtZmFtaWx5OiAnQXBlcmN1JywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxucCxcbi5wIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMS43NTtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxucCBhLFxuLnAgYSB7XG4gIGNvbG9yOiAjNDlkMjkyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5oMSBhLFxuaDIgYSxcbmgzIGEsXG5oNCBhLFxuaDUgYSxcbmg2IGEge1xuICBmb250LWZhbWlseTogJ1NhaWxlYycsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cbmgxLFxuLmgxIHtcbiAgZm9udC1zaXplOiA0OHB4O1xuICBsaW5lLWhlaWdodDogMS40NTtcbiAgZm9udC1mYW1pbHk6ICdTYWlsZWMnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cbmgxLndoaXRlLFxuLmgxLndoaXRlIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuaDEuZ3JlZW4sXG4uaDEuZ3JlZW4ge1xuICBjb2xvcjogIzQ5ZDI5Mjtcbn1cbmgyLFxuLmgyIHtcbiAgZm9udC1zaXplOiAzOHB4O1xuICBsaW5lLWhlaWdodDogMS40NTtcbiAgZm9udC1mYW1pbHk6ICdTYWlsZWMnLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cbmgyLndoaXRlLFxuLmgyLndoaXRlIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuaDMsXG4uaDMge1xuICBmb250LXNpemU6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBmb250LWZhbWlseTogJ1NhaWxlYycsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuaDMud2hpdGUsXG4uaDMud2hpdGUge1xuICBjb2xvcjogd2hpdGU7XG59XG5oMy5ib2xkLFxuLmgzLmJvbGQge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbi50ZXh0LWJsb2NrIGgzLFxuLnRleHQtYmxvY2sgLmgzIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5oNCxcbi5oNCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbiAgbGluZS1oZWlnaHQ6IDEuNjU7XG4gIGZvbnQtZmFtaWx5OiAnU2FpbGVjJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5oNC53aGl0ZSxcbi5oNC53aGl0ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5nbG9iYWwtYWxpZ25tZW50IHtcbiAgcGFkZGluZy1sZWZ0OiAxOC4zMzMzMzMzMyU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuZ2xvYmFsLWFsaWdubWVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjE2NjY2NjY3JTtcbiAgfVxufVxuLnNlY3Rpb24tdGl0bGUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEzMHB4O1xuICB0b3A6IGNhbGMoKDEwMHZoIC0gODB2aCkvMik7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xuICBhbmltYXRpb24tdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogMTUwcHg7XG4gIGNvbG9yOiAjQkZCRkJGO1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtZmFtaWx5OiAnQXBlcmN1IE1vbm8nLCAnTW9uYWNvJywgbW9ub3NwYWNlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgbWFyZ2luLWxlZnQ6IDguMTY2NjY2NjclO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogLTIwcHg7XG4gICAgbGVmdDogMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5MzlweCkgYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIGgxLFxuICAuaDEge1xuICAgIGZvbnQtc2l6ZTogMzVweDtcbiAgfVxuICBoMixcbiAgLmgyIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbiAgaDMsXG4gIC5oMyB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICB9XG4gIGg0LFxuICAuaDQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxuICBwLFxuICAucCB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjg1O1xuICB9XG4gIGEudGV4dC1saW5rLFxuICAudGV4dC1saW5rLWNsb25lIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gIH1cbiAgYS5sYXJnZS1jdGEsXG4gIHNwYW4ubGFyZ2UtY3RhIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgaDEsXG4gIC5oMSB7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG4gIGgyLFxuICAuaDIge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgfVxuICBoMyxcbiAgLmgzIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgaDQsXG4gIC5oNCB7XG4gICAgZm9udC1zaXplOiAxOXB4O1xuICB9XG4gIHAsXG4gIC5wIHtcbiAgICBmb250LXNpemU6IDE3cHg7XG4gIH1cbiAgYS50ZXh0LWxpbmssXG4gIC50ZXh0LWxpbmstY2xvbmUge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxuICBhLmxhcmdlLWN0YSxcbiAgc3Bhbi5sYXJnZS1jdGEge1xuICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSA2NTBtcyA1MG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSk7XG4gIC1tcy10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xufVxuLnBhZ2UtaGVhZGVyIC5jb250ZW50IHtcbiAgd2lkdGg6IDQyLjgzMzMzMzMzJTtcbiAgcGFkZGluZy1sZWZ0OiAxOC4zMzMzMzMzMyU7XG4gIHBhZGRpbmctdG9wOiAzMnZoO1xuICBwYWRkaW5nLWJvdHRvbTogMTZ2aDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5wYWdlLWhlYWRlciAuY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjE2NjY2NjY3JTtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyIC5jb250ZW50IGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuLnBhZ2UtaGVhZGVyIC5jb250ZW50IC5zdWItaGVhZGVyIHtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UgTW9ubycsICdNb25hY28nLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjNmQ2ZDZkO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjM5cHgpIHtcbiAgLnBhZ2UtaGVhZGVyIC5jb250ZW50IHtcbiAgICB3aWR0aDogODMuNjY2NjY2NjclO1xuICB9XG4gIC5wYWdlLWhlYWRlciAuY29udGVudCAuc3ViLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICB9XG59XG4ucHJvamVjdC1zZWN0aW9uIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB3aWR0aDogMTAwdnc7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgMTUwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgMTUwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgLW1zLXRyYW5zaXRpb246IHRyYW5zZm9ybSA2NTBtcyAxNTBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gNjUwbXMgMTUwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDY1MG1zIDE1MG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSk7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKCgxMDB2aCAtIDgwdmgpLzIpO1xuICBwYWRkaW5nLWJvdHRvbTogMTZ2aDtcbiAgcGFkZGluZy1sZWZ0OiAxOC4zMzMzMzMzMyU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyB7XG4gICAgcGFkZGluZy1sZWZ0OiA4LjE2NjY2NjY3JTtcbiAgfVxufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Qge1xuICBoZWlnaHQ6IDgwdmg7XG4gIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICB3aWR0aDogNzB2dztcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG1hcmdpbi1yaWdodDogNnZ3O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAvKiBTYWZhcmkgKi9cbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiBTYWZhcmkgKi9cbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDg1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpICwgYm94LXNoYWRvdyA4NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gODUwbXMgMG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSkgLCBib3gtc2hhZG93IDg1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAtbXMtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDg1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpICwgYm94LXNoYWRvdyA4NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDg1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpICwgYm94LXNoYWRvdyA4NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDg1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpICwgYm94LXNoYWRvdyA4NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbn1cbi5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMHB4O1xuICB0b3A6IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAyNCwgNDAsIDAuMSk7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCBhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDAwO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01JTtcbiAgbGVmdDogNDAlO1xuICB3aWR0aDogNTUlO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCA2NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgNjUwbXMgMG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSk7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgNjUwbXMgMG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSk7XG4gIC1vLXRyYW5zaXRpb246IGFsbCA2NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgdHJhbnNpdGlvbjogYWxsIDY1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgaW1nLmNlbnRlciB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDY1JTtcbiAgd2lkdGg6IDYwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIC01MCUsIDApO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgaW1nLnJpZ2h0IHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogODAlO1xuICB3aWR0aDogOTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCk7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCBpbWcuZnVsbCB7XG4gIHRvcDogLTIuNSU7XG4gIHJpZ2h0OiAtNSU7XG4gIGhlaWdodDogMTA1JTtcbiAgd2lkdGg6IGF1dG87XG4gIGxlZnQ6IHVuc2V0O1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wMiwgMS4wMik7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjAyLCAxLjAyKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wMiwgMS4wMik7XG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4wMiwgMS4wMik7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMiwgMS4wMik7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG4gIGFuaW1hdGlvbi10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgbGVmdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGxlZnQ7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCAudGV4dCB7XG4gIHBhZGRpbmctbGVmdDogNHZ3O1xuICB3aWR0aDogY2FsYygzNSUgLSA0dncpO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgLnRleHQgaDMge1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cbi5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0IC50ZXh0IC5tb3R0byB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgY29sb3I6IHdoaXRlO1xuICBsaW5lLWhlaWdodDogMS40NTtcbn1cbi5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0IC5zZXJ2aWNlcyB7XG4gIHdpZHRoOiAzNSU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAzMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDR2dztcbiAgbGVmdDogMHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGZvbnQtZmFtaWx5OiAnQXBlcmN1IE1vbm8nLCAnTW9uYWNvJywgbW9ub3NwYWNlO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QuYmxhY2sgLnRleHQgLm1vdHRvLFxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QuYmxhY2sgLnRleHQgaDMge1xuICBjb2xvcjogYmxhY2s7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdC5ibGFjayAuc2VydmljZXMge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Q6aG92ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wMSwgMS4wMSk7XG4gIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjAxLCAxLjAxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wMSwgMS4wMSk7XG4gIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4wMSwgMS4wMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMSwgMS4wMSk7XG4gIC1tb3otYm94LXNoYWRvdzogMCAyNXB4IDQwcHggLTEwcHggcmdiYSgwLCAyNCwgNDAsIDAuMjUpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMjVweCA0MHB4IC0xMHB4IHJnYmEoMCwgMjQsIDQwLCAwLjI1KTtcbiAgYm94LXNoYWRvdzogMCAyNXB4IDQwcHggLTEwcHggcmdiYSgwLCAyNCwgNDAsIDAuMjUpO1xufVxuLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Q6aG92ZXIgaW1nIHtcbiAgYm90dG9tOiAwJTtcbn1cbi5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0OmhvdmVyIGltZy5jZW50ZXIsXG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdDpob3ZlciBpbWcucmlnaHQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkgc2NhbGUoMC45NSwgMC45NSk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAtNTAlLCAwKSBzY2FsZSgwLjk1LCAwLjk1KTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkgc2NhbGUoMC45NSwgMC45NSk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkgc2NhbGUoMC45NSwgMC45NSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTUwJSwgMCkgc2NhbGUoMC45NSwgMC45NSk7XG59XG4ucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdDpob3ZlciBpbWcuZnVsbCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjk1LCAwLjk1KTtcbiAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuOTUsIDAuOTUpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwLjk1LCAwLjk1KTtcbiAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjk1LCAwLjk1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1LCAwLjk1KTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwOTlweCkgYW5kIChtaW4td2lkdGg6IDY0MHB4KSB7XG4gIC5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0IHtcbiAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICBoZWlnaHQ6IDY1dmg7XG4gICAgd2lkdGg6IDg1dnc7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgaW1nIHtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCAudGV4dCB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCAudGV4dCAubW90dG8ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTM5cHgpIGFuZCAobWluLXdpZHRoOiA2NDBweCkge1xuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCB7XG4gICAgbWluLWhlaWdodDogNDAwcHg7XG4gICAgaGVpZ2h0OiA1MHZoO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xuICB9XG4gIC5wcm9qZWN0LXNlY3Rpb24gLnByb2plY3RzIC5wcm9qZWN0IHtcbiAgICBtYXJnaW46IDR2aCBhdXRvIDBweDtcbiAgICBtYXJnaW4tbGVmdDogOC4xNjY2NjY2NyU7XG4gICAgbWFyZ2luLXJpZ2h0OiA4LjE2NjY2NjY3JTtcbiAgICB3aWR0aDogODMuNjY2NjY2NjclO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgICBoZWlnaHQ6IDY1dmg7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIC8qIFNhZmFyaSAqL1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC8qIFNhZmFyaSAqL1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgLnRleHQge1xuICAgIHBhZGRpbmctbGVmdDogNSU7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW4tdG9wOiA0dmg7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgLnRleHQgaDMge1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgLnRleHQgLm1vdHRvIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3QgLnNlcnZpY2VzIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDUlO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgYm90dG9tOiAzJTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDM1JTtcbiAgICBsZWZ0OiA1JTtcbiAgICB3aWR0aDogOTAlO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDY1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDY1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAgIC1tcy10cmFuc2l0aW9uOiBhbGwgNjUwbXMgMG1zIGN1YmljLWJlemllcigwLjE2NSwgMC44NCwgMC4xOSwgMC45NSk7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDY1MG1zIDBtcyBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQsIDAuMTksIDAuOTUpO1xuICAgIHRyYW5zaXRpb246IGFsbCA2NTBtcyAwbXMgY3ViaWMtYmV6aWVyKDAuMTY1LCAwLjg0LCAwLjE5LCAwLjk1KTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCBpbWcuY2VudGVyIHtcbiAgICB0b3A6IDM1JTtcbiAgICBsZWZ0OiA1JTtcbiAgICB3aWR0aDogOTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdCBpbWcucmlnaHQge1xuICAgIHRvcDogMzUlO1xuICAgIGxlZnQ6IDEwJTtcbiAgICB3aWR0aDogMTI1JTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCk7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Q6aG92ZXIge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSwgMSk7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEsIDEpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMCAyNXB4IDQwcHggLTEwcHggcmdiYSgwLCAyNCwgNDAsIDAuMjUpO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAyNXB4IDQwcHggLTEwcHggcmdiYSgwLCAyNCwgNDAsIDAuMjUpO1xuICAgIGJveC1zaGFkb3c6IDAgMjVweCA0MHB4IC0xMHB4IHJnYmEoMCwgMjQsIDQwLCAwLjI1KTtcbiAgfVxuICAucHJvamVjdC1zZWN0aW9uIC5wcm9qZWN0cyAucHJvamVjdDpob3ZlciBpbWcge1xuICAgIGJvdHRvbTogMCU7XG4gIH1cbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Q6aG92ZXIgaW1nLmNlbnRlcixcbiAgLnByb2plY3Qtc2VjdGlvbiAucHJvamVjdHMgLnByb2plY3Q6aG92ZXIgaW1nLnJpZ2h0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKSBzY2FsZSgxLCAxKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKSBzY2FsZSgxLCAxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwJSwgMCUsIDApIHNjYWxlKDEsIDEpO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCUsIDAlLCAwKSBzY2FsZSgxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAlLCAwJSwgMCkgc2NhbGUoMSwgMSk7XG4gIH1cbn1cbi5iaW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYmlvIC5zZWN0aW9uLXRpdGxlIHtcbiAgdG9wOiBjYWxjKDE2dmggKyA1cHgpO1xufVxuLmJpbyAuY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMTguMzMzMzMzMzMlO1xuICBwYWRkaW5nLXRvcDogMTZ2aDtcbiAgcGFkZGluZy1ib3R0b206IDE2dmg7XG4gIHdpZHRoOiA1NS4xNjY2NjY2NyU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MzlweCkge1xuICAuYmlvIC5jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDguMTY2NjY2NjclO1xuICB9XG59XG4uYmlvIC5jb250ZW50IGgyLFxuLmJpbyAuY29udGVudCBoMSxcbi5iaW8gLmNvbnRlbnQgaDMsXG4uYmlvIC5jb250ZW50IGg0IHtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuLmJpbyAuY29udGVudCAuc29jaWFsIHtcbiAgZm9udC1mYW1pbHk6ICdBcGVyY3UgTW9ubycsICdNb25hY28nLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogOHZoO1xufVxuLmJpbyAuY29udGVudCAuc29jaWFsIGEge1xuICBjb2xvcjogIzlCOUI5QjtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xufVxuLmJpbyAuY29udGVudCAuc29jaWFsIGE6aG92ZXIge1xuICBjb2xvcjogIzQ5ZDI5Mjtcbn1cbi5iaW8gLmNvbnRlbnQgLnNvY2lhbCBhOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzOXB4KSB7XG4gIC5iaW8gLnNlY3Rpb24tdGl0bGUge1xuICAgIHRvcDogY2FsYyg4dmggLSAzNXB4KTtcbiAgfVxuICAuYmlvIC5jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogOHZoO1xuICAgIHBhZGRpbmctYm90dG9tOiA4dmg7XG4gICAgd2lkdGg6IDgzLjY2NjY2NjY3JTtcbiAgfVxufVxuLmFmZml4IHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFmZml4LmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDBweDtcbn1cbi5hZmZpeC5zZXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4iLCIvKiEgbm9ybWFsaXplLmNzcyB2NC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbi8qKlxuICogMS4gQ2hhbmdlIHRoZSBkZWZhdWx0IGZvbnQgZmFtaWx5IGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICogMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBhbmQgaU9TLlxuICovXG5cbmh0bWwge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjsgLyogMSAqL1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLyogMiAqL1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4vKiBIVE1MNSBkaXNwbGF5IGRlZmluaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDktLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUsIGFuZCBGaXJlZm94LlxuICogMi4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscywgLyogMSAqL1xuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sIC8qIDIgKi9cbm1lbnUsXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7IC8qIDEgKi9cbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgOS0uXG4gKi9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGlPUyA0LTcuXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgaGVpZ2h0OiAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAtLlxuICogMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUuXG4gKi9cblxudGVtcGxhdGUsIC8qIDEgKi9cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTGlua3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuICovXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG91dGxpbmUgb24gZm9jdXNlZCBsaW5rcyB3aGVuIHRoZXkgYXJlIGFsc28gYWN0aXZlIG9yIGhvdmVyZWRcbiAqIGluIGFsbCBicm93c2VycyAob3BpbmlvbmF0ZWQpLlxuICovXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmUtd2lkdGg6IDA7XG59XG5cbi8qIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lOyAvKiAxICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvKiAyICovXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLyogMiAqL1xufVxuXG4vKipcbiAqIFByZXZlbnQgdGhlIGR1cGxpY2F0ZSBhcHBsaWNhdGlvbiBvZiBgYm9sZGVyYCBieSB0aGUgbmV4dCBydWxlIGluIFNhZmFyaSA2LlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuICovXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHN0eWxlIGluIEFuZHJvaWQgNC4zLS5cbiAqL1xuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICogYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cbiAqL1xuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBiYWNrZ3JvdW5kIGFuZCBjb2xvciBpbiBJRSA5LS5cbiAqL1xuXG5tYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmMDtcbiAgY29sb3I6ICMwMDA7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuLyoqXG4gKiBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAqIGFsbCBicm93c2Vycy5cbiAqL1xuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG4vKiBFbWJlZGRlZCBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKipcbiAqIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxuICovXG5cbmltZyB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuLyoqXG4gKiBIaWRlIHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8qIEdyb3VwaW5nIGNvbnRlbnRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLyogMSAqL1xuICBmb250LXNpemU6IDFlbTsgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBtYXJnaW4gaW4gSUUgOC5cbiAqL1xuXG5maWd1cmUge1xuICBtYXJnaW46IDFlbSA0MHB4O1xufVxuXG4vKipcbiAqIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gKiAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cbiAqL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiAxICovXG4gIGhlaWdodDogMDsgLyogMSAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLyogMiAqL1xufVxuXG4vKiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyoqXG4gKiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBhbGwgYnJvd3NlcnMgKG9waW5pb25hdGVkKS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udDogaW5oZXJpdDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb250IHdlaWdodCB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cbiAqL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vKipcbiAqIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICogMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cbiAqIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAqL1xuXG5idXR0b24sXG5pbnB1dCwgLyogMSAqL1xuc2VsZWN0IHsgLyogMiAqL1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBTYWZhcmkuXG4gKiAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG4gKi9cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7IC8qIDEgKi9cbiAgbWFyZ2luOiAwO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5oZXJpdGVuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICogMS4gUmVtb3ZlIHRoZSBpbmhlcml0ZW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuICovXG5cbmJ1dHRvbixcbnNlbGVjdCB7IC8qIDEgKi9cbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBjdXJzb3IgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuYnV0dG9uLFxuW3R5cGU9XCJidXR0b25cIl0sXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZGVmYXVsdCBjdXJzb3IgdG8gZGlzYWJsZWQgZWxlbWVudHMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuW2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyoqXG4gKiAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2BcbiAqICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbiAqIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TLlxuICovXG5cbmJ1dHRvbixcbmh0bWwgW3R5cGU9XCJidXR0b25cIl0sIC8qIDEgKi9cblt0eXBlPVwicmVzZXRcIl0sXG5bdHlwZT1cInN1Ym1pdFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvKiAyICovXG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5pbnB1dDo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLyoqXG4gKiBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG4gKi9cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuaW5wdXQ6LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbi8qKlxuICogQ2hhbmdlIHRoZSBib3JkZXIsIG1hcmdpbiwgYW5kIHBhZGRpbmcgaW4gYWxsIGJyb3dzZXJzIChvcGluaW9uYXRlZCkuXG4gKi9cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAqIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAqIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAqICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbmxlZ2VuZCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8qIDEgKi9cbiAgY29sb3I6IGluaGVyaXQ7IC8qIDIgKi9cbiAgZGlzcGxheTogdGFibGU7IC8qIDEgKi9cbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiAxICovXG4gIHBhZGRpbmc6IDA7IC8qIDMgKi9cbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLyogMSAqL1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gKi9cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC0uXG4gKiAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAtLlxuICovXG5cblt0eXBlPVwiY2hlY2tib3hcIl0sXG5bdHlwZT1cInJhZGlvXCJdIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLyogMSAqL1xuICBwYWRkaW5nOiAwOyAvKiAyICovXG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuICovXG5cblt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2Ugb2Ygc2VhcmNoIGlucHV0cyBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuXG4vKipcbiAqIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBhbmQgY2FuY2VsIGJ1dHRvbnMgaW4gQ2hyb21lIG9uIE9TIFggYW5kXG4gKiBTYWZhcmkgb24gT1MgWC5cbiAqL1xuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcblt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufSIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIENvbHVtbiBDbGFzcyBDb25zdHJ1Y3RvclxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vXG5cblxuXG5cbi5yZWctY29sLWxvb3AoQGNvdW50KSB3aGVuICggQGNvdW50ID4gMCApIHtcbiAgICBAYmFzZTogZSgnW2NvbD1cIicpO1xuICAgIEBlbmQ6IGUoJ1wiXScpO1xuICAgIEB7YmFzZX1Ae2NvdW50fUB7ZW5kfSB7XG4gICAgICAgIHdpZHRoOiAoQGNvbHVtbipAY291bnQpICsgKEBndXR0ZXIgKiAoQGNvdW50IC0gMSkpO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gICAgLnJlZy1jb2wtbG9vcCggQGNvdW50IC0gMSApO1xufVxuLnJlZy1jb2wtbG9vcChAY29sdW1uQ291bnQpO1xuXG5AbWVkaWEgIEB0YWJsZXQtbGFuZHNjYXBlIHtcbiAgICAvL1RhYmxldFxuICAgIC50YWJsZXQtY29sLWxvb3AoQGNvdW50KSB3aGVuICggQGNvdW50ID4gMCApIHtcbiAgICAgICAgQGJhc2U6IGUoJ1tjb2wtJyk7XG4gICAgICAgIEBzaXplOiBlKCd0PVwiJyk7XG4gICAgICAgIEBlbmQ6IGUoJ1wiXScpO1xuICAgICAgICBAe2Jhc2V9QHtzaXplfUB7Y291bnR9QHtlbmR9IHtcbiAgICAgICAgICAgIHdpZHRoOiAoQGNvbHVtbipAY291bnQpICsgKEBndXR0ZXIgKiAoQGNvdW50IC0gMSkpO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLnRhYmxldC1jb2wtbG9vcCggQGNvdW50IC0gMSApO1xuICAgIH1cbiAgICAudGFibGV0LWNvbC1sb29wKEBjb2x1bW5Db3VudCk7XG59XG5cbkBtZWRpYSBAcGhvbmUge1xuXG4gICAgLy9QaG9uZSBTaXplXG4gICAgLnBob25lLWNvbC1sb29wKEBjb3VudCkgd2hlbiAoIEBjb3VudCA+IDAgKSB7XG4gICAgICAgIEBiYXNlOiBlKCdbY29sLScpO1xuICAgICAgICBAc2l6ZTogZSgncD1cIicpO1xuICAgICAgICBAZW5kOiBlKCdcIl0nKTtcbiAgICAgICAgQHtiYXNlfUB7c2l6ZX1Ae2NvdW50fUB7ZW5kfSB7XG4gICAgICAgICAgICB3aWR0aDogKEBjb2x1bW4qQGNvdW50KSArIChAZ3V0dGVyICogKEBjb3VudCAtIDEpKTtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5waG9uZS1jb2wtbG9vcCggQGNvdW50IC0gMSApO1xuICAgIH1cbiAgICAucGhvbmUtY29sLWxvb3AoQGNvbHVtbkNvdW50KTtcbn1cbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIEJyZWFrIFBvaW50IEhlbHBlcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuXG4uaGlkZS1vbi1tb2JpbGUge1xuICAgIEBtZWRpYSBAbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5oaWRlLW9uLXRhYmxldCB7XG4gICAgQG1lZGlhIEB0YWJsZXQtbGFuZHNjYXBle1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBtZWRpYSBAdGFibGV0LXBvcnRyYWl0e1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuLmhpZGUtb24tcGhvbmUge1xuICAgIEBtZWRpYSBAcGhvbmUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbn1cbi5vbmx5LW9uLW1vYmlsZSB7XG4gIEBtZWRpYSBAZnVsbHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgQG1lZGlhIEBtZWdhe1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLm9ubHktb24tcGhvbmUge1xuICBAbWVkaWEgQGZ1bGx7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIEBtZWRpYSBAbWVnYXtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgQG1lZGlhIEB0YWJsZXQtbGFuZHNjYXBle1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBAbWVkaWEgQHRhYmxldC1wb3J0cmFpdHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi8vICBWaXNpYmxlIEhlbHBlcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuXG4uaGlkZGVue1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi8vICBBbGlnbiBIZWxwZXJzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuXG4udmVydC1jZW50ZXJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiA1MCU7XG4gIC50cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG59XG5cbi5ob3J6LWNlbnRlcntcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG4gIC50cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSk7XG59XG4uYm90aC1jZW50ZXJ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgLnRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpdHJhbnNsYXRlWCgtNTAlKSk7XG59XG5cbi50ZXh0LWNlbnRlcntcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZmxvYXQtbGVmdHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5mbG9hdC1yaWdodHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZnVsbC13aWR0aHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jZW50ZXJ7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIE1hcmdpbiBIZWxwZXJzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi5nZW5lcmF0ZS1tYXJnaW5zKEBuLCBAaTogMSkgd2hlbiAoQGkgPTwgQG4pIHtcbiAgLm10QHtpfXttYXJnaW4tdG9wOiAxdncgKiBAaSAhaW1wb3J0YW50OyBAbWVkaWEgQHBob25le21hcmdpbi10b3A6MTBweCAqIEBpO30gfVxuICAubWJAe2l9e21hcmdpbi1ib3R0b206IDF2dyAqIEBpICFpbXBvcnRhbnQ7IEBtZWRpYSBAcGhvbmV7bWFyZ2luLWJvdHRvbToxMHB4ICogQGk7fSB9XG4gIC5wdEB7aX17cGFkZGluZy10b3A6IDF2dyAqIEBpICFpbXBvcnRhbnQ7IEBtZWRpYSBAcGhvbmV7cGFkZGluZy10b3A6MTBweCAqIEBpO30gfVxuICAucGJAe2l9e3BhZGRpbmctYm90dG9tOiAxdncgKiBAaSAhaW1wb3J0YW50OyBAbWVkaWEgQHBob25le3BhZGRpbmctYm90dG9tOjEwcHggKiBAaTt9IH1cbiAgLy9DaGFnbmUgTnVtYmVyXG4gIC5nZW5lcmF0ZS1tYXJnaW5zKEBuLCAoQGkgKyAxKSk7XG59XG4uZ2VuZXJhdGUtbWFyZ2lucygxNSk7XG5cblxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi8vICBHcmlkIEhlbHBlcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuXG4ubWwoQGNvbCwgQGd1dCl7XG4gIG1hcmdpbi1sZWZ0OiAgKCAoQGNvbHVtbipAY29sKSArIChAZ3V0dGVyICogQGd1dCkgKTtcbn1cbi5tcihAY29sLCBAZ3V0KXtcbiAgbWFyZ2luLXJpZ2h0OiAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSApO1xufVxuLm1sLW1yKEBjb2wsIEBndXQpe1xuICBtYXJnaW4tbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICk7XG4gIG1hcmdpbi1yaWdodDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICk7XG59XG5cbi5wbChAY29sLCBAZ3V0KXtcbiAgcGFkZGluZy1sZWZ0OiAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSApO1xufVxuLnByKEBjb2wsIEBndXQpe1xuICBwYWRkaW5nLXJpZ2h0OiggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICk7XG59XG4ucGwtcHIoQGNvbCwgQGd1dCl7XG4gIHBhZGRpbmctbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICk7XG4gIHBhZGRpbmctcmlnaHQ6ICAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSApO1xufVxuXG4uaW1sKEBjb2wsIEBndXQsIEB3aWR0aCwgQG91dGVyKSB3aGVuIG5vdChAb3V0ZXIgPSAwKXtcbiAgbWFyZ2luLWxlZnQ6ICAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSArICAoQG91dGVyR3V0dGVyICogQG91dGVyKSApL0B3aWR0aDtcbn1cbi5pbWwoQGNvbCwgQGd1dCwgQHdpZHRoLCBAb3V0ZXIpIHdoZW4gKEBvdXRlciA9IDApe1xuICBtYXJnaW4tbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICkvQHdpZHRoO1xufVxuXG5cbi5pbXIoQGNvbCwgQGd1dCwgQHdpZHRoLCBAb3V0ZXIpIHdoZW4gKEBvdXRlciA9IDApe1xuICBtYXJnaW4tcmlnaHQ6ICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICkvQHdpZHRoO1xufVxuLmltcihAY29sLCBAZ3V0LCBAd2lkdGgsIEBvdXRlcikgd2hlbiBub3QoQG91dGVyID0gMCl7XG4gIG1hcmdpbi1yaWdodDogKCAoQGNvbHVtbipAY29sKSArIChAZ3V0dGVyICogQGd1dCkgKyAgIChAb3V0ZXJHdXR0ZXIgKiBAb3V0ZXIpICApL0B3aWR0aDtcbn1cblxuXG5cbi5pcGwoQGNvbCwgQGd1dCwgQHdpZHRoLCBAb3V0ZXIpIHdoZW4gbm90IChAb3V0ZXIgPSAwKXtcbiAgcGFkZGluZy1sZWZ0OiAgKCAoQGNvbHVtbipAY29sKSArIChAZ3V0dGVyICogQGd1dCkgKyAgIChAb3V0ZXJHdXR0ZXIgKiBAb3V0ZXIpICkvQHdpZHRoO1xufVxuLmlwbChAY29sLCBAZ3V0LCBAd2lkdGgsIEBvdXRlcikgd2hlbiAoQG91dGVyID0gMCl7XG4gIHBhZGRpbmctbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICkvQHdpZHRoO1xufVxuXG5cbi5pcHIoQGNvbCwgQGd1dCwgQHdpZHRoLCBAb3V0ZXIpIHdoZW4gKEBvdXRlciA9IDApe1xuICBwYWRkaW5nLXJpZ2h0OiAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSApL0B3aWR0aDtcbn1cbi5pcHIoQGNvbCwgQGd1dCwgQHdpZHRoLCBAb3V0ZXIpIHdoZW4gbm90IChAb3V0ZXIgPSAwKXtcbiAgcGFkZGluZy1yaWdodDogKCAoQGNvbHVtbipAY29sKSArIChAZ3V0dGVyICogQGd1dCkgKyAgKEBvdXRlckd1dHRlciAqIEBvdXRlcikgKS9Ad2lkdGg7XG59XG5cblxuLndpZHRoKEBjb2x1bW5udW0sIEBndXR0ZXJudW0pe1xuICB3aWR0aDogKEBjb2x1bW5udW0qQGNvbHVtbikgICsgKEBndXR0ZXJudW0gKiBAZ3V0dGVyKSA7XG59XG4ud2lkdGhTdGFydChAY29sdW1ubnVtLCBAZ3V0dGVybnVtKXtcbiAgd2lkdGg6KCAoQGNvbHVtbm51bSpAY29sdW1uKSArIChAZ3V0dGVybnVtICogQGd1dHRlcikgICsgIEBvdXRlckd1dHRlciApO1xufVxuXG4uaW5uZXJXaWR0aChAY29sdW1ubnVtLCBAZ3V0dGVybnVtLCBAd2lkdGg6IDEpe1xuICB3aWR0aDogKCAoQGNvbHVtbm51bSpAY29sdW1uKSArIChAZ3V0dGVybnVtICogQGd1dHRlcikgKS9Ad2lkdGg7XG59XG5cblxuXG4ubWxzKEBjb2wsIEBndXQpe1xuICBtYXJnaW4tbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICsgQG91dGVyR3V0dGVyICk7XG59XG4ubXJzKEBjb2wsIEBndXQpe1xuICBtYXJnaW4tcmlnaHQ6ICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICsgQG91dGVyR3V0dGVyICk7XG59XG5cbi5wbHMoQGNvbCwgQGd1dCl7XG4gIHBhZGRpbmctbGVmdDogICggKEBjb2x1bW4qQGNvbCkgKyAoQGd1dHRlciAqIEBndXQpICsgQG91dGVyR3V0dGVyICk7XG59XG4ucHJzKEBjb2wsIEBndXQpe1xuICBwYWRkaW5nLXJpZ2h0OiAoIChAY29sdW1uKkBjb2wpICsgKEBndXR0ZXIgKiBAZ3V0KSArIEBvdXRlckd1dHRlciApO1xufVxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIENsZWFyIEhlbHBlcnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLmNsZWFye1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7XG4gIH1cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi5uby1jbGVhcjpiZWZvcmUge1xuICBjb250ZW50OiBub3JtYWw7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG59XG4ubm8tY2xlYXI6YWZ0ZXIge1xuICBjb250ZW50OiBub3JtYWw7XG4gIGRpc3BsYXk6IGluaGVyaXQ7XG4gIGNsZWFyOiBub25lO1xufVxuXG4iLCIvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi8vICBHZW5lcmFsXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuLm9wYWNpdHkgKEBvcGFjaXR5OiAwLjUpIHtcbiAgLXdlYmtpdC1vcGFjaXR5OiAgQG9wYWNpdHk7XG4gIC1tb3otb3BhY2l0eTogICAgIEBvcGFjaXR5O1xuICBvcGFjaXR5OiAgICBAb3BhY2l0eTtcbn1cblxuLmZ1bGwtYmsoQHBvc2l0aW9uOiBjZW50ZXIgY2VudGVyLCBAc2l6ZTogY292ZXIpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6ICAgICAgIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogICAgIEBwb3NpdGlvbjsgXG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6ICAgIEBzaXplO1xuICAtby1iYWNrZ3JvdW5kLXNpemU6ICAgICAgQHNpemU7XG4gIC1tcy1iYWNrZ3JvdW5kLXNpemU6ICAgICBAc2l6ZTtcbiAgYmFja2dyb3VuZC1zaXplOiAgICAgICAgIEBzaXplO1xufVxuXG4uYm94LXNpemluZyhAc3R5bGU6Ym9yZGVyLWJveCl7XG4gIGJveC1zaXppbmc6QHN0eWxlO1xuICAtbW96LWJveC1zaXppbmc6QHN0eWxlO1xuICAtd2Via2l0LWJveC1zaXppbmc6QHN0eWxlO1xufVxuXG4uc2hhZG93KEBob3JPZmY6MHB4LCBAdmVydE9mZjowcHggLCBAYmx1cjo4cHgsIEBzcHJlYWQ6MXB4LCBAY29sb3I6cmdiYSgwLCAwLCAwLCAwLjE1KSkge1xuICAtbW96LWJveC1zaGFkb3c6ICAgIEBob3JPZmYgQHZlcnRPZmYgQGJsdXIgQHNwcmVhZCBAY29sb3I7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogQGhvck9mZiBAdmVydE9mZiBAYmx1ciBAc3ByZWFkIEBjb2xvcjtcbiAgYm94LXNoYWRvdzogICAgICAgICBAaG9yT2ZmIEB2ZXJ0T2ZmIEBibHVyIEBzcHJlYWQgQGNvbG9yO1xufVxuXG4uYm9yZGVyLXJhZGl1cyAoQHJhZGl1czogMHB4KSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogQHJhZGl1cztcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAgICBAcmFkaXVzO1xuICBib3JkZXItcmFkaXVzOiAgICAgICAgIEByYWRpdXM7XG5cbn1cblxuLnRleHQtc2hhZG93IChAc3RyaW5nOiA0cHggNHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMTUpKSB7XG4gIHRleHQtc2hhZG93OiBAc3RyaW5nO1xufVxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIEZMRVhcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuXG4uZmxleChAZmxleC1kaXNwbGF5OiBmbGV4LCBAZGlyZWN0aW9uOiBjb2x1bW4sICBAYWxpZ246IGNlbnRlciwgQGp1c3RpZnk6IGNlbnRlcil7XG5cbiAgZGlzcGxheTogICAgICAgICAgICAgICAgIH4nLXdlYmtpdC1Ae2ZsZXgtZGlzcGxheX0nOyAvKiBTYWZhcmkgKi9cbiAgZGlzcGxheTogICAgICAgICAgICAgICAgIEBmbGV4LWRpc3BsYXk7XG5cbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogIEBkaXJlY3Rpb247IC8qIFNhZmFyaSAqL1xuICBmbGV4LWRpcmVjdGlvbjogICAgICAgICAgQGRpcmVjdGlvbjtcblxuICAtd2Via2l0LWFsaWduLWl0ZW1zOiAgICAgQGFsaWduO1xuICBhbGlnbi1pdGVtczogICAgICAgICAgICAgQGFsaWduO1xuXG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBAanVzdGlmeTtcbiAganVzdGlmeS1jb250ZW50OiAgICAgICAgIEBqdXN0aWZ5O1xufVxuXG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vXG4vLyAgR3JhZGllbnRzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuLmdyYWRpZW50IChAc3RhcnRDb2xvcjogQGJvZHksIEBlbmRDb2xvcjogQHdoaXRlLCBAaGVpZ2h0OiAxJSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAc3RhcnRDb2xvcjtcbiAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsaW5lYXIsIGxlZnQgdG9wLCBsZWZ0IGJvdHRvbSwgZnJvbShAc3RhcnRDb2xvcikgNTAlLCB0byhAZW5kQ29sb3IpIDUwJSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IgNTAlLCBAZW5kQ29sb3IgIDUwJSk7XG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IgIDUwJSwgQGVuZENvbG9yICA1MCUpO1xuICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0Q29sb3IgIDUwJSwgQGVuZENvbG9yICA1MCUpO1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCBAc3RhcnRDb2xvciAgNTAlLCBAZW5kQ29sb3IgIDUwJSk7XG59XG5cbi5yYWRpYWwtZ3JhZGllbnQoQHN0YXJ0LCBAc3RhcnRfc3RvcCwgQGVuZCwgQGVuZF9zdG9wKXtcbiAgICBiYWNrZ3JvdW5kOiBAc3RhcnQ7IC8qIE9sZCBicm93c2VycyAqL1xuICAgIGJhY2tncm91bmQ6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgIEBzdGFydCBAc3RhcnRfc3RvcCwgQGVuZCBAZW5kX3N0b3ApOyAvKiBGRjMuNisgKi9cbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KHJhZGlhbCwgY2VudGVyIGNlbnRlciwgMHB4LCBjZW50ZXIgY2VudGVyLCAxMDAlLCBjb2xvci1zdG9wKEBzdGFydF9zdG9wLEBzdGFydCksIGNvbG9yLXN0b3AoQGVuZF9zdG9wLEBlbmQpKTsgLyogQ2hyb21lLFNhZmFyaTQrICovXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCAgQHN0YXJ0IEBzdGFydF9zdG9wLEBlbmQgQGVuZF9zdG9wKTsgLyogQ2hyb21lMTArLFNhZmFyaTUuMSsgKi9cbiAgICBiYWNrZ3JvdW5kOiAtby1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCAgQHN0YXJ0IEBzdGFydF9zdG9wLEBlbmQgQGVuZF9zdG9wKTsgLyogT3BlcmEgMTIrICovXG4gICAgYmFja2dyb3VuZDogLW1zLXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsICBAc3RhcnQgQHN0YXJ0X3N0b3AsQGVuZCBAZW5kX3N0b3ApOyAvKiBJRTEwKyAqL1xuICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIGF0IGNlbnRlciwgIEBzdGFydCBAc3RhcnRfc3RvcCxAZW5kIEBlbmRfc3RvcCk7IC8qIFczQyAqL1xuICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZmZmZmZmJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAnLEdyYWRpZW50VHlwZT0xICk7IC8qIElFNi05IGZhbGxiYWNrIG9uIGhvcml6b250YWwgZ3JhZGllbnQgKi9cbn1cblxuLnZlcnRpY2FsLWdyYWRpZW50KEBzdGFydC1jb2xvcjogIzU1NTsgQGVuZC1jb2xvcjogIzMzMzsgQHN0YXJ0LXBlcmNlbnQ6IDAlOyBAZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCBAc3RhcnQtcGVyY2VudCwgbGVmdCBAZW5kLXBlcmNlbnQsIGZyb20oQHN0YXJ0LWNvbG9yKSwgdG8oQGVuZC1jb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjErLCBDaHJvbWUgMTArXG4gICAgYmFja2dyb3VuZC1pbWFnZTogIC1tb3otbGluZWFyLWdyYWRpZW50KHRvcCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIEZGIDMuNitcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCBAc3RhcnQtY29sb3IgQHN0YXJ0LXBlcmNlbnQsIEBlbmQtY29sb3IgQGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTBcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gICAgZmlsdGVyOiBlKCUoXCJwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nJWQnLCBlbmRDb2xvcnN0cj0nJWQnLCBHcmFkaWVudFR5cGU9MClcIixhcmdiKEBzdGFydC1jb2xvciksYXJnYihAZW5kLWNvbG9yKSkpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLmhvcml6b250YWwtZ3JhZGllbnQoQHN0YXJ0LWNvbG9yOiAjNTU1OyBAZW5kLWNvbG9yOiAjMzMzOyBAc3RhcnQtcGVyY2VudDogMCU7IEBlbmQtcGVyY2VudDogMTAwJSkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtZ3JhZGllbnQobGluZWFyLCBAc3RhcnQtcGVyY2VudCB0b3AsIEBlbmQtcGVyY2VudCB0b3AsIGZyb20oQHN0YXJ0LWNvbG9yKSwgdG8oQGVuZC1jb2xvcikpOyAvLyBTYWZhcmkgNCssIENocm9tZSAyK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIGNvbG9yLXN0b3AoQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50KSwgY29sb3Itc3RvcChAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCkpOyAvLyBTYWZhcmkgNS4xKywgQ2hyb21lIDEwK1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IC1tb3otbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydC1jb2xvciBAc3RhcnQtcGVyY2VudCwgQGVuZC1jb2xvciBAZW5kLXBlcmNlbnQpOyAvLyBGRiAzLjYrXG4gICAgYmFja2dyb3VuZC1pbWFnZTogIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgQHN0YXJ0LWNvbG9yIEBzdGFydC1wZXJjZW50LCBAZW5kLWNvbG9yIEBlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICAgIGZpbHRlcjogZSglKFwicHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyVkJywgZW5kQ29sb3JzdHI9JyVkJywgR3JhZGllbnRUeXBlPTEpXCIsYXJnYihAc3RhcnQtY29sb3IpLGFyZ2IoQGVuZC1jb2xvcikpKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cblxuXG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vXG4vLyAgSGVscGVyXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi5uby1zZWxlY3QoKSB7XG4gICAgdXNlci1kcmFnOiBub25lOyBcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8qIDEgKi9cbiAgICBkaXNwbGF5OiB0YWJsZTsgLyogMiAqL1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi5iYWNrZmFjZS12aXNpYmlsaXR5KEB2aXNpYmlsaXR5KSB7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogQHZpc2liaWxpdHk7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBAdmlzaWJpbGl0eTtcbn1cblxuLnBsYWNlaG9sZGVyKEBjb2xvcjogQGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gICAgJjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICAgeyBjb2xvcjogQGNvbG9yOyB9IC8vIEZpcmVmb3ggNC0xOFxuICAgICY6Oi1tb3otcGxhY2Vob2xkZXIgICAgICAgICAgIHsgY29sb3I6IEBjb2xvcjsgfSAvLyBGaXJlZm94IDE5K1xuICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyICAgICAgIHsgY29sb3I6IEBjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiBAY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLmJhY2tncm91bmQtY292ZXIoKSB7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIFRyYW5zaXRpb25zXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi50cmFuc2l0aW9uKEBwcm9wZXJ0eTogYWxsLCBAZHVyYXRpb246IDI1MG1zLCBAZGVsYXk6IDBtcywgQGVhc2luZzogZWFzZS1pbi1vdXQpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAYXJndW1lbnRzO1xuICAtbW96LXRyYW5zaXRpb246ICAgIEBhcmd1bWVudHM7XG4gIC1tcy10cmFuc2l0aW9uOiAgICAgQGFyZ3VtZW50cztcbiAgLW8tdHJhbnNpdGlvbjogICAgICBAYXJndW1lbnRzO1xuICB0cmFuc2l0aW9uOiAgICAgICAgIEBhcmd1bWVudHM7XG59XG4udHJhbnNpdGlvbnMoQGJsYWgpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBAYmxhaDtcbiAgLW1vei10cmFuc2l0aW9uOiAgICBAYmxhaDtcbiAgLW1zLXRyYW5zaXRpb246ICAgICBAYmxhaDtcbiAgLW8tdHJhbnNpdGlvbjogICAgICBAYmxhaDtcbiAgdHJhbnNpdGlvbjogICAgICAgICBAYmxhaDtcbn1cblxuLmRlbGF5KEB0aW1lKXtcbiAgYW5pbWF0aW9uLWRlbGF5OkB0aW1lO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogQHRpbWU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBAdGltZTtcbn1cblxuXG4ucm90YXRlKEBkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoQGRlZ3JlZXMgKyAwZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06ICAgIHJvdGF0ZShAZGVncmVlcyArIDBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiAgICAgcm90YXRlKEBkZWdyZWVzICsgMGRlZyk7XG4gIC1vLXRyYW5zZm9ybTogICAgICByb3RhdGUoQGRlZ3JlZXMgKyAwZGVnKTtcbiAgdHJhbnNmb3JtOiAgICAgICAgIHJvdGF0ZShAZGVncmVlcyArIDBkZWcpO1xuICAvL2ZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LkJhc2ljSW1hZ2Uocm90YXRpb249Myk7XG59XG4uc2NhbGUoQHg6MSwgQHk6MSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoQHgsIEB5KTtcbiAgLW1vei10cmFuc2Zvcm06ICAgIHNjYWxlKEB4LCBAeSk7XG4gIC1tcy10cmFuc2Zvcm06ICAgICBzY2FsZShAeCwgQHkpO1xuICAtby10cmFuc2Zvcm06ICAgICAgc2NhbGUoQHgsIEB5KTtcbiAgdHJhbnNmb3JtOiAgICAgICAgIHNjYWxlKEB4LCBAeSk7XG59XG5cbi50cmFuc2Zvcm0oQGJsYWgpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IEBibGFoO1xuICAtbW96LXRyYW5zZm9ybTogICAgQGJsYWg7XG4gIC1tcy10cmFuc2Zvcm06ICAgICBAYmxhaDtcbiAgLW8tdHJhbnNmb3JtOiAgICAgIEBibGFoO1xuICB0cmFuc2Zvcm06ICAgICAgICAgQGJsYWg7XG59XG5cblxuLnRyYW5zaXRpb24tdHJhbnNmb3JtKEB0cmFuc2l0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gQHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xufVxuXG4udHJhbnNpdGlvbi1wcm9wZXJ0eShAdHJhbnNpdGlvbi1wcm9wZXJ0eSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IEB0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IEB0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuLnRyYW5zaXRpb24tZGVsYXkoQHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiBAdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiBAdHJhbnNpdGlvbi1kZWxheTtcbn1cbi50cmFuc2l0aW9uLWR1cmF0aW9uKEB0cmFuc2l0aW9uLWR1cmF0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogQHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogQHRyYW5zaXRpb24tZHVyYXRpb247XG59XG4udHJhbnNpdGlvbi10cmFuc2Zvcm0oQHRyYW5zaXRpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSBAdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gQHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIEB0cmFuc2l0aW9uO1xufVxuXG4udHJhbnNmb3JtLW9yaWdpbihAeCwgQHkpe1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjpAeCBAeTtcbiAgYW5pbWF0aW9uLXRyYW5zZm9ybS1vcmlnaW46IEB4IEB5O1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBAeCBAeTtcbn1cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIEFuaW1hdGlvbnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLmFuaW1hdGlvbihAYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBAYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogQGFuaW1hdGlvbjtcbn1cbi5hbmltYXRpb24tbmFtZShAbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBAbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogQG5hbWU7XG59XG4uYW5pbWF0aW9uLWR1cmF0aW9uKEBkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogQGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogQGR1cmF0aW9uO1xufVxuLmFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oQHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IEB0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogQHRpbWluZy1mdW5jdGlvbjtcbn1cbi5hbmltYXRpb24tZGVsYXkoQGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiBAZGVsYXk7XG59XG4uYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudChAaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogQGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBAaXRlcmF0aW9uLWNvdW50O1xufVxuLmFuaW1hdGlvbi1kaXJlY3Rpb24oQGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246IEBkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogQGRpcmVjdGlvbjtcbn1cblxuXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cbi8vICBLZXlmcmFtZXNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLmtleWZyYW1lcyhAbmFtZTsgQGFyZ3VtZW50cykge1xuICBALW1vei1rZXlmcmFtZXMgQG5hbWUgeyBAYXJndW1lbnRzKCk7IH1cbiAgQC13ZWJraXQta2V5ZnJhbWVzIEBuYW1lIHsgQGFyZ3VtZW50cygpOyB9XG4gIEBrZXlmcmFtZXMgQG5hbWUgeyBAYXJndW1lbnRzKCk7IH1cbiAgQC1vLWtleWZyYW1lcyBAbmFtZSB7IEBhcmd1bWVudHMoKTsgfVxufVxuXG5cblxuXG5cbiIsIi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIEdsb2JhbCBCb2R5XG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuYm9keXtcblx0dGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIEdsb2JhbCBGb250IFNldHRpbmdzXG4vLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS9cblxuaDEsaDIsaDMsaDQsaDUsaDYscHtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cbmgxe1xuXHRmb250LXNpemU6IEBoMV9GUztcblx0bWFyZ2luOiAwcHggYXV0byAxMHB4O1xufVxuaDJ7XG5cdGZvbnQtc2l6ZTogQGgyX0ZTO1xufVxuaDN7XG5cdGZvbnQtc2l6ZTogQGgzX0ZTO1xufVxuaDR7XG5cdGZvbnQtc2l6ZTogQGg0X0ZTO1xufVxuaDV7XG5cdGZvbnQtc2l6ZTogQGg1X0ZTO1xufVxuaDZ7XG5cdGZvbnQtc2l6ZTogQGg2X0ZTO1xufVxuXG5we1xuXHRtYXJnaW46IDBweCBhdXRvIDhweDtcblx0bGluZS1oZWlnaHQ6IDEuNTtcbn1cbnVse1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG5cdGxpe1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0cGFkZGluZzogMHB4O1xuXHRcdG1hcmdpbjogMCAwIDhweCAwO1xuXHR9XG59XG5cbmF7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuXG5cbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuLy8gIGJ1dHRvbnNcbi8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09L1xuXG4vLyAuYnRue1xuLy8gXHRwYWRkaW5nOjEycHggMjRweDtcbi8vIFx0LmJvcmRlci1yYWRpdXMoMnB4KTtcbi8vIFx0YmFja2dyb3VuZC1jb2xvcjogZmFkZSh3aGl0ZSwgMTAlKTtcbi8vIFx0Ym9yZGVyOjFweCBzb2xpZCB3aGl0ZTtcbi8vIFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuLy8gXHRmb250LXNpemU6IEBidG5fRlM7XG4vLyBcdGNvbG9yOiB3aGl0ZTtcbi8vIFx0bWFyZ2luOiAxMHB4IDEwcHg7XG4vLyBcdC50cmFuc2l0aW9uKCk7XG4vLyBcdCYud2lkZXtwYWRkaW5nOiAxMnB4IDM2cHg7fVxuLy8gXHQmOmhvdmVye1xuXG4vLyBcdH1cbi8vIFx0Ji5wcmltYXJ5e1xuXHRcdFxuLy8gXHRcdCY6aG92ZXJ7XG5cbi8vIFx0XHR9XG4vLyBcdH1cbi8vIH1cblxuXG5cblxuIiwiLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vXG4vLyAgICAgICAgICAgICAgICAgICBGb3IgRGV2ZWxvcG1lbnQgT05MWVxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0vXG5cbi5ncmlkTWV7XG5cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgJi5oaWRkZW57XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGl2e1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IEBjb2x1bW47XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyLDIzOCwyNTUsLjEpO1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgcmdiYSgyLDIzOCwyNTUsMSk7XG4gICAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgcmdiYSgyLDIzOCwyNTUsMSk7XG4gICAgICAgIC5ib3gtc2l6aW5nKCk7XG4gICAgICAgIFxuICAgICAgICAuY29sLWdlbmVyYXRvcihAY291bnQpIHdoZW4gKCBAY291bnQgPj0gMCApIHtcbiAgICAgICAgICAgIEBudGg6IChAY291bnQgKyAxKTtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKEB7bnRofSl7XG4gICAgICAgICAgICAgICAgbGVmdDogKEBjb2x1bW4gKiBAY291bnQpICsgKEBndXR0ZXIgKiAoQGNvdW50ICsgMSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIC5jb2wtZ2VuZXJhdG9yKEBjb3VudCAtIDEpO1xuICAgICAgICB9XG4gICAgICAgIC5jb2wtZ2VuZXJhdG9yKEBjb2x1bW5Db3VudCk7XG4gICAgfVxuXG59IiwiQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnU2FpbGVjJztcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLmVvdCcpO1xuXHRzcmM6IGxvY2FsKCdTYWlsZWMgQm9sZCcpLCBsb2NhbCgnU2FpbGVjLUJvbGQnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLmVvdD8jaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG5cdFx0dXJsKCcuLi9mb250cy9TYWlsZWMtQm9sZC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcblx0XHR1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL1NhaWxlYy1Cb2xkLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdBcGVyY3UgTW9ubyc7XG5cdHNyYzogdXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby5lb3QnKTtcblx0c3JjOiBsb2NhbCgnQXBlcmN1IE1vbm8nKSwgbG9jYWwoJ0FwZXJjdS1Nb25vJyksXG5cdFx0dXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LU1vbm8ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG5cdFx0dXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby53b2ZmJykgZm9ybWF0KCd3b2ZmJyksXG5cdFx0dXJsKCcuLi9mb250cy9BcGVyY3UtTW9uby50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG5AZm9udC1mYWNlIHtcblx0Zm9udC1mYW1pbHk6ICdBcGVyY3UnO1xuXHRzcmM6IHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0SXRhbGljLmVvdCcpO1xuXHRzcmM6IGxvY2FsKCdBcGVyY3UgTGlnaHQgSXRhbGljJyksIGxvY2FsKCdBcGVyY3UtTGlnaHRJdGFsaWMnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodEl0YWxpYy5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0SXRhbGljLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0SXRhbGljLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodEl0YWxpYy50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQGZvbnQtZmFjZSB7XG5cdGZvbnQtZmFtaWx5OiAnQXBlcmN1Jztcblx0c3JjOiB1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC5lb3QnKTtcblx0c3JjOiBsb2NhbCgnQXBlcmN1IExpZ2h0JyksIGxvY2FsKCdBcGVyY3UtTGlnaHQnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUxpZ2h0LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcblx0XHR1cmwoJy4uL2ZvbnRzL0FwZXJjdS1MaWdodC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyk7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuXG4vLyBAZm9udC1mYWNlIHtcbi8vIFx0Zm9udC1mYW1pbHk6ICdBcGVyY3UnO1xuLy8gXHRzcmM6IHVybCgnLi4vZm9udHMvQXBlcmN1LUJvbGQuZW90Jyk7XG4vLyBcdHNyYzogbG9jYWwoJ0FwZXJjdSBCb2xkJyksIGxvY2FsKCdBcGVyY3UtQm9sZCcpLFxuLy8gXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUJvbGQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbi8vIFx0XHR1cmwoJy4uL2ZvbnRzL0FwZXJjdS1Cb2xkLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuLy8gXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUJvbGQud29mZicpIGZvcm1hdCgnd29mZicpLFxuLy8gXHRcdHVybCgnLi4vZm9udHMvQXBlcmN1LUJvbGQudHRmJykgZm9ybWF0KCd0cnVldHlwZScpO1xuLy8gXHRmb250LXdlaWdodDogYm9sZDtcbi8vIFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuLy8gfVxuIiwiYm9keXtcblx0Zm9udC1mYW1pbHk6IEBhcGVyY3U7XG5cdGZvbnQtc2l6ZTogQHAtRlM7XG5cdGxpbmUtaGVpZ2h0OiAxLjY1O1xuXG5cdCYubWVudS1vcGVuIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cdCYubW9kYWwtb3BlbiB7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHR9XG5cdCYucmVzaXppbmcsXG5cdCYubG9hZGluZ3tcblx0XHQjdW5pdmVyc2V7XG5cdFx0XHQub3BhY2l0eSgwKTtcblx0XHRcdGhlaWdodDogMTAwdmg7XG5cblx0XHRcdC5wYWdlLWhlYWRlcntcblx0XHRcdFx0LnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwLDI1dmgsMCkpO1xuXHRcdFx0fVxuXHRcdFx0LnByb2plY3Qtc2VjdGlvbntcblx0XHRcdFx0LnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwLDUwdmgsMCkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQjdW5pdmVyc2V7XG5cdFx0Ly8gdmlzaWJpbGl0eTogdmlzaWJsZTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0Lm9wYWNpdHkoMSk7XG5cdFx0LnRyYW5zaXRpb25zKCBvcGFjaXR5IDQ1MG1zIDBtcyBlYXNlLWluLW91dCk7XG5cdH1cbn1cblxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5zcGFuIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgLy8gZm9udC1mYW1pbHk6IEBtb25vO1xuICAgIGZvbnQtZmFtaWx5OiBAYXBlcmN1O1xufVxuYXt9XG5cbnAsIC5we1xuXHRmb250LXNpemU6IEBwLUZTO1xuXHRsaW5lLWhlaWdodDogQHAtTEg7XG5cdGZvbnQtZmFtaWx5OiBAYXBlcmN1O1xuXHRmb250LXdlaWdodDogMzAwO1xuXHRjb2xvcjogQGNvcHk7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdGEge1xuXHRcdGNvbG9yOiBAZ3JlZW47XG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHR9XG59XG5cblxuLy89PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gPT09PSAgICAgIFR5cG9ncmFwaHkgXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuaDEsaDIsaDMsaDQsaDUsaDZ7XG5cdGF7Zm9udC1mYW1pbHk6IEBzYWlsZWM7fVxufVxuaDEsIC5oMXtcblx0Zm9udC1zaXplOiBAaDEtRlM7XG5cdGxpbmUtaGVpZ2h0OiBAaDEtTEg7XG5cdGZvbnQtZmFtaWx5OiBAc2FpbGVjO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IEBjb3B5O1xuXHRtYXJnaW4tYm90dG9tOiAyNXB4O1xuXHQmLndoaXRle1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxuXHQmLmdyZWVue1xuXHRcdGNvbG9yOiBAZ3JlZW47XG5cdH1cbn1cblxuaDIsIC5oMntcblx0Zm9udC1zaXplOiBAaDItRlM7XG5cdGxpbmUtaGVpZ2h0OiBAaDItTEg7XG5cdGZvbnQtZmFtaWx5OiBAc2FpbGVjO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IEBjb3B5O1xuXHQmLndoaXRle1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxufVxuXG5oMywgLmgze1xuXHRmb250LXNpemU6IEBoMy1GUztcblx0bGluZS1oZWlnaHQ6IEBoMy1MSDtcblx0Zm9udC1mYW1pbHk6IEBzYWlsZWM7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogQGNvcHk7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdCYud2hpdGV7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHR9XG5cdCYuYm9sZHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHQudGV4dC1ibG9jayAme1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1x0XG5cdH1cbn1cblxuaDQsIC5oNHtcblx0Zm9udC1zaXplOiBAaDQtRlM7XG5cdGxpbmUtaGVpZ2h0OiBAaDQtTEg7XG5cdGZvbnQtZmFtaWx5OiBAc2FpbGVjO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0Y29sb3I6IEBjb3B5O1xuXHQmLndoaXRle1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxufVxuXG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLy8gTGF6eSBMb2FkIEltYWdlcyAmIEdsb2JhbCBJbWFnZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5nbG9iYWwtYWxpZ25tZW50e1xuXHQucGwoMiwzKTtcblx0QG1lZGlhIEBwaG9uZXtcblx0XHQucGwoMSwxKTtcblx0fVxufVxuXG5cbi5zZWN0aW9uLXRpdGxle1xuXHQucm90YXRlKC05MGRlZyk7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTEzMHB4O1xuXHR0b3A6IGNhbGMoficoMTAwdmggLSA4MHZoKS8yJyk7XG5cdC50cmFuc2Zvcm0tb3JpZ2luKHRvcCwgcmlnaHQpO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0d2lkdGg6IDE1MHB4O1xuXHRjb2xvcjogI0JGQkZCRjtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRmb250LWZhbWlseTogQG1vbm87XG5cdC8vIGxpbmUtaGVpZ2h0OiAxMnB4O1xuXHRcblx0QG1lZGlhIEBwaG9uZXtcblx0XHQucm90YXRlKDBkZWcpO1xuXHRcdC5tbCgxLDEpO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0bWFyZ2luLXRvcDogLTIwcHg7XG5cdFx0bGVmdDogMHB4O1xuXHR9XG59XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIE1PQklMRVxuXG5AbWVkaWEgQHRhYmxldC1wb3J0cmFpdCB7XG5cdGgxLCAuaDEge1xuXHRcdGZvbnQtc2l6ZTogMzVweDtcblx0fVxuXHRoMiwgLmgye1xuXHRcdGZvbnQtc2l6ZTogMzBweDtcblx0fVxuXHRoMywgLmgze1xuXHRcdGZvbnQtc2l6ZTogMjRweDtcblx0fVxuXHRoNCwgLmg0e1xuXHRcdGZvbnQtc2l6ZTogMjBweDtcblx0fVxuXHRwLCAucCB7XG5cdFx0Zm9udC1zaXplOiAxN3B4O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjg1O1xuXHR9XG5cdGEudGV4dC1saW5rLCAudGV4dC1saW5rLWNsb25lIHtcblx0XHRmb250LXNpemU6IDE1cHg7XG5cdH1cblx0YSwgc3BhbiB7XG5cdFx0Ji5sYXJnZS1jdGEge1xuXHRcdFx0Zm9udC1zaXplOjE3cHg7XG5cdFx0fVxuXHR9XG5cdGxpIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdH1cbn1cblxuXG5AbWVkaWEgQHBob25lIHtcblx0aDEsIC5oMSB7XG5cdFx0Zm9udC1zaXplOiAyOHB4O1xuXHR9XG5cdGgyLCAuaDJ7XG5cdFx0Zm9udC1zaXplOiAyNXB4O1xuXHR9XG5cdGgzLCAuaDN7XG5cdFx0Zm9udC1zaXplOiAyMnB4O1xuXHR9XG5cdGg0LCAuaDR7XG5cdFx0Zm9udC1zaXplOiAxOXB4O1xuXHR9XG5cdHAsIC5wIHtcblx0XHRmb250LXNpemU6IDE3cHg7XG5cdH1cblx0YS50ZXh0LWxpbmssIC50ZXh0LWxpbmstY2xvbmUge1xuXHRcdGZvbnQtc2l6ZTogMTZweDtcblx0fVxuXHRhLCBzcGFuIHtcblx0XHQmLmxhcmdlLWN0YSB7XG5cdFx0XHRmb250LXNpemU6IDE3cHg7XG5cdFx0fVxuXHR9XG59XG5cbiIsIi5wYWdlLWhlYWRlcntcblx0LnRyYW5zaXRpb24odHJhbnNmb3JtLCA2NTBtcywgNTBtcywgQG91dFF1YWQpO1xuXHQuY29udGVudHtcblx0XHQud2lkdGgoNSw2KTtcblx0XHQuZ2xvYmFsLWFsaWdubWVudDtcblx0XHRwYWRkaW5nLXRvcDpAdmVydGljYWwtcGFkZGluZy14bGFyZ2U7XG5cdFx0cGFkZGluZy1ib3R0b206QHZlcnRpY2FsLXBhZGRpbmctbGFyZ2U7XG5cblx0XHRoMXtcblx0XHRcdG1hcmdpbi1ib3R0b206IDBweDtcblx0XHR9XG5cdFx0LnN1Yi1oZWFkZXJ7XG5cdFx0XHRmb250LWZhbWlseTogQG1vbm87XG5cdFx0XHRjb2xvcjogQGdyZXlDb3B5O1xuXHRcdH1cblx0fVxuXHRAbWVkaWEgQHBob25le1xuXHRcdC5jb250ZW50e1xuXHRcdFx0LndpZHRoKDEwLDExKTtcblx0XHRcdC5zdWItaGVhZGVye1xuXHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuLnByb2plY3Qtc2VjdGlvbntcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHR3aWR0aDogMTAwdnc7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LnRyYW5zaXRpb24odHJhbnNmb3JtLCA2NTBtcywgMTUwbXMsIEBvdXRRdWFkKTtcblx0LnByb2plY3Rze1xuXHRcdHBhZGRpbmctdG9wOiBjYWxjKH4nKDEwMHZoIC0gQHtwcm9qZWN0SGVpZ2h0fSkvMicpO1xuXHRcdHBhZGRpbmctYm90dG9tOkB2ZXJ0aWNhbC1wYWRkaW5nLWxhcmdlO1xuXHRcdC5nbG9iYWwtYWxpZ25tZW50O1xuXHRcdC8vIC5wcigxKTtcblx0XHQucHJvamVjdHtcblx0XHRcdGhlaWdodDogQHByb2plY3RIZWlnaHQ7XG5cdFx0XHRtaW4taGVpZ2h0OiA1MDBweDtcblx0XHRcdHdpZHRoOiA3MHZ3O1xuXHRcdFx0LmJvcmRlci1yYWRpdXMoNHB4KTtcblx0XHRcdG1hcmdpbi1yaWdodDogNnZ3O1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0LmZsZXgoZmxleCwgY29sdW1uLCBmbGV4LXN0YXJ0LCBjZW50ZXIpO1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0LnRyYW5zaXRpb25zKHRyYW5zZm9ybSA4NTBtcyAwbXMgQG91dFF1YWQgficsJyBib3gtc2hhZG93IDg1MG1zIDBtcyBAb3V0UXVhZCk7XG5cdFx0XHRcblx0XHRcdCY6YWZ0ZXJ7XG5cdFx0XHRcdGNvbnRlbnQ6Jyc7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0bGVmdDogMHB4O1xuXHRcdFx0XHR0b3A6IDBweDtcblx0XHRcdFx0cmlnaHQ6IDBweDtcblx0XHRcdFx0Ym90dG9tOiAwcHg7XG5cdFx0XHRcdC5ib3JkZXItcmFkaXVzKDRweCk7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBmYWRlKEBtaWRuaWdodCwgMTAlKTtcblx0XHRcdH1cblxuXHRcdFx0YXtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR6LWluZGV4OiAxMDAwO1xuXHRcdFx0fVxuXHRcdFx0aW1ne1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTotNSU7XG5cdFx0XHRcdGxlZnQ6IDQwJTtcblx0XHRcdFx0d2lkdGg6IDU1JTtcblx0XHRcdFx0LnRyYW5zaXRpb24oYWxsLCA2NTBtcywgMG1zLCBAb3V0UXVhZCk7XG5cdFx0XHRcdCYuY2VudGVye1xuXHRcdFx0XHRcdGJvdHRvbTphdXRvO1xuXHRcdFx0XHRcdHRvcDo1MCU7XG5cdFx0XHRcdFx0bGVmdDogNjUlO1xuXHRcdFx0XHRcdHdpZHRoOiA2MCU7XG5cdFx0XHRcdFx0LnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgtNTAlLC01MCUsMCkpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCYucmlnaHR7XG5cdFx0XHRcdFx0Ym90dG9tOmF1dG87XG5cdFx0XHRcdFx0dG9wOjUwJTtcblx0XHRcdFx0XHRsZWZ0OiA4MCU7XG5cdFx0XHRcdFx0d2lkdGg6IDkwJTtcblx0XHRcdFx0XHQudHJhbnNmb3JtKHRyYW5zbGF0ZTNkKC01MCUsLTUwJSwwKSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0Ji5mdWxse1xuXHRcdFx0XHRcdHRvcDotMi41JTtcblx0XHRcdFx0XHRyaWdodDotNSU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAgMTA1JTtcblx0XHRcdFx0XHR3aWR0aDogYXV0bztcblx0XHRcdFx0XHRsZWZ0OiB1bnNldDtcblx0XHRcdFx0XHQudHJhbnNmb3JtKHNjYWxlKDEuMDIsMS4wMikpO1xuXHRcdFx0XHRcdC50cmFuc2Zvcm0tb3JpZ2luKGNlbnRlciwgbGVmdCk7XG5cdFx0XHRcdFx0Ly8gLnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwJSwtNTAlLDApKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnRleHR7XG5cdFx0XHRcdHBhZGRpbmctbGVmdDogNHZ3O1xuXHRcdFx0XHR3aWR0aDogY2FsYyh+JzM1JSAtIDR2dycpO1xuXHRcdFx0XHRoM3tcblx0XHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHRcdC5tb3R0b3tcblx0XHRcdFx0XHRmb250LXNpemU6IEBwLUZTO1xuXHRcdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogMS40NTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNlcnZpY2Vze1xuXHRcdFx0XHR3aWR0aDogMzUlO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTogMzBweDtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA0dnc7XG5cdFx0XHRcdGxlZnQ6IDBweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdFx0XHRjb2xvcjogZmFkZSh3aGl0ZSwgODAlKTtcblx0XHRcdFx0Zm9udC1mYW1pbHk6IEBtb25vO1xuXHRcdFx0fVxuXHRcdFx0Ji5ibGFja3tcblx0XHRcdFx0LnRleHR7XG5cdFx0XHRcdFx0Lm1vdHRvLFxuXHRcdFx0XHRcdGgze1xuXHRcdFx0XHRcdFx0Y29sb3I6YmxhY2s7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5zZXJ2aWNlc3tcblx0XHRcdFx0XHRjb2xvcjogZmFkZShibGFjaywgODAlKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0LnRyYW5zZm9ybShzY2FsZSgxLjAxLDEuMDEpKTtcblx0XHRcdFx0LnNoYWRvdygwLDI1cHgsIDQwcHgsIC0xMHB4LCBmYWRlKEBtaWRuaWdodCwgMjUlKSk7XG5cdFx0XHRcdGltZ3tcblx0XHRcdFx0XHRib3R0b206MCU7XG5cdFx0XHRcdFx0Ji5jZW50ZXIsXG5cdFx0XHRcdFx0Ji5yaWdodHtcblx0XHRcdFx0XHRcdC50cmFuc2Zvcm0odHJhbnNsYXRlM2QoLTUwJSwtNTAlLDApIHNjYWxlKC45NSwuOTUpKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0Ji5mdWxse1xuXHRcdFx0XHRcdFx0LnRyYW5zZm9ybShzY2FsZSguOTUsLjk1KSk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9Ly9wcm9qZWN0c1xuXHR9XG5cdEBtZWRpYSBAdGFibGV0e1xuXHRcdC5wcm9qZWN0c3tcblx0XHRcdC5wcm9qZWN0e1xuXHRcdFx0XHRtaW4taGVpZ2h0OiA0NTBweDtcblx0XHRcdFx0aGVpZ2h0OiA2NXZoO1xuXHRcdFx0XHR3aWR0aDogODV2dztcblxuXHRcdFx0XHRpbWd7XG5cdFx0XHRcdFx0bGVmdDogNTAlO1xuXHRcdFx0XHRcdHdpZHRoOiA0NSU7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnRleHR7XG5cdFx0XHRcdFx0d2lkdGg6IDQ1JTtcblx0XHRcdFx0XHQubW90dG97XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IEBwLUZTIC0gNDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QG1lZGlhIEB0YWJsZXQtcG9ydHJhaXR7XG5cdFx0LnByb2plY3Rze1xuXHRcdFx0LnByb2plY3R7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IDQwMHB4O1xuXHRcdFx0XHRoZWlnaHQ6IDUwdmg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdEBtZWRpYSBAcGhvbmV7XG5cdFx0LnByb2plY3Rze1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwcHg7XG5cdFx0XHQucHJvamVjdHtcblx0XHRcdFx0bWFyZ2luOiBAdmVydGljYWwtcGFkZGluZy1zbWFsbCBhdXRvIDBweDtcblx0XHRcdFx0Lm1sKDEsMSk7XG5cdFx0XHRcdC5tcigxLDEpO1xuXHRcdFx0XHQud2lkdGgoMTAsMTEpO1xuXHRcdFx0XHQuYm94LXNpemluZygpO1xuXHRcdFx0XHRtaW4taGVpZ2h0OiAzMDBweDtcblx0XHRcdFx0aGVpZ2h0OiA2NXZoO1xuXHRcdFx0XHQuZmxleChmbGV4LCBjb2x1bW4sIGZsZXgtc3RhcnQsIGZsZXgtc3RhcnQpO1xuXHRcdFx0XHQudGV4dHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDUlO1xuXHRcdFx0XHRcdHdpZHRoOiA5MCU7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogQHZlcnRpY2FsLXBhZGRpbmctc21hbGw7XG5cdFx0XHRcdFx0aDN7XG5cdFx0XHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5tb3R0b3tcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogQHAtRlMgLSA0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHQuc2VydmljZXN7XG5cdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA1JTtcblx0XHRcdFx0XHR3aWR0aDogOTAlO1xuXHRcdFx0XHRcdGJvdHRvbTogMyU7XG5cdFx0XHRcdH1cblx0XHRcdFx0aW1ne1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6MzUlO1xuXHRcdFx0XHRcdGxlZnQ6IDUlO1xuXHRcdFx0XHRcdHdpZHRoOiA5MCU7XG5cdFx0XHRcdFx0LnRyYW5zaXRpb24oYWxsLCA2NTBtcywgMG1zLCBAb3V0UXVhZCk7XG5cdFx0XHRcdFx0Ji5jZW50ZXJ7XG5cdFx0XHRcdFx0XHR0b3A6MzUlO1xuXHRcdFx0XHRcdFx0bGVmdDogNSU7XG5cdFx0XHRcdFx0XHR3aWR0aDogOTAlO1xuXHRcdFx0XHRcdFx0LnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwJSwwJSwwKSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCYucmlnaHR7XG5cdFx0XHRcdFx0XHR0b3A6MzUlO1xuXHRcdFx0XHRcdFx0bGVmdDogMTAlO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEyNSU7XG5cdFx0XHRcdFx0XHQudHJhbnNmb3JtKHRyYW5zbGF0ZTNkKDAlLDAlLDApKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0Jjpob3Zlcntcblx0XHRcdFx0XHQudHJhbnNmb3JtKHNjYWxlKDEsMSkpO1xuXHRcdFx0XHRcdC5zaGFkb3coMCwyNXB4LCA0MHB4LCAtMTBweCwgZmFkZShAbWlkbmlnaHQsIDI1JSkpO1xuXHRcdFx0XHRcdGltZ3tcblx0XHRcdFx0XHRcdGJvdHRvbTowJTtcblx0XHRcdFx0XHRcdCYuY2VudGVyLFxuXHRcdFx0XHRcdFx0Ji5yaWdodHtcblx0XHRcdFx0XHRcdFx0LnRyYW5zZm9ybSh0cmFuc2xhdGUzZCgwJSwwJSwwKSBzY2FsZSgxLDEpKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVx0XG5cbi5iaW97XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LnNlY3Rpb24tdGl0bGV7XG5cdFx0dG9wOiBjYWxjKH4nQHt2ZXJ0aWNhbC1wYWRkaW5nLWxhcmdlfSArIDVweCcpO1xuXHR9XG5cdC5jb250ZW50e1xuXHRcdC5nbG9iYWwtYWxpZ25tZW50O1xuXHRcdHBhZGRpbmctdG9wOkB2ZXJ0aWNhbC1wYWRkaW5nLWxhcmdlOyBcblx0XHRwYWRkaW5nLWJvdHRvbTpAdmVydGljYWwtcGFkZGluZy1sYXJnZTsgXG5cdFx0LndpZHRoKDcsNik7XG5cdFx0aDIsIGgxLCBoMywgaDR7XG5cdFx0XHRtYXJnaW4tdG9wOiAwcHg7XG5cdFx0fVxuXHRcdC5zb2NpYWx7XG5cdFx0XHRmb250LWZhbWlseTogQG1vbm87XG5cdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRtYXJnaW4tdG9wOiBAdmVydGljYWwtcGFkZGluZztcblx0XHRcdGF7XG5cdFx0XHRcdGNvbG9yOiAjOUI5QjlCO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdFx0XHRcdCY6aG92ZXJ7XG5cdFx0XHRcdFx0Y29sb3I6QGdyZWVuO1xuXHRcdFx0XHR9XG5cdFx0XHRcdCY6bGFzdC1jaGlsZHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRAbWVkaWEgQHBob25le1xuXHRcdC5zZWN0aW9uLXRpdGxle1xuXHRcdFx0dG9wOiBjYWxjKH4nQHt2ZXJ0aWNhbC1wYWRkaW5nfSAtIDM1cHgnKTtcblx0XHR9XG5cdFx0LmNvbnRlbnR7XG5cdFx0XHRwYWRkaW5nLXRvcDpAdmVydGljYWwtcGFkZGluZzsgXG5cdFx0XHRwYWRkaW5nLWJvdHRvbTpAdmVydGljYWwtcGFkZGluZzsgXG5cdFx0XHQud2lkdGgoMTAsMTEpO1xuXHRcdH1cblx0fVxufVxuXG4uYWZmaXh7XG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xuXHR3aWR0aDogMTAwJTtcblx0Ly8gcGFkZGluZy10b3A6IGNhbGMoficoMTAwdmggLSBAe3Byb2plY3RIZWlnaHR9KS8yJyk7XG5cdCYuZml4ZWR7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdHRvcDowcHg7XG5cdH1cblx0Ji5zZXR7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHR9XG59Il19 */
