@layer reset;
@layer base;
/* stylelint-disable */
:root {
  --iti-hover-color: rgba(0, 0, 0, 0.05);
  --iti-border-color: #ccc;
  --iti-dialcode-color: #999;
  --iti-dropdown-bg: white;
  --iti-search-icon-color: #999;
  --iti-spacer-horizontal: 8px;
  --iti-flag-height: 12px;
  --iti-flag-width: 16px;
  --iti-border-width: 1px;
  --iti-arrow-height: 4px;
  --iti-arrow-width: 6px;
  --iti-triangle-border: calc(var(--iti-arrow-width) / 2);
  --iti-arrow-padding: 6px;
  --iti-arrow-color: #555;
  --iti-path-flags-1x: url("../img/flags.webp");
  --iti-path-flags-2x: url("../img/flags@2x.webp");
  --iti-path-globe-1x: url("../img/globe.webp");
  --iti-path-globe-2x: url("../img/globe@2x.webp");
  --iti-flag-sprite-width: 3904px;
  --iti-flag-sprite-height: 12px;
  --iti-mobile-popup-margin: 30px;
}

.iti {
  position: relative;
  display: inline-block;
}

.iti * {
  box-sizing: border-box;
}

.iti__a11y-text {
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  overflow: hidden;
  position: absolute;
}

.iti input.iti__tel-input,
.iti input.iti__tel-input[type=text],
.iti input.iti__tel-input[type=tel] {
  position: relative;
  z-index: 0;
  margin: 0 !important;
}

[dir=rtl] .iti input.iti__tel-input,
[dir=rtl] .iti input.iti__tel-input[type=text],
[dir=rtl] .iti input.iti__tel-input[type=tel] {
  text-align: right;
}

.iti__country-container {
  position: absolute;
  top: 0;
  bottom: 0;
  padding: var(--iti-border-width);
}

.iti__selected-country {
  z-index: 1;
  position: relative;
  display: flex;
  align-items: center;
  height: 100%;
  background: none;
  border: 0;
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  border-radius: 0;
  font-weight: inherit;
  line-height: inherit;
  text-decoration: none;
}

.iti__selected-country-primary {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--iti-arrow-padding) 0 var(--iti-spacer-horizontal);
}

.iti__arrow {
  margin-left: var(--iti-arrow-padding);
  width: 0;
  height: 0;
  border-left: var(--iti-triangle-border) solid transparent;
  border-right: var(--iti-triangle-border) solid transparent;
  border-top: var(--iti-arrow-height) solid var(--iti-arrow-color);
}

[dir=rtl] .iti__arrow {
  margin-right: var(--iti-arrow-padding);
  margin-left: 0;
}

.iti__arrow--up {
  border-top: none;
  border-bottom: var(--iti-arrow-height) solid var(--iti-arrow-color);
}

.iti__dropdown-content {
  border-radius: 3px;
  background-color: var(--iti-dropdown-bg);
}

.iti--inline-dropdown .iti__dropdown-content {
  position: absolute;
  z-index: 2;
  margin-top: 3px;
  margin-left: calc(var(--iti-border-width) * -1);
  border: var(--iti-border-width) solid var(--iti-border-color);
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.2);
}

.iti__search-input {
  width: 100%;
  border-width: 0;
  border-radius: 3px;
  padding-left: 30px;
  padding-right: 28px;
}

[dir=rtl] .iti__search-input {
  padding-left: inherit;
  padding-right: 30px;
  background-position: right 8px center;
}

.iti__search-input + .iti__country-list {
  border-top: 1px solid var(--iti-border-color);
}

.iti__search-input::-webkit-search-cancel-button {
  -webkit-appearance: none;
          appearance: none;
}

.iti__search-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.iti__search-icon {
  position: absolute;
  left: 8px;
  display: flex;
  pointer-events: none;
}

[dir=rtl] .iti__search-icon {
  left: auto;
  right: 8px;
}

.iti__search-icon-svg {
  stroke: var(--iti-search-icon-color);
  fill: none;
  stroke-width: 3;
}

.iti__search-clear {
  position: absolute;
  right: 4px;
  background: transparent;
  border: 0;
  border-radius: 3px;
  cursor: pointer;
  padding: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease;
  width: 24px;
  height: 24px;
}

.iti__search-clear .iti__search-clear-x {
  stroke-width: 2;
}

.iti__search-clear .iti__search-clear-bg {
  fill: var(--iti-search-icon-color);
}

[dir=rtl] .iti__search-clear {
  right: auto;
  left: 4px;
}

.iti__search-clear:hover, .iti__search-clear:focus-visible {
  background: var(--iti-hover-color);
  outline: none;
}

.iti__no-results {
  text-align: center;
  padding: 30px 0;
}

.iti__country-list {
  list-style: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.iti--inline-dropdown .iti__country-list {
  max-height: 185px;
}

.iti--flexible-dropdown-width .iti__country-list {
  white-space: nowrap;
}

@media (max-width: 500px) {
  .iti--flexible-dropdown-width .iti__country-list {
    white-space: normal;
  }
}
.iti__country {
  display: flex;
  align-items: center;
  padding: 8px var(--iti-spacer-horizontal);
  outline: none;
}

.iti__dial-code {
  color: var(--iti-dialcode-color);
}

.iti__country.iti__highlight {
  background-color: var(--iti-hover-color);
}

.iti__country-list .iti__flag, .iti__country-name {
  margin-right: var(--iti-spacer-horizontal);
}

[dir=rtl] .iti__country-list .iti__flag, [dir=rtl] .iti__country-name {
  margin-right: 0;
  margin-left: var(--iti-spacer-horizontal);
}

.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) button.iti__selected-country {
  cursor: pointer;
}

.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country-primary:hover,
.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country:has(+ .iti__dropdown-content:hover) .iti__selected-country-primary {
  background-color: var(--iti-hover-color);
}

.iti .iti__selected-dial-code {
  margin-left: 4px;
}

[dir=rtl] .iti .iti__selected-dial-code {
  margin-left: 0;
  margin-right: 4px;
}

.iti--container {
  position: fixed;
  top: -1000px;
  left: -1000px;
  z-index: 1060;
  padding: var(--iti-border-width);
}

.iti--container:hover {
  cursor: pointer;
}

.iti__hide {
  display: none;
}

.iti__v-hide {
  visibility: hidden;
}

.iti--fullscreen-popup.iti--container {
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  position: fixed;
  padding: var(--iti-mobile-popup-margin);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.iti--fullscreen-popup .iti__dropdown-content {
  display: flex;
  flex-direction: column;
  max-height: 100%;
  position: relative;
}

.iti--fullscreen-popup .iti__country {
  padding: 10px 10px;
  line-height: 1.5em;
}

.iti__flag {
  --iti-flag-offset: 100px;
  height: var(--iti-flag-height);
  width: var(--iti-flag-width);
  border-radius: 1px;
  box-shadow: 0px 0px 1px 0px #888;
  background-image: var(--iti-path-flags-1x);
  background-repeat: no-repeat;
  background-position: var(--iti-flag-offset) 0;
  background-size: var(--iti-flag-sprite-width) var(--iti-flag-sprite-height);
}

.iti__ac {
  --iti-flag-offset: 0px;
}

.iti__ad {
  --iti-flag-offset: -16px;
}

.iti__ae {
  --iti-flag-offset: -32px;
}

.iti__af {
  --iti-flag-offset: -48px;
}

.iti__ag {
  --iti-flag-offset: -64px;
}

.iti__ai {
  --iti-flag-offset: -80px;
}

.iti__al {
  --iti-flag-offset: -96px;
}

.iti__am {
  --iti-flag-offset: -112px;
}

.iti__ao {
  --iti-flag-offset: -128px;
}

.iti__ar {
  --iti-flag-offset: -144px;
}

.iti__as {
  --iti-flag-offset: -160px;
}

.iti__at {
  --iti-flag-offset: -176px;
}

.iti__au {
  --iti-flag-offset: -192px;
}

.iti__aw {
  --iti-flag-offset: -208px;
}

.iti__ax {
  --iti-flag-offset: -224px;
}

.iti__az {
  --iti-flag-offset: -240px;
}

.iti__ba {
  --iti-flag-offset: -256px;
}

.iti__bb {
  --iti-flag-offset: -272px;
}

.iti__bd {
  --iti-flag-offset: -288px;
}

.iti__be {
  --iti-flag-offset: -304px;
}

.iti__bf {
  --iti-flag-offset: -320px;
}

.iti__bg {
  --iti-flag-offset: -336px;
}

.iti__bh {
  --iti-flag-offset: -352px;
}

.iti__bi {
  --iti-flag-offset: -368px;
}

.iti__bj {
  --iti-flag-offset: -384px;
}

.iti__bl {
  --iti-flag-offset: -400px;
}

.iti__bm {
  --iti-flag-offset: -416px;
}

.iti__bn {
  --iti-flag-offset: -432px;
}

.iti__bo {
  --iti-flag-offset: -448px;
}

.iti__bq {
  --iti-flag-offset: -464px;
}

.iti__br {
  --iti-flag-offset: -480px;
}

.iti__bs {
  --iti-flag-offset: -496px;
}

.iti__bt {
  --iti-flag-offset: -512px;
}

.iti__bw {
  --iti-flag-offset: -528px;
}

.iti__by {
  --iti-flag-offset: -544px;
}

.iti__bz {
  --iti-flag-offset: -560px;
}

.iti__ca {
  --iti-flag-offset: -576px;
}

.iti__cc {
  --iti-flag-offset: -592px;
}

.iti__cd {
  --iti-flag-offset: -608px;
}

.iti__cf {
  --iti-flag-offset: -624px;
}

.iti__cg {
  --iti-flag-offset: -640px;
}

.iti__ch {
  --iti-flag-offset: -656px;
}

.iti__ci {
  --iti-flag-offset: -672px;
}

.iti__ck {
  --iti-flag-offset: -688px;
}

.iti__cl {
  --iti-flag-offset: -704px;
}

.iti__cm {
  --iti-flag-offset: -720px;
}

.iti__cn {
  --iti-flag-offset: -736px;
}

.iti__co {
  --iti-flag-offset: -752px;
}

.iti__cr {
  --iti-flag-offset: -768px;
}

.iti__cu {
  --iti-flag-offset: -784px;
}

.iti__cv {
  --iti-flag-offset: -800px;
}

.iti__cw {
  --iti-flag-offset: -816px;
}

.iti__cx {
  --iti-flag-offset: -832px;
}

.iti__cy {
  --iti-flag-offset: -848px;
}

.iti__cz {
  --iti-flag-offset: -864px;
}

.iti__de {
  --iti-flag-offset: -880px;
}

.iti__dj {
  --iti-flag-offset: -896px;
}

.iti__dk {
  --iti-flag-offset: -912px;
}

.iti__dm {
  --iti-flag-offset: -928px;
}

.iti__do {
  --iti-flag-offset: -944px;
}

.iti__dz {
  --iti-flag-offset: -960px;
}

.iti__ec {
  --iti-flag-offset: -976px;
}

.iti__ee {
  --iti-flag-offset: -992px;
}

.iti__eg {
  --iti-flag-offset: -1008px;
}

.iti__eh {
  --iti-flag-offset: -1024px;
}

.iti__er {
  --iti-flag-offset: -1040px;
}

.iti__es {
  --iti-flag-offset: -1056px;
}

.iti__et {
  --iti-flag-offset: -1072px;
}

.iti__fi {
  --iti-flag-offset: -1088px;
}

.iti__fj {
  --iti-flag-offset: -1104px;
}

.iti__fk {
  --iti-flag-offset: -1120px;
}

.iti__fm {
  --iti-flag-offset: -1136px;
}

.iti__fo {
  --iti-flag-offset: -1152px;
}

.iti__fr {
  --iti-flag-offset: -1168px;
}

.iti__ga {
  --iti-flag-offset: -1184px;
}

.iti__gb {
  --iti-flag-offset: -1200px;
}

.iti__gd {
  --iti-flag-offset: -1216px;
}

.iti__ge {
  --iti-flag-offset: -1232px;
}

.iti__gf {
  --iti-flag-offset: -1248px;
}

.iti__gg {
  --iti-flag-offset: -1264px;
}

.iti__gh {
  --iti-flag-offset: -1280px;
}

.iti__gi {
  --iti-flag-offset: -1296px;
}

.iti__gl {
  --iti-flag-offset: -1312px;
}

.iti__gm {
  --iti-flag-offset: -1328px;
}

.iti__gn {
  --iti-flag-offset: -1344px;
}

.iti__gp {
  --iti-flag-offset: -1360px;
}

.iti__gq {
  --iti-flag-offset: -1376px;
}

.iti__gr {
  --iti-flag-offset: -1392px;
}

.iti__gt {
  --iti-flag-offset: -1408px;
}

.iti__gu {
  --iti-flag-offset: -1424px;
}

.iti__gw {
  --iti-flag-offset: -1440px;
}

.iti__gy {
  --iti-flag-offset: -1456px;
}

.iti__hk {
  --iti-flag-offset: -1472px;
}

.iti__hn {
  --iti-flag-offset: -1488px;
}

.iti__hr {
  --iti-flag-offset: -1504px;
}

.iti__ht {
  --iti-flag-offset: -1520px;
}

.iti__hu {
  --iti-flag-offset: -1536px;
}

.iti__id {
  --iti-flag-offset: -1552px;
}

.iti__ie {
  --iti-flag-offset: -1568px;
}

.iti__il {
  --iti-flag-offset: -1584px;
}

.iti__im {
  --iti-flag-offset: -1600px;
}

.iti__in {
  --iti-flag-offset: -1616px;
}

.iti__io {
  --iti-flag-offset: -1632px;
}

.iti__iq {
  --iti-flag-offset: -1648px;
}

.iti__ir {
  --iti-flag-offset: -1664px;
}

.iti__is {
  --iti-flag-offset: -1680px;
}

.iti__it {
  --iti-flag-offset: -1696px;
}

.iti__je {
  --iti-flag-offset: -1712px;
}

.iti__jm {
  --iti-flag-offset: -1728px;
}

.iti__jo {
  --iti-flag-offset: -1744px;
}

.iti__jp {
  --iti-flag-offset: -1760px;
}

.iti__ke {
  --iti-flag-offset: -1776px;
}

.iti__kg {
  --iti-flag-offset: -1792px;
}

.iti__kh {
  --iti-flag-offset: -1808px;
}

.iti__ki {
  --iti-flag-offset: -1824px;
}

.iti__km {
  --iti-flag-offset: -1840px;
}

.iti__kn {
  --iti-flag-offset: -1856px;
}

.iti__kp {
  --iti-flag-offset: -1872px;
}

.iti__kr {
  --iti-flag-offset: -1888px;
}

.iti__kw {
  --iti-flag-offset: -1904px;
}

.iti__ky {
  --iti-flag-offset: -1920px;
}

.iti__kz {
  --iti-flag-offset: -1936px;
}

.iti__la {
  --iti-flag-offset: -1952px;
}

.iti__lb {
  --iti-flag-offset: -1968px;
}

.iti__lc {
  --iti-flag-offset: -1984px;
}

.iti__li {
  --iti-flag-offset: -2000px;
}

.iti__lk {
  --iti-flag-offset: -2016px;
}

.iti__lr {
  --iti-flag-offset: -2032px;
}

.iti__ls {
  --iti-flag-offset: -2048px;
}

.iti__lt {
  --iti-flag-offset: -2064px;
}

.iti__lu {
  --iti-flag-offset: -2080px;
}

.iti__lv {
  --iti-flag-offset: -2096px;
}

.iti__ly {
  --iti-flag-offset: -2112px;
}

.iti__ma {
  --iti-flag-offset: -2128px;
}

.iti__mc {
  --iti-flag-offset: -2144px;
}

.iti__md {
  --iti-flag-offset: -2160px;
}

.iti__me {
  --iti-flag-offset: -2176px;
}

.iti__mf {
  --iti-flag-offset: -2192px;
}

.iti__mg {
  --iti-flag-offset: -2208px;
}

.iti__mh {
  --iti-flag-offset: -2224px;
}

.iti__mk {
  --iti-flag-offset: -2240px;
}

.iti__ml {
  --iti-flag-offset: -2256px;
}

.iti__mm {
  --iti-flag-offset: -2272px;
}

.iti__mn {
  --iti-flag-offset: -2288px;
}

.iti__mo {
  --iti-flag-offset: -2304px;
}

.iti__mp {
  --iti-flag-offset: -2320px;
}

.iti__mq {
  --iti-flag-offset: -2336px;
}

.iti__mr {
  --iti-flag-offset: -2352px;
}

.iti__ms {
  --iti-flag-offset: -2368px;
}

.iti__mt {
  --iti-flag-offset: -2384px;
}

.iti__mu {
  --iti-flag-offset: -2400px;
}

.iti__mv {
  --iti-flag-offset: -2416px;
}

.iti__mw {
  --iti-flag-offset: -2432px;
}

.iti__mx {
  --iti-flag-offset: -2448px;
}

.iti__my {
  --iti-flag-offset: -2464px;
}

.iti__mz {
  --iti-flag-offset: -2480px;
}

.iti__na {
  --iti-flag-offset: -2496px;
}

.iti__nc {
  --iti-flag-offset: -2512px;
}

.iti__ne {
  --iti-flag-offset: -2528px;
}

.iti__nf {
  --iti-flag-offset: -2544px;
}

.iti__ng {
  --iti-flag-offset: -2560px;
}

.iti__ni {
  --iti-flag-offset: -2576px;
}

.iti__nl {
  --iti-flag-offset: -2592px;
}

.iti__no {
  --iti-flag-offset: -2608px;
}

.iti__np {
  --iti-flag-offset: -2624px;
}

.iti__nr {
  --iti-flag-offset: -2640px;
}

.iti__nu {
  --iti-flag-offset: -2656px;
}

.iti__nz {
  --iti-flag-offset: -2672px;
}

.iti__om {
  --iti-flag-offset: -2688px;
}

.iti__pa {
  --iti-flag-offset: -2704px;
}

.iti__pe {
  --iti-flag-offset: -2720px;
}

.iti__pf {
  --iti-flag-offset: -2736px;
}

.iti__pg {
  --iti-flag-offset: -2752px;
}

.iti__ph {
  --iti-flag-offset: -2768px;
}

.iti__pk {
  --iti-flag-offset: -2784px;
}

.iti__pl {
  --iti-flag-offset: -2800px;
}

.iti__pm {
  --iti-flag-offset: -2816px;
}

.iti__pr {
  --iti-flag-offset: -2832px;
}

.iti__ps {
  --iti-flag-offset: -2848px;
}

.iti__pt {
  --iti-flag-offset: -2864px;
}

.iti__pw {
  --iti-flag-offset: -2880px;
}

.iti__py {
  --iti-flag-offset: -2896px;
}

.iti__qa {
  --iti-flag-offset: -2912px;
}

.iti__re {
  --iti-flag-offset: -2928px;
}

.iti__ro {
  --iti-flag-offset: -2944px;
}

.iti__rs {
  --iti-flag-offset: -2960px;
}

.iti__ru {
  --iti-flag-offset: -2976px;
}

.iti__rw {
  --iti-flag-offset: -2992px;
}

.iti__sa {
  --iti-flag-offset: -3008px;
}

.iti__sb {
  --iti-flag-offset: -3024px;
}

.iti__sc {
  --iti-flag-offset: -3040px;
}

.iti__sd {
  --iti-flag-offset: -3056px;
}

.iti__se {
  --iti-flag-offset: -3072px;
}

.iti__sg {
  --iti-flag-offset: -3088px;
}

.iti__sh {
  --iti-flag-offset: -3104px;
}

.iti__si {
  --iti-flag-offset: -3120px;
}

.iti__sj {
  --iti-flag-offset: -3136px;
}

.iti__sk {
  --iti-flag-offset: -3152px;
}

.iti__sl {
  --iti-flag-offset: -3168px;
}

.iti__sm {
  --iti-flag-offset: -3184px;
}

.iti__sn {
  --iti-flag-offset: -3200px;
}

.iti__so {
  --iti-flag-offset: -3216px;
}

.iti__sr {
  --iti-flag-offset: -3232px;
}

.iti__ss {
  --iti-flag-offset: -3248px;
}

.iti__st {
  --iti-flag-offset: -3264px;
}

.iti__sv {
  --iti-flag-offset: -3280px;
}

.iti__sx {
  --iti-flag-offset: -3296px;
}

.iti__sy {
  --iti-flag-offset: -3312px;
}

.iti__sz {
  --iti-flag-offset: -3328px;
}

.iti__tc {
  --iti-flag-offset: -3344px;
}

.iti__td {
  --iti-flag-offset: -3360px;
}

.iti__tg {
  --iti-flag-offset: -3376px;
}

.iti__th {
  --iti-flag-offset: -3392px;
}

.iti__tj {
  --iti-flag-offset: -3408px;
}

.iti__tk {
  --iti-flag-offset: -3424px;
}

.iti__tl {
  --iti-flag-offset: -3440px;
}

.iti__tm {
  --iti-flag-offset: -3456px;
}

.iti__tn {
  --iti-flag-offset: -3472px;
}

.iti__to {
  --iti-flag-offset: -3488px;
}

.iti__tr {
  --iti-flag-offset: -3504px;
}

.iti__tt {
  --iti-flag-offset: -3520px;
}

.iti__tv {
  --iti-flag-offset: -3536px;
}

.iti__tw {
  --iti-flag-offset: -3552px;
}

.iti__tz {
  --iti-flag-offset: -3568px;
}

.iti__ua {
  --iti-flag-offset: -3584px;
}

.iti__ug {
  --iti-flag-offset: -3600px;
}

.iti__us {
  --iti-flag-offset: -3616px;
}

.iti__uy {
  --iti-flag-offset: -3632px;
}

.iti__uz {
  --iti-flag-offset: -3648px;
}

.iti__va {
  --iti-flag-offset: -3664px;
}

.iti__vc {
  --iti-flag-offset: -3680px;
}

.iti__ve {
  --iti-flag-offset: -3696px;
}

.iti__vg {
  --iti-flag-offset: -3712px;
}

.iti__vi {
  --iti-flag-offset: -3728px;
}

.iti__vn {
  --iti-flag-offset: -3744px;
}

.iti__vu {
  --iti-flag-offset: -3760px;
}

.iti__wf {
  --iti-flag-offset: -3776px;
}

.iti__ws {
  --iti-flag-offset: -3792px;
}

.iti__xk {
  --iti-flag-offset: -3808px;
}

.iti__ye {
  --iti-flag-offset: -3824px;
}

.iti__yt {
  --iti-flag-offset: -3840px;
}

.iti__za {
  --iti-flag-offset: -3856px;
}

.iti__zm {
  --iti-flag-offset: -3872px;
}

.iti__zw {
  --iti-flag-offset: -3888px;
}

.iti__globe {
  background-image: var(--iti-path-globe-1x);
  background-size: contain;
  background-position: right;
  box-shadow: none;
  height: 19px;
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2x) {
  .iti__flag {
    background-image: var(--iti-path-flags-2x);
  }
  .iti__globe {
    background-image: var(--iti-path-globe-2x);
  }
}
/* stylelint-enable */
/*---TEXT AND FONT---*/
/*---BACKGROUND---*/
/*---POSITIONING---*/
/*---CONTENT---*/
/*---LISTS---*/
/*---BORDER ARROWS---*/
/**Forms**/
/** DEFAULT OVERRIDES **/
@layer base {
  .fieldWrapper,
  .umbraco-forms-field.shortanswer,
  .umbraco-forms-field.date,
  .umbraco-forms-field.password {
    position: relative;
    max-width: 500px;
  }
  .fieldWrapper label:not(.checkboxLabel),
  .umbraco-forms-field.shortanswer label:not(.checkboxLabel),
  .umbraco-forms-field.date label:not(.checkboxLabel),
  .umbraco-forms-field.password label:not(.checkboxLabel) {
    line-height: 1;
    white-space: normal;
  }
  .fieldWrapper input:not([type=checkbox]):not([type=radio]),
  .umbraco-forms-field.shortanswer input:not([type=checkbox]):not([type=radio]),
  .umbraco-forms-field.date input:not([type=checkbox]):not([type=radio]),
  .umbraco-forms-field.password input:not([type=checkbox]):not([type=radio]) {
    -webkit-appearance: none;
            appearance: none;
    position: relative;
    white-space: normal;
    line-height: 1;
    min-width: 100%;
  }
  .fieldWrapper input::-ms-reveal,
  .fieldWrapper input::-ms-clear,
  .umbraco-forms-field.shortanswer input::-ms-reveal,
  .umbraco-forms-field.shortanswer input::-ms-clear,
  .umbraco-forms-field.date input::-ms-reveal,
  .umbraco-forms-field.date input::-ms-clear,
  .umbraco-forms-field.password input::-ms-reveal,
  .umbraco-forms-field.password input::-ms-clear {
    display: none;
  }
  .fieldWrapper .description,
  .umbraco-forms-field.shortanswer .description,
  .umbraco-forms-field.date .description,
  .umbraco-forms-field.password .description {
    margin-top: 6px;
    font-size: 0.84em;
    color: color-mix(in srgb, var(--basic) calc(0.85 * 100%), transparent);
  }
  .fieldWrapper textarea,
  .umbraco-forms-field.longanswer textarea {
    -webkit-appearance: none;
            appearance: none;
    position: relative;
    white-space: normal;
    line-height: 1;
    min-width: 100%;
  }
  .dropdownWrapper,
  .umbraco-forms-field.dropdown {
    position: relative;
    max-width: 500px;
  }
  .dropdownWrapper select,
  .umbraco-forms-field.dropdown select {
    -webkit-appearance: none;
            appearance: none;
    position: relative;
    white-space: normal;
    line-height: 1;
    min-width: 100%;
    background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
    background-repeat: no-repeat;
    background-position: 100% 50%;
    background-size: 25px 50px;
  }
  .dropdownWrapper select::-ms-expand,
  .umbraco-forms-field.dropdown select::-ms-expand {
    display: none;
  }
  .controlWrapper,
  .adg-umbraco-forms-controlwrapper {
    border-bottom: 2px solid var(--light-grey);
    margin-bottom: 15px;
    padding-bottom: 10px;
  }
  .controlWrapper:last-child,
  .adg-umbraco-forms-controlwrapper:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .controlWrapper .control,
  .adg-umbraco-forms-controlwrapper .control {
    display: flex;
    align-items: center;
  }
  .controlWrapper label,
  .adg-umbraco-forms-controlwrapper label {
    font-size: 1.2em;
    white-space: nowrap;
    cursor: pointer;
  }
  .controlWrapper .description,
  .adg-umbraco-forms-controlwrapper .description {
    margin-top: 6px;
    font-size: 0.84em;
    line-height: 1.3em;
    color: color-mix(in srgb, var(--basic) calc(0.85 * 100%), transparent);
  }
  .fieldWrapper.enrolleeName {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    z-index: -1;
  }
  .styledFieldset,
  .umbraco-forms-fieldset {
    position: relative;
    border: 2px solid var(--light-grey);
    padding: 20px;
    background-color: color-mix(in srgb, var(--light-grey) calc(0.4 * 100%), transparent);
    border-radius: var(--radius);
    min-width: 0;
    width: 100%;
  }
  .styledFieldset legend,
  .styledFieldset .groupLegend,
  .umbraco-forms-fieldset legend,
  .umbraco-forms-fieldset .groupLegend {
    padding: 5px 8px;
    border-radius: 0;
    background: transparent;
    text-align: center;
    width: 100%;
    background: transparent;
    border: 1px solid var(--primary);
    border-radius: 7px;
    font-family: var(--primary-font);
    font-weight: 700;
    font-size: 0.9em;
    text-transform: uppercase;
    color: var(--grape-juice);
  }
  .styledFieldset .groupLegend,
  .umbraco-forms-fieldset .groupLegend {
    position: relative;
    display: inline-block;
    margin: 0 auto 10px;
  }
  .styledFieldset .fieldsetGrid,
  .umbraco-forms-fieldset .fieldsetGrid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .styledFieldset .fieldsetGrid .fieldWrapper,
  .styledFieldset .fieldsetGrid .controlWrapper,
  .umbraco-forms-fieldset .fieldsetGrid .fieldWrapper,
  .umbraco-forms-fieldset .fieldsetGrid .controlWrapper {
    margin: 0;
  }
  .fieldWrapper,
  .umbraco-forms-field.shortanswer,
  .umbraco-forms-field.date,
  .umbraco-forms-field.password {
    margin: 10px auto;
  }
  .fieldWrapper label:not(.checkboxLabel),
  .umbraco-forms-field.shortanswer label:not(.checkboxLabel),
  .umbraco-forms-field.date label:not(.checkboxLabel),
  .umbraco-forms-field.password label:not(.checkboxLabel) {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 2;
    display: block;
    margin: 0 0 5px;
    border: 0;
    padding: 0;
    font-size: 0.8em;
    font-family: var(--primary-font);
    color: var(--basic);
  }
  .fieldWrapper input:not([type=checkbox]):not([type=radio]):not(.iti__search-input),
  .fieldWrapper textarea,
  .umbraco-forms-field.shortanswer input:not([type=checkbox]):not([type=radio]):not(.iti__search-input),
  .umbraco-forms-field.shortanswer textarea,
  .umbraco-forms-field.date input:not([type=checkbox]):not([type=radio]):not(.iti__search-input),
  .umbraco-forms-field.date textarea,
  .umbraco-forms-field.password input:not([type=checkbox]):not([type=radio]):not(.iti__search-input),
  .umbraco-forms-field.password textarea {
    position: relative;
    display: block;
    width: 100%;
    min-height: 48px;
    margin: 0;
    border: 2px solid var(--grey);
    padding: 23px 8px 6px;
    border-radius: var(--radius-sm);
    background-color: var(--light);
    text-align: left;
  }
  .fieldWrapper .showHide,
  .umbraco-forms-field.shortanswer .showHide,
  .umbraco-forms-field.date .showHide,
  .umbraco-forms-field.password .showHide {
    position: absolute;
    top: 0;
    right: 0;
    height: 53px;
    width: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    transform: scale(0.8);
    border-radius: var(--radius-sm);
    border: none;
    padding: 0;
    cursor: pointer;
    background-color: var(--brand-dark);
    color: var(--brand-dark-contrast);
  }
  @media (hover: hover) and (pointer: fine) {
    .fieldWrapper .showHide:hover,
    .umbraco-forms-field.shortanswer .showHide:hover,
    .umbraco-forms-field.date .showHide:hover,
    .umbraco-forms-field.password .showHide:hover {
      background-color: var(--brand-bright);
      color: var(--brand-bright-contrast);
    }
  }
  [data-browser=ie] .fieldWrapper .showHide:hover,
  [data-browser=ie] .umbraco-forms-field.shortanswer .showHide:hover,
  [data-browser=ie] .umbraco-forms-field.date .showHide:hover,
  [data-browser=ie] .umbraco-forms-field.password .showHide:hover {
    background-color: var(--brand-bright);
    color: var(--brand-bright-contrast);
  }
  .ie .fieldWrapper .showHide:hover,
  .ie .umbraco-forms-field.shortanswer .showHide:hover,
  .ie .umbraco-forms-field.date .showHide:hover,
  .ie .umbraco-forms-field.password .showHide:hover {
    background-color: var(--brand-bright);
    color: var(--brand-bright-contrast);
  }
  .fieldWrapper .showHide.focus-visible,
  .umbraco-forms-field.shortanswer .showHide.focus-visible,
  .umbraco-forms-field.date .showHide.focus-visible,
  .umbraco-forms-field.password .showHide.focus-visible {
    background-color: var(--brand-bright);
    color: var(--brand-bright-contrast);
  }
  .fieldWrapper .showHide:focus-visible,
  .umbraco-forms-field.shortanswer .showHide:focus-visible,
  .umbraco-forms-field.date .showHide:focus-visible,
  .umbraco-forms-field.password .showHide:focus-visible {
    background-color: var(--brand-bright);
    color: var(--brand-bright-contrast);
  }
  .fieldWrapper .showHide[aria-checked=true] .icon:after,
  .umbraco-forms-field.shortanswer .showHide[aria-checked=true] .icon:after,
  .umbraco-forms-field.date .showHide[aria-checked=true] .icon:after,
  .umbraco-forms-field.password .showHide[aria-checked=true] .icon:after {
    content: "";
    width: 3px;
    height: 20px;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transform: skewX(-45deg);
    background: currentColor;
  }
  .fieldWrapper .showHide .icon,
  .umbraco-forms-field.shortanswer .showHide .icon,
  .umbraco-forms-field.date .showHide .icon,
  .umbraco-forms-field.password .showHide .icon {
    font-size: 1.2em;
  }
  .fieldWrapper #Password:focus + #requirements,
  .umbraco-forms-field.shortanswer #Password:focus + #requirements,
  .umbraco-forms-field.date #Password:focus + #requirements,
  .umbraco-forms-field.password #Password:focus + #requirements {
    max-height: 1000px;
  }
  .fieldWrapper #requirements,
  .umbraco-forms-field.shortanswer #requirements,
  .umbraco-forms-field.date #requirements,
  .umbraco-forms-field.password #requirements {
    list-style: none;
    padding: 10px 0 0 0;
    margin: 0;
    border-radius: var(--radius);
    overflow: hidden;
    max-height: 0;
    transition: max-height 800ms ease-in-out;
  }
  .fieldWrapper #requirements li,
  .umbraco-forms-field.shortanswer #requirements li,
  .umbraco-forms-field.date #requirements li,
  .umbraco-forms-field.password #requirements li {
    display: flex;
    align-items: center;
    font-size: 0.9em;
  }
  .fieldWrapper #requirements li.valid .icon,
  .umbraco-forms-field.shortanswer #requirements li.valid .icon,
  .umbraco-forms-field.date #requirements li.valid .icon,
  .umbraco-forms-field.password #requirements li.valid .icon {
    background-color: var(--correct);
    color: var(--correct-contrast);
    font-size: 0.88em;
    padding-top: 0.1em;
    padding-bottom: 0;
  }
  .fieldWrapper #requirements li .icon,
  .umbraco-forms-field.shortanswer #requirements li .icon,
  .umbraco-forms-field.date #requirements li .icon,
  .umbraco-forms-field.password #requirements li .icon {
    background-color: var(--wrong);
    color: var(--wrong-contrast);
    border-radius: 50%;
    margin-right: 5px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    font-size: 0.95em;
    padding-bottom: 0.1em;
  }
  .dropdownWrapper label:not(.checkboxLabel),
  .umbraco-forms-field.dropdown label:not(.checkboxLabel) {
    position: absolute;
    top: 8px;
    left: 8px;
    z-index: 2;
    display: block;
    margin: 0 0 5px;
    border: 0;
    padding: 0;
    font-size: 0.8em;
    font-family: var(--primary-font);
    color: var(--basic);
  }
  .dropdownWrapper select,
  .umbraco-forms-field.dropdown select {
    position: relative;
    display: block;
    width: 100%;
    min-height: 52px;
    margin: 0;
    border: 2px solid var(--grey);
    padding: 26px 45px 8px 8px;
    border-radius: var(--radius-sm);
    background-color: var(--light);
    text-align: left;
  }
  .umbraco-forms-field.longanswer textarea {
    position: relative;
    display: block;
    width: 100%;
    min-height: 56px;
    margin: 0;
    border: 2px solid var(--grey);
    padding: 6px 8px 6px;
    border-radius: var(--radius-sm);
    background-color: var(--light);
    text-align: left;
  }
  form .error,
  .formWrap .error {
    display: block;
    margin: 4px 0;
    padding: 2px 4px;
    text-align: center;
    background-color: var(--wrong);
    color: var(--wrong-contrast);
  }
  form .error:empty,
  .formWrap .error:empty {
    display: none;
  }
  @media (max-width: 670px) {
    .styledFieldset,
    .umbraco-forms-fieldset {
      padding: 10px;
    }
    .styledFieldset .fieldsetGrid,
    .umbraco-forms-fieldset .fieldsetGrid {
      grid-template-columns: none;
    }
  }
  @media (max-width: 520px) {
    .controlWrapper label {
      font-size: 1em;
      font-weight: 700;
      white-space: normal;
    }
  }
  @media (max-width: 470px) {
    .controlWrapper label {
      font-size: 0.9em;
    }
  }
}
.fieldWrapper .description > *:first-child,
.umbraco-forms-field.shortanswer .description > *:first-child,
.umbraco-forms-field.date .description > *:first-child,
.umbraco-forms-field.password .description > *:first-child {
  margin-top: 0 !important;
}
.fieldWrapper .description > *:last-child,
.umbraco-forms-field.shortanswer .description > *:last-child,
.umbraco-forms-field.date .description > *:last-child,
.umbraco-forms-field.password .description > *:last-child {
  margin-bottom: 0 !important;
}

.controlWrapper > *:first-child,
.adg-umbraco-forms-controlwrapper > *:first-child {
  margin-top: 0 !important;
}
.controlWrapper > *:last-child,
.adg-umbraco-forms-controlwrapper > *:last-child {
  margin-bottom: 0 !important;
}
.controlWrapper .description > *:first-child,
.adg-umbraco-forms-controlwrapper .description > *:first-child {
  margin-top: 0 !important;
}
.controlWrapper .description > *:last-child,
.adg-umbraco-forms-controlwrapper .description > *:last-child {
  margin-bottom: 0 !important;
}

.styledFieldset > :last-child,
.umbraco-forms-fieldset > :last-child {
  margin-bottom: 0 !important;
}

#requirements li.valid .icon:before {
  content: "a";
}

@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  html {
    min-height: 100dvh;
    margin: 0;
    padding: 0;
    overflow: auto;
    -webkit-text-size-adjust: 100%;
  }
  body {
    margin: 0;
    padding: 0;
    text-rendering: optimizeSpeed;
    line-height: 1.1;
    font-size: 16px;
    position: absolute;
    width: 100%;
    height: 100dvh;
  }
  img {
    max-width: 100%;
    display: block;
    height: auto;
  }
  article > * + * {
    margin-top: 1em;
  }
  input,
  button,
  textarea,
  select {
    font: inherit;
  }
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0;
    font-family: var(--primary-font);
  }
  p {
    margin: 0px 0 20px;
    line-height: 1.55em;
    font-family: var(--basic-font);
  }
  ol,
  ul {
    text-align: left;
    margin: 0.4em 0 0.75em;
  }
  li {
    line-height: 1.5em;
  }
  button {
    -webkit-appearance: none;
            appearance: none;
    margin: 0;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: none;
    cursor: pointer;
  }
  iframe {
    border: none;
  }
}
@layer base {
  body {
    font-family: var(--basic-font);
    color: var(--basic);
  }
  a {
    color: var(--link);
    padding-left: 2px;
    padding-right: 2px;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
  }
  @media (hover: hover) and (pointer: fine) {
    a:hover {
      text-decoration: none;
    }
  }
  [data-browser=ie] a:hover {
    text-decoration: none;
  }
  .ie a:hover {
    text-decoration: none;
  }
  a.focus-visible {
    text-decoration: none;
  }
  a:focus-visible {
    text-decoration: none;
  }
  a .targetBlankNotifier {
    border: 0;
    -webkit-clip-path: rect(0 0 0 0);
            clip-path: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  a .icon-mail {
    font-size: 0.9em;
    transform: translateY(1px);
    display: inline-block;
    margin-right: 0.25em;
  }
  a .icon-external-link {
    margin-left: 0.25em;
    font-size: 0.8em;
  }
  [data-active-zone=home] {
    overscroll-behavior: contain;
  }
}
*:not(a:not([role=button])):focus-visible, *:not(a:not([role=button])).focus-visible {
  outline-color: var(--focus-outline-color) !important;
  outline-offset: var(--focus-outline-offset) !important;
  outline-style: var(--focus-outline-style) !important;
  outline-width: var(--focus-outline-width) !important;
  box-shadow: 0 0 0 var(--focus-outline-offset) var(--focus-shadow-color) !important;
}

.socialMediaLogins a:focus-visible,
.socialMediaLogins a.focus-visible {
  outline-color: var(--focus-outline-color) !important;
  outline-offset: var(--focus-outline-offset) !important;
  outline-style: var(--focus-outline-style) !important;
  outline-width: var(--focus-outline-width) !important;
  box-shadow: 0 0 0 var(--focus-outline-offset) var(--focus-shadow-color) !important;
}

body[data-reduce-animation=true] *,
body[data-reduce-animation=true] *::before,
body[data-reduce-animation=true] *::after {
  animation-duration: 0.01ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.01ms !important;
  scroll-behavior: auto !important;
}

.slideSkip,
.homeSkip,
.membershipSkip {
  border: 0;
  -webkit-clip-path: rect(0 0 0 0);
          clip-path: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  display: none;
}
.slideSkip.focus-visible,
.homeSkip.focus-visible,
.membershipSkip.focus-visible {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 999999999999999;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  -webkit-clip-path: initial;
          clip-path: initial;
  text-decoration: none;
  text-align: center;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}
.slideSkip:focus-visible,
.homeSkip:focus-visible,
.membershipSkip:focus-visible {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 999999999999999;
  width: auto;
  height: auto;
  margin: 0;
  padding: 10px;
  -webkit-clip-path: initial;
          clip-path: initial;
  text-decoration: none;
  text-align: center;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}

[data-active-zone=home] .homeSkip {
  display: block;
}

[data-active-zone=slides] .slideSkip {
  display: block;
}

.membershipSkip {
  display: block;
}

@keyframes attentionWiggle {
  /* idle */
  0%, 88%, 100% {
    transform: rotate(0deg);
  }
  /* quick wiggle burst */
  90% {
    transform: rotate(-3deg);
  }
  92% {
    transform: rotate(3deg);
  }
  94% {
    transform: rotate(-2deg);
  }
  96% {
    transform: rotate(2deg);
  }
  98% {
    transform: rotate(0deg);
  }
}
@keyframes attentionWiggleBouncy {
  0%, 88%, 100% {
    transform: rotate(0deg) scale(1);
  }
  90% {
    transform: rotate(-4deg) scale(1.03);
  }
  92% {
    transform: rotate(4deg) scale(1.03);
  }
  94% {
    transform: rotate(-3deg) scale(1.02);
  }
  96% {
    transform: rotate(3deg) scale(1.02);
  }
  98% {
    transform: rotate(0deg) scale(1);
  }
}
html {
  scrollbar-gutter: stable;
}

willis-zone {
  display: block;
}

[inert] {
  overflow: hidden;
  pointer-events: none;
}

willis-dialog:not([data-open=true]) {
  display: none !important;
}

html[data-dialog-hide-overflow=true] {
  overflow: hidden !important;
}

@layer base {
  .dialogBackdrop {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100dvh;
  }
  @supports (height: 100dvh) {
    .dialogBackdrop {
      height: 100dvh;
    }
  }
  .slide .dialogBackdrop {
    height: 100%;
  }
  .dialogInner {
    position: relative;
  }
  div[role=dialog] {
    position: relative;
    animation-fill-mode: both;
  }
  [data-dialog-style=modal] {
    display: flex;
    align-items: center;
    overflow-y: auto;
  }
  [data-dialog-style=modal] div[role=dialog] {
    width: 580px;
    margin: auto;
  }
  [data-dialog-style=modal] .dialogInner {
    overflow: hidden;
    border-radius: var(--radius);
  }
  [data-dialog-style=largeModal] {
    display: flex;
    align-items: center;
    overflow-y: auto;
  }
  [data-dialog-style=largeModal] div[role=dialog] {
    width: 800px;
    max-width: 100vw;
    margin: auto;
  }
  [data-dialog-style=largeModal] .dialogInner {
    overflow: hidden;
    border-radius: var(--radius-lg);
  }
  [data-dialog-style=shade] {
    overflow-y: auto;
  }
  [data-dialog-style=shade] div[role=dialog] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    text-align: center;
  }
  [data-dialog-style=shade] div[role=dialog] .dialogLabel {
    max-width: 800px;
  }
  [data-dialog-style=shade] div[role=dialog] .dialogContent {
    max-width: 800px;
  }
  [data-dialog-style=shade] div[role=dialog] .dialogActions {
    max-width: 800px;
  }
  [data-dialog-style=shade] .dialogInner {
    border-radius: 0 0 var(--radius) var(--radius);
  }
  [data-dialog-style^=sidebar] {
    display: flex;
    align-items: stretch;
    overflow-y: scroll;
    overflow-x: hidden;
  }
  [data-dialog-style^=sidebar][data-dialog-style=sidebarLeft] {
    justify-content: flex-start;
  }
  [data-dialog-style^=sidebar][data-dialog-style=sidebarRight] {
    justify-content: flex-end;
  }
  [data-dialog-style^=sidebar] div[role=dialog] {
    width: 440px;
  }
  [data-dialog-style^=full] {
    display: flex;
    align-items: stretch;
    overflow: hidden;
  }
  [data-dialog-style^=full] div[role=dialog] {
    overflow-y: scroll;
    width: 100%;
    height: 100%;
  }
  @media (max-width: 600px) {
    [data-dialog-style^=sidebar] div[role=dialog] {
      width: 100%;
      min-width: 0;
    }
    [data-dialog-style=modal] div[role=dialog] {
      width: 100%;
    }
  }
}
div[data-dialog-animation-speed=glacial] {
  animation-duration: 3000ms;
}

div[data-dialog-animation-speed=verySlow] {
  animation-duration: 1000ms;
}

div[data-dialog-animation-speed=slow] {
  animation-duration: 800ms;
}

div[data-dialog-animation-speed=medium] {
  animation-duration: 500ms;
}

div[data-dialog-animation-speed=fast] {
  animation-duration: 300ms;
}

div[data-dialog-animation-speed=veryFast] {
  animation-duration: 200ms;
}

.dialogBackdrop {
  animation-fill-mode: both;
  animation-duration: 200ms;
}
.dialogBackdrop.in {
  animation-name: fadeIn;
}
.dialogBackdrop.out {
  animation-name: fadeOut;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
div[data-dialog-animation-name=fadeIn] {
  animation-name: fadeIn;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
div[data-dialog-animation-name=fadeOut] {
  animation-name: fadeOut;
}

@keyframes fadeTopIn {
  from {
    opacity: 0;
    transform: translateY(-50%);
  }
  to {
    opacity: 1;
    transform: translateY(0%);
  }
}
div[data-dialog-animation-name=fadeTopIn] {
  animation-name: fadeTopIn;
}

@keyframes fadeTopOut {
  from {
    opacity: 1;
    transform: translateY(0%);
  }
  to {
    opacity: 0;
    transform: translateY(-50%);
  }
}
div[data-dialog-animation-name=fadeTopOut] {
  animation-name: fadeTopOut;
}

@keyframes fadeBottomIn {
  from {
    opacity: 0;
    transform: translateY(50%);
  }
  to {
    opacity: 1;
    transform: translateY(0%);
  }
}
div[data-dialog-animation-name=fadeBottomIn] {
  animation-name: fadeBottomIn;
}

@keyframes fadeBottomOut {
  from {
    opacity: 1;
    transform: translateY(0%);
  }
  to {
    opacity: 0;
    transform: translateY(50%);
  }
}
div[data-dialog-animation-name=fadeBottomOut] {
  animation-name: fadeBottomOut;
}

@keyframes fadeRightIn {
  from {
    opacity: 0;
    transform: translateX(50%);
  }
  to {
    opacity: 1;
    transform: translateX(0%);
  }
}
div[data-dialog-animation-name=fadeRightIn] {
  animation-name: fadeRightIn;
}

@keyframes fadeRightOut {
  from {
    opacity: 1;
    transform: translateX(0%);
  }
  to {
    opacity: 0;
    transform: translateX(50%);
  }
}
div[data-dialog-animation-name=fadeRightOut] {
  animation-name: fadeRightOut;
}

@keyframes fadeLeftIn {
  from {
    opacity: 0;
    transform: translateX(-50%);
  }
  to {
    opacity: 1;
    transform: translateX(0%);
  }
}
div[data-dialog-animation-name=fadeLeftIn] {
  animation-name: fadeLeftIn;
}

@keyframes fadeLeftOut {
  from {
    opacity: 1;
    transform: translateX(0%);
  }
  to {
    opacity: 0;
    transform: translateX(-50%);
  }
}
div[data-dialog-animation-name=fadeLeftOut] {
  animation-name: fadeLeftOut;
}

@keyframes slideTopIn {
  from {
    transform: translateY(-100%);
  }
  to {
    transform: translateY(0%);
  }
}
div[data-dialog-animation-name=slideTopIn] {
  animation-name: slideTopIn;
}
@media (max-width: 825px) {
  div[data-dialog-animation-name=slideTopIn] {
    animation-name: slideBottomIn;
  }
}

@keyframes slideTopOut {
  from {
    transform: translateY(0%);
  }
  to {
    transform: translateY(-100%);
  }
}
div[data-dialog-animation-name=slideTopOut] {
  animation-name: slideTopOut;
}

@keyframes slideBottomIn {
  from {
    transform: translateY(100%);
  }
  to {
    transform: translateY(0%);
  }
}
div[data-dialog-animation-name=slideBottomIn] {
  animation-name: slideBottomIn;
}

@keyframes slideBottomOut {
  from {
    transform: translateY(0%);
  }
  to {
    transform: translateY(150%);
  }
}
div[data-dialog-animation-name=slideBottomOut] {
  animation-name: slideBottomOut;
}

@keyframes slideRightIn {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0%);
  }
}
div[data-dialog-animation-name=slideRightIn] {
  animation-name: slideRightIn;
}

@keyframes slideRightOut {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(100%);
  }
}
div[data-dialog-animation-name=slideRightOut] {
  animation-name: slideRightOut;
}

@keyframes slideLeftIn {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0%);
  }
}
div[data-dialog-animation-name=slideLeftIn] {
  animation-name: slideLeftIn;
}

@keyframes slideLeftOut {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
div[data-dialog-animation-name=slideLeftOut] {
  animation-name: slideLeftOut;
}

.dialogBackdrop {
  background: color-mix(in srgb, var(--weber-midnight) calc(0.8 * 100%), transparent);
  scrollbar-color: var(--dark-grey) var(--light-grey);
}

.closeDialog {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
.closeDialog .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  .closeDialog:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.closeDialog[disabled], .closeDialog[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}

.dialogContent {
  margin: 10px 0;
}

.dialogActions.generated button.closeDialog .icon:before {
  font-family: var(--icon-font);
  content: "b";
}

button.closeDialog .icon:before {
  font-family: var(--icon-font);
  font-size: 1.5em;
  text-transform: lowercase;
  content: "b";
}

.dialogLabel h2 {
  margin-bottom: 15px;
}

[data-dialog-style=modal] {
  padding: 20px;
}
.safari [data-dialog-style=modal] {
  padding: 20px 20px 150px;
}
[data-dialog-style=modal] .dialogInner {
  border-radius: var(--radius);
  padding: 20px;
  text-align: center;
  background-color: var(--snow-drift);
  color: var(--snow-drift-contrast);
  box-shadow: inset 0 0 0 5px var(--bee-balm), 0 0 0 8px var(--soft-lavendar);
}
[data-dialog-style=modal] button.closeDialog {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
[data-dialog-style=modal] button.closeDialog .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  [data-dialog-style=modal] button.closeDialog:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] [data-dialog-style=modal] button.closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie [data-dialog-style=modal] button.closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
[data-dialog-style=modal] button.closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
[data-dialog-style=modal] button.closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
[data-dialog-style=modal] button.closeDialog[disabled], [data-dialog-style=modal] button.closeDialog[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
[data-dialog-style=modal] button.closeDialog .icon:before {
  font-family: var(--icon-font);
  font-size: 1.5em;
  text-transform: lowercase;
  content: "b";
  display: none;
}

.safari [data-dialog-style=largeModal] {
  padding: 20px 20px 150px;
}
[data-dialog-style=largeModal] .dialogInner {
  border-radius: var(--radius);
  padding: 20px;
  background-color: var(--purple-cloud);
  color: var(--purple-cloud-contrast);
  box-shadow: inset 0 0 0 13px var(--soft-lavendar), 0 0 0 16px var(--grape-juice);
}
[data-dialog-style=largeModal] .dialogLabel {
  text-align: center;
  margin-bottom: 25px;
  border-bottom: 1px solid var(--brand-dark);
  padding: 5px 10px 20px;
  text-transform: uppercase;
}
[data-dialog-style=largeModal] .dialogLabel h2 {
  margin: 0;
  padding: 0;
  font-size: 1.25em;
  color: var(--brand-dark);
}

[data-dialog-style=shade] .dialogInner {
  border-radius: var(--radius);
  padding: 20px;
  background-color: var(--purple-cloud);
  margin-top: 15px;
  color: var(--purple-cloud-contrast);
  box-shadow: 0 0 0 8px var(--grape-juice);
  font-family: var(--primary-font);
}
[data-dialog-style=shade] .dialogInner .dialogLabel {
  text-align: center;
  text-transform: uppercase;
}
[data-dialog-style=shade] .dialogInner .dialogActions {
  padding-top: 10px;
  display: flex;
  justify-content: center;
  gap: 7px;
}
[data-dialog-style=shade] .dialogInner .closeDialog {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  text-transform: uppercase;
}
[data-dialog-style=shade] .dialogInner .closeDialog .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  [data-dialog-style=shade] .dialogInner .closeDialog:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-bright);
  }
}
[data-browser=ie] [data-dialog-style=shade] .dialogInner .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-bright);
}
.ie [data-dialog-style=shade] .dialogInner .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-bright);
}
[data-dialog-style=shade] .dialogInner .closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-bright);
}
[data-dialog-style=shade] .dialogInner .closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-bright);
}
[data-dialog-style=shade] .dialogInner .closeDialog[disabled], [data-dialog-style=shade] .dialogInner .closeDialog[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}

[data-dialog-style^=sidebar] .dialogInner {
  min-height: 100%;
}
[data-dialog-style^=sidebar][data-dialog-style=sidebarLeft] .dialogInner {
  border-radius: 0 var(--radius) var(--radius) 0;
  padding: 20px;
}
[data-dialog-style^=sidebar][data-dialog-style=sidebarRight] .dialogInner {
  border-radius: var(--radius) 0 0 var(--radius);
  padding: 20px;
}

[data-dialog-style^=full] .dialogInner {
  padding: 20px;
}

.simpleDialog {
  background-color: var(--light);
  color: var(--light-contrast);
  border-radius: var(--radius);
}

#returnMessage .closeDialog .icon {
  display: none;
}

@media (max-width: 670px) {
  [data-dialog-style^=sidebar][data-dialog-style=sidebarLeft] .dialogInner {
    border-radius: 0;
  }
  [data-dialog-style^=sidebar][data-dialog-style=sidebarRight] .dialogInner {
    border-radius: 0;
  }
  [data-dialog-style=modal] div[role=dialog].reportNeeded {
    width: 100%;
  }
}
@keyframes zoomIn {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1.3);
  }
}
@keyframes zoomOut {
  from {
    transform: scale(1.2);
  }
  to {
    transform: scale(1.1);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@layer base {
  #background [data-slideshow=zoomSlideshow].returnPause .bgImgWrapper:first-child {
    opacity: 1;
  }
  #background [data-slideshow=zoomSlideshow] .bgImgWrapper {
    opacity: 0;
    animation-duration: 0.85s;
    animation-timing-function: linear;
  }
  #background [data-slideshow=zoomSlideshow] .bgImgWrapper.current {
    animation-fill-mode: forwards;
    animation-name: fadeIn;
    z-index: 1;
  }
  #background [data-slideshow=zoomSlideshow] .bgImgWrapper.prev {
    animation-name: fadeOut;
    animation-fill-mode: forwards;
  }
  #background [data-slideshow=zoomSlideshow] .bgImgWrapper:nth-child(odd) .bgImg.trans {
    animation-name: zoomIn;
  }
  #background [data-slideshow=zoomSlideshow] .bgImgWrapper:nth-child(even) .bgImg.trans {
    animation-name: zoomOut;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg {
    transform: scale(1.2);
    z-index: 1;
    animation-timing-function: linear;
    animation-duration: 10s;
    animation-fill-mode: forwards;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos=center] {
    background-position: 50% 50%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="center left"] {
    background-position: 10% 50%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="center right"] {
    background-position: 90% 50%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="top left"] {
    background-position: 10% 10%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="top middle"] {
    background-position: 50% 10%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="top right"] {
    background-position: 90% 10%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="bottom left"] {
    background-position: 10% 90%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="bottom middle"] {
    background-position: 50% 100%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-bg-pos="bottom left"] {
    background-position: 90% 90%;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-animation=center] {
    transform-origin: center center;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-animation="top right"] {
    transform-origin: top right;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-animation="top left"] {
    transform-origin: top left;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-animation="bottom right"] {
    transform-origin: bottom right;
  }
  #background [data-slideshow=zoomSlideshow] .bgImg[data-animation="bottom left"] {
    transform-origin: bottom left;
  }
  #background [data-slideshow=zoomSlideshow].paused .bgImgWrapper.trans {
    animation-play-state: paused;
  }
  #background [data-slideshow=zoomSlideshow].paused .bgImg.trans {
    animation-play-state: paused;
  }
  #background .bgImg,
  #background .sectionBg {
    background-size: cover;
  }
  #background .bgImg[data-bg-pos="top left"],
  #background .sectionBg[data-bg-pos="top left"] {
    background-position: 0% 0%;
  }
  #background .bgImg[data-bg-pos="top middle"],
  #background .sectionBg[data-bg-pos="top middle"] {
    background-position: 50% 0;
  }
  #background .bgImg[data-bg-pos="top right"],
  #background .sectionBg[data-bg-pos="top right"] {
    background-position: 100% 0%;
  }
  #background .bgImg[data-bg-pos="center left"],
  #background .sectionBg[data-bg-pos="center left"] {
    background-position: 0% 50%;
  }
  #background .bgImg[data-bg-pos=center],
  #background .sectionBg[data-bg-pos=center] {
    background-position: 50% 50%;
  }
  #background .bgImg[data-bg-pos="center right"],
  #background .sectionBg[data-bg-pos="center right"] {
    background-position: 100% 50%;
  }
  #background .bgImg[data-bg-pos="bottom left"],
  #background .sectionBg[data-bg-pos="bottom left"] {
    background-position: 0% 100%;
  }
  #background .bgImg[data-bg-pos="bottom middle"],
  #background .sectionBg[data-bg-pos="bottom middle"] {
    background-position: 50% 100%;
  }
  #background .bgImg[data-bg-pos="bottom right"],
  #background .sectionBg[data-bg-pos="bottom right"] {
    background-position: 100% 100%;
  }
  #background video {
    object-fit: cover;
    background-color: var(--light-grey);
  }
}
[data-is-loading=true] #background {
  opacity: 0;
}

[data-active-dialog=checklist] #backgroundPlayBtn, [data-active-dialog=faq] #backgroundPlayBtn, [data-active-dialog=glossary] #backgroundPlayBtn, [data-active-dialog=achievements] #backgroundPlayBtn, [data-active-dialog=resources] #backgroundPlayBtn, [data-active-dialog=faqConfirmQuestionMessage] #backgroundPlayBtn, [data-active-dialog=faqQuestionSubmittedMessage] #backgroundPlayBtn {
  display: none;
}
[data-active-dialog=utilityMenu] #backgroundPlayBtn {
  display: none;
}
[data-active-zone=slides] #backgroundPlayBtn {
  display: none;
}
[data-is-loading=true] #backgroundPlayBtn {
  opacity: 0 !important;
}
#backgroundPlayBtn .icon-play {
  display: none;
}
#backgroundPlayBtn.pause .icon-play {
  display: block;
}
#backgroundPlayBtn.pause .icon-pause {
  display: none;
}

:root {
  --mtn-stagger: 72px;
  --mountain-width: 700px;
  --top-h: 400px;
}

body:has(#mainNav li.section[data-state=active] button:hover) .mascotHolder.mascot2 img {
  top: 0px;
  scale: 1;
}
body:has(#mainNav li.section[data-state=active] button:hover) .mascotHolder.mascot2 .quote {
  top: -25px;
  opacity: 1;
}

body[data-orientation-complete=true] .mascotHolder.mascot1 img {
  top: 0px;
  scale: 1;
  transition-delay: 2s;
}
body[data-orientation-complete=true] .mascotHolder.mascot1 .congratsMsg {
  display: block;
  transition-delay: 2.5s;
}

[data-is-loading=true] .mascotHolder.mascot1, .utilityMode .mascotHolder.mascot1, .menuOut .mascotHolder.mascot1 {
  scale: 0;
}
[data-is-loading=true] .mascotHolder.mascot1 img, .utilityMode .mascotHolder.mascot1 img, .menuOut .mascotHolder.mascot1 img {
  top: 100%;
}
[data-is-loading=true] .mascotHolder.mascot1 .congratsMsg, .utilityMode .mascotHolder.mascot1 .congratsMsg, .menuOut .mascotHolder.mascot1 .congratsMsg {
  top: -80px;
  opacity: 0;
}

[data-active-zone=home] .utilityMode #background .backgroundMedia {
  bottom: -100%;
  translate: 75% 0;
}
[data-active-zone=home] .utilityMode #background .mountainWrap {
  scale: 1.5;
  --gap1: 10%;
  --gap2: 32%;
}
[data-active-zone=home] .utilityMode #background .mountainWrap.top {
  bottom: -95px;
  right: -35px;
  scale: 1.3;
}
[data-active-zone=home] .utilityMode #background .mountainWrap.middle {
  scale: 1.8;
}
[data-active-zone=home] .utilityMode #background .mountainWrap.back {
  right: 95px;
  scale: 2;
  bottom: -40px;
}

.mascotHolder {
  aspect-ratio: 187/328;
  position: absolute;
  right: 20%;
  width: 135px;
  top: 10%;
  rotate: 5deg;
  filter: drop-shadow(0px -1px 8px color-mix(in srgb, var(--basic) calc(0.3 * 100%), transparent));
}
.inSection .mascotHolder.mascot2 {
  opacity: 0;
  pointer-events: none;
}
.mascotHolder.mascot1 {
  aspect-ratio: 240/355;
  right: 38%;
  width: 160px;
  top: 8%;
  rotate: 8deg;
  transition: scale 0.7s;
}
.mascotHolder img {
  width: 100%;
  position: absolute;
  left: 0px;
  top: 100%;
  scale: 0;
  rotate: 0deg;
  transform-origin: bottom center;
  transition: top 0.45s ease-out, scale 0.45s;
}
.mascotHolder .congratsMsg {
  --border-color: var(--weber-midnight);
  --border: 2px;
  position: absolute;
  top: 8px;
  opacity: 1;
  right: 100%;
  transform-origin: right center;
  width: 230px;
  font-weight: bold;
  color: var(--waldos-den);
  font-size: 0.8em;
  transition: top 0.45s ease-out, opacity 0.2s;
  background: var(--light);
  border-radius: 15px;
  padding: 10px;
  border: var(--border) solid var(--border-color);
  text-align: center;
  display: none;
}
.mascotHolder .congratsMsg:after {
  --size: 18px;
  content: "";
  position: absolute;
  right: -9px;
  bottom: 12px;
  width: var(--size);
  height: var(--size);
  background: var(--light);
  border-right: var(--border) solid var(--border-color);
  border-bottom: var(--border) solid var(--border-color);
  transform: rotate(-40deg);
  border-bottom-right-radius: 2px;
  scale: 1;
}
.mascotHolder .congratsMsg h3 {
  font-size: 1em;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
}
.mascotHolder .congratsMsg span {
  display: block;
}
.mascotHolder .congratsMsg span.line1 {
  background: var(--primary);
  padding: 5px;
  color: var(--light);
  text-transform: uppercase;
  text-align: center;
  border-radius: 5px;
}
.headerMountains {
  position: fixed;
  top: -72px;
  left: -220px;
  left: -12%;
  width: 100vw;
  height: 900px;
  scale: -1;
  pointer-events: none;
  z-index: 50;
}
.headerMountains .mountainWrap {
  --gap1: 20px;
  --gap2: 56px;
  translate: 80% 300px;
}
.headerMountains .mountainWrap .border {
  width: 150%;
  left: -130%;
}
.headerMountains .mountainWrap.back .mountain {
  right: 15px;
}
.inSection .headerMountains .mountainWrap {
  translate: 80% 20px;
}

.mountainWrap {
  --gap1: 9%;
  --gap2: 18%;
  aspect-ratio: 1419/803;
  height: 100%;
  width: 100%;
  max-height: 98%;
  max-width: 85%;
  position: absolute;
  bottom: 0px;
  right: 0px;
  display: block;
  transition: bottom 2s, right 1s, translate 1.5s ease-in-out, scale 2.2s;
}
.mountainWrap.top {
  --Mcolor: var(--primary);
  transition-delay: 0.65s;
}
.mountainWrap.middle {
  --Mcolor: var(--purple-rush);
  bottom: var(--gap1);
  transition-delay: 0.55s;
}
.mountainWrap.back {
  --Mcolor: var(--lovely-lilac);
  bottom: var(--gap2);
  transition-delay: 0.35s;
}
.mountainWrap .border {
  display: block;
  position: absolute;
  bottom: 0px;
  width: 140%;
  left: -110%;
  background: var(--Mcolor);
  height: 12.41%;
}
.mountainWrap .mountain {
  background: var(--Mcolor);
  -webkit-clip-path: url(#mountainFrameExt);
          clip-path: url(#mountainFrameExt);
  position: absolute;
  right: 0px;
  bottom: 0px;
  height: 100%;
  width: 100%;
  transition: bottom 1s, right 1s;
}

#background {
  --inner-h: 850px;
  position: fixed;
  bottom: 0px;
  left: 20px;
  width: 100vw;
  height: 100vh;
  opacity: 1;
  pointer-events: none;
  transition: all 1s 0.35s, opacity 0.5s;
}
.slideSetup #background {
  height: var(--inner-h);
}
[data-is-loading=true] #background .mountainWrap {
  translate: 78% 150px;
  --gap1: 15%;
  --gap2:22%;
}
.slideSetup #background .mountainWrap {
  translate: 78% 50px;
  --gap1: 5%;
  --gap2:8%;
}
.slideSetup #background .mountainWrap.back {
  translate: 85% 50px;
}
.slideSetup #background .mountainWrap.middle {
  translate: 85% 90px;
}
.slideSetup #background .mountainWrap.top {
  translate: 90% 90px;
}
#background .mountainWrap.top .mountain {
  right: -30px;
}
#background .mountainWrap.middle .mountain {
  right: -15px;
}
#background .backgroundMedia {
  -webkit-clip-path: url(#mountainMediaExt);
          clip-path: url(#mountainMediaExt);
  aspect-ratio: 1338/727;
  position: absolute;
  bottom: 0px;
  right: -15px;
  height: 100%;
  width: 100%;
  transition: bottom 1.5s ease-in-out, translate 1.5s ease-in-out, opacity 0.3s;
  max-height: calc(100% - 85px);
  max-width: 80%;
  z-index: 5;
}
.firefox #background .backgroundMedia {
  overflow: hidden;
  isolation: isolate;
  contain: paint;
}
.utilityMode #background .backgroundMedia, .searchMode #background .backgroundMedia, .toolsMode #background .backgroundMedia {
  opacity: 0;
  bottom: -100%;
}
.utilityMode.menuOut #background .backgroundMedia, .searchMode.menuOut #background .backgroundMedia, .toolsMode.menuOut #background .backgroundMedia {
  opacity: 0;
  bottom: -100%;
}
.menuOut #background .backgroundMedia {
  bottom: -100%;
  translate: 75% 0;
}
.menuIn #background .backgroundMedia {
  transition-delay: 1s;
}
[data-is-loading=true] #background .backgroundMedia {
  bottom: -100%;
  translate: 75% 0;
  transition-delay: 1s;
}
#background .cover-slider,
#background video,
#background .mainBgImg {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.firefox #background .cover-slider,
.firefox #background video,
.firefox #background .mainBgImg {
  overflow: hidden;
  -webkit-clip-path: inherit;
          clip-path: inherit;
}
#background .sectionBgHolder {
  z-index: 1;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.menuOut #background .sectionBgHolder {
  z-index: 3;
}
#background .sectionBgHolder[data-section-bg-only=true] {
  opacity: 0;
  transition: opacity 0.5s;
}
.inSection #background .sectionBgHolder[data-section-bg-only=true] {
  opacity: 1;
}
#background .bgImg,
#background .sectionBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#background video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#backgroundPlayBtn {
  position: fixed;
  bottom: 15px;
  left: 15px;
  z-index: 150;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0;
  color: var(--light);
  cursor: pointer;
  transition: all 200ms;
  border-radius: 5px;
}
#backgroundPlayBtn .text {
  right: calc(100% + 2px);
  top: 50%;
  position: absolute;
  scale: 0.1;
  border: 2px solid var(--light);
  padding: 2px 7px 4px 7px;
  white-space: nowrap;
  opacity: 0;
  font-family: var(--secondary-font);
  font-weight: 700;
  text-transform: uppercase;
  box-shadow: var(--shadow);
  border-radius: var(--radius-xs);
  background-color: var(--accent);
  color: var(--accent-contrast);
  transition: all 500ms var(--timing-bounce);
  transform-origin: 100% 50%;
  translate: 0 -50%;
  pointer-events: none;
}
#backgroundPlayBtn .text:before {
  content: "";
  position: absolute;
  transition: all 500ms var(--timing-bounce);
  translate: 0 -50%;
  width: 10px;
  height: 10px;
  background-color: var(--light);
  top: 50%;
  left: 100%;
  height: 14px;
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
          clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
}
#backgroundPlayBtn .text:after {
  content: "";
  position: absolute;
  transition: all 500ms var(--timing-bounce);
  translate: 0 -50%;
  width: 10px;
  height: 10px;
  background-color: var(--accent);
  top: 50%;
  left: calc(100% - 2px);
  -webkit-clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
          clip-path: polygon(100% 50%, 0% 100%, 0% 0%);
}
#backgroundPlayBtn .text {
  font-size: 0.8em;
}
#backgroundPlayBtn .icon {
  position: relative;
  font-size: 1.2em;
  z-index: 4;
}
@media (hover: hover) and (pointer: fine) {
  #backgroundPlayBtn:hover {
    background-color: var(--hover);
    color: var(--hover-contrast);
  }
  #backgroundPlayBtn:hover .text {
    opacity: 1;
    scale: 1;
  }
}
[data-browser=ie] #backgroundPlayBtn:hover {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
[data-browser=ie] #backgroundPlayBtn:hover .text {
  opacity: 1;
  scale: 1;
}
.ie #backgroundPlayBtn:hover {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.ie #backgroundPlayBtn:hover .text {
  opacity: 1;
  scale: 1;
}
#backgroundPlayBtn.focus-visible {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
#backgroundPlayBtn.focus-visible .text {
  opacity: 1;
  scale: 1;
}
#backgroundPlayBtn:focus-visible {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
#backgroundPlayBtn:focus-visible .text {
  opacity: 1;
  scale: 1;
}

@media (orientation: portrait) and (min-height: 1050px) {
  body {
    --top-h: 600px;
  }
}
@media (max-width: 920px), (orientation: portrait), (max-height: 500px) {
  body {
    --top-h: 600px;
    --mountain-width: 850px;
  }
}
@media (max-width: 920px) and (max-height: 1000px), (orientation: portrait) and (max-height: 1000px), (max-height: 500px) and (max-height: 1000px) {
  body {
    --top-h: 450px;
    --mountain-width: 770px;
  }
}
@media (max-width: 920px) and (max-height: 825px), (orientation: portrait) and (max-height: 825px), (max-height: 500px) and (max-height: 825px) {
  body {
    --top-h: 350px;
    --mountain-width: 700px;
  }
}
@media (max-width: 920px) and (max-width: 670px), (orientation: portrait) and (max-width: 670px), (max-height: 500px) and (max-width: 670px) {
  body {
    --mountain-width: 620px;
    --top-h: 350px;
  }
}
@media (max-width: 920px) and (max-width: 470px), (orientation: portrait) and (max-width: 470px), (max-height: 500px) and (max-width: 470px) {
  body {
    --mountain-width: 550px;
    --top-h: 290px;
  }
}
@media (max-width: 920px) and (max-width: 390px), (max-width: 920px) and (max-height: 500px), (orientation: portrait) and (max-width: 390px), (orientation: portrait) and (max-height: 500px), (max-height: 500px) and (max-width: 390px), (max-height: 500px) and (max-height: 500px) {
  body {
    --mountain-width: 500px;
    --top-h: 290px;
  }
}
@media (max-width: 920px), (orientation: portrait), (max-height: 500px) {
  .headerMountains .mountainWrap .border {
    transition: all 1s 0.35s;
  }
  #background {
    top: 0;
    height: unset;
    left: unset;
    right: 0;
    position: fixed;
    bottom: unset;
    overflow: clip;
    height: var(--top-h);
    background-color: var(--light);
  }
  #background .backgroundMedia {
    right: 0px;
    bottom: 0;
    height: auto;
    width: calc(var(--mountain-width) - 80px);
    max-height: unset;
    max-width: unset;
    aspect-ratio: 1237/780;
    -webkit-clip-path: url(#mountainMediaRsp);
            clip-path: url(#mountainMediaRsp);
  }
  .slideSetup #background {
    translate: 0 0%;
  }
  .utilityMode #background {
    opacity: 0;
    pointer-events: none;
  }
  #background .mountainWrap {
    --gap1: -5%;
    --gap2: -4%;
    right: 0px;
    max-height: unset;
    max-width: unset;
    aspect-ratio: 1354/882;
    width: var(--mountain-width);
    height: unset;
    bottom: 0px;
  }
  #background .mountainWrap .border {
    left: -150%;
    width: 190%;
    transform-origin: right center;
  }
  .menuOut #background .mountainWrap .border {
    scale: 1;
  }
  #background .mountainWrap .mountain {
    width: 100%;
    height: unset;
    aspect-ratio: 1354/882;
    -webkit-clip-path: url(#mountainFrameRsp);
            clip-path: url(#mountainFrameRsp);
  }
  #background .mountainWrap.back {
    bottom: 0px;
    right: -10px;
  }
  #background .mountainWrap.middle {
    bottom: var(--gap1);
    right: 0px;
  }
  #background .mountainWrap.top {
    bottom: var(--gap2);
    right: -8px;
  }
  .slideSetup #background {
    --inner-h: 750px;
    top: calc(100% - var(--inner-h));
  }
  .slideSetup #background .mountainWrap.back {
    translate: 87% -50px;
  }
  .slideSetup #background .mountainWrap.middle {
    translate: 85% 40px;
  }
  .slideSetup #background .mountainWrap.top {
    translate: 86% 90px;
  }
}
@media (max-width: 920px) and (max-width: 670px), (orientation: portrait) and (max-width: 670px), (max-height: 500px) and (max-width: 670px) {
  #background .backgroundMedia {
    bottom: -25px;
  }
  #background .mountainWrap .mountain {
    bottom: -50px;
  }
  #backgroundPlayBtn {
    bottom: 5px;
    left: 5px;
  }
}
@media (max-width: 920px) and (max-width: 520px), (max-width: 920px) and (max-height: 500px), (orientation: portrait) and (max-width: 520px), (orientation: portrait) and (max-height: 500px), (max-height: 500px) and (max-width: 520px), (max-height: 500px) and (max-height: 500px) {
  .sticky .headerMountains .mountainWrap {
    --gap1: 20px;
    --gap2: 30px;
    transition-delay: 0s !important;
  }
}
@media (max-width: 920px) and (max-width: 470px), (orientation: portrait) and (max-width: 470px), (max-height: 500px) and (max-width: 470px) {
  .slideSetup #background {
    top: 110%;
    opacity: 0;
  }
}
@media (max-height: 800px) {
  .mascotHolder.mascot1 {
    width: 130px;
  }
  .mascotHolder.mascot1 .congratsMsg {
    scale: 0.9;
  }
}
@media (max-height: 600px) {
  .mascotHolder.mascot1 {
    width: 110px;
  }
}
@media (max-width: 920px), (orientation: portrait), (max-height: 500px) {
  [data-orientation-complete=true] .mascotHolder.mascot1 {
    display: none;
  }
}
body {
  background: var(--light);
}

.buffer {
  position: relative;
  z-index: 120;
  min-height: calc(100vh - 55px);
}

.adgFooter {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 55px;
  padding: 0 15px;
  background: #000;
  z-index: 9999;
}
.adgFooter .adgLogoWrap a {
  display: block;
  background: black;
}
@media (hover: hover) and (pointer: fine) {
  .adgFooter .adgLogoWrap a:hover {
    border: 2px solid var(--light);
    background: var(--basic);
  }
}
[data-browser=ie] .adgFooter .adgLogoWrap a:hover {
  border: 2px solid var(--light);
  background: var(--basic);
}
.ie .adgFooter .adgLogoWrap a:hover {
  border: 2px solid var(--light);
  background: var(--basic);
}
.adgFooter .adgLogoWrap a:focus {
  border: 2px solid var(--light);
  background: var(--basic);
}
.adgFooter .adgLogoWrap .adgLogo {
  height: 38px;
  width: auto;
}

.socialMedia {
  max-width: 500px;
  width: 100%;
}
.socialMedia .socialMediaTitle {
  margin-bottom: 15px;
  font-weight: 400;
}
.socialMedia .socialMediaLogins {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.socialMedia .socialMediaLogins .facebookLogin {
  background: rgb(8, 102, 255) !important;
  color: white !important;
}
.socialMedia .socialMediaLogins .googleLogin {
  background: #ebebec !important;
  color: black !important;
}
.socialMedia .socialMediaLogins .twitterLogin {
  background: #14171a !important;
  color: white !important;
}
.socialMedia .socialMediaLogins .twitterLogin .text {
  border: 0;
  -webkit-clip-path: rect(0 0 0 0);
          clip-path: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
.socialMedia .socialMediaLogins .appleLogin {
  background: black !important;
  color: white !important;
}
.socialMedia .socialMediaLogins > a {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  text-decoration: none !important;
  border-radius: var(--radius);
  height: 50px;
  text-align: center;
  padding: 1em !important;
  border: 0px;
}
.socialMedia .socialMediaLogins > a .svgIcon {
  width: 16px;
  height: auto;
  margin-right: 7px;
}
.socialMedia .socialMediaLogins > a .text {
  font-weight: bold;
  font-size: 1.1em;
}
.socialMedia .socialMediaLogins .appleLogin {
  height: 45px;
  cursor: pointer;
}
.socialMedia .socialMediaLogins .appleLogin > div {
  max-width: 100% !important;
}

/*.loginWrapper[data-hidden-for-guest="true"] {
  display: none !important;
}*/
.guestWrapperHolder {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: all 800ms;
  text-align: left;
}

.fieldWrapper.enrolleeName {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  z-index: -1;
}

.fieldWrapper.phone #PhoneNumber {
  padding-left: 50px;
}
.fieldWrapper.phone .iti {
  width: 100%;
  color: var(--basic);
}
.fieldWrapper.phone .iti .iti__country-container {
  top: 18px;
  bottom: 1px;
}
.fieldWrapper.phone .iti .iti__selected-country {
  border-radius: var(--radius) 0 0 var(--radius);
}
.fieldWrapper.phone .iti .iti__dropdown-content {
  z-index: 3;
}

:root {
  --iti-path-flags-1x: url("/Images/flags.png");
  --iti-path-flags-2x: url("/Images/flags@2x.png");
  --iti-path-globe-1x: url("/Images/globe.png");
  --iti-path-globe-2x: url("/Images/globe@2x.png");
}

:root {
  --login-w: 600px;
  --login-header-height: 130px;
  --memberBG: 55vh;
  --curveH: 180px;
}

#background.membershipBg {
  height: var(--memberBG);
  left: 0;
  top: 0;
  flex-grow: 1;
  width: 100%;
  z-index: 0;
  position: relative;
}
#background.membershipBg .bgImg,
#background.membershipBg .sectionBg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
}
#background.membershipBg .bgImg[data-bg-pos="top left"],
#background.membershipBg .sectionBg[data-bg-pos="top left"] {
  background-position: 0% 0%;
}
#background.membershipBg .bgImg[data-bg-pos="top middle"],
#background.membershipBg .sectionBg[data-bg-pos="top middle"] {
  background-position: 50% 0;
}
#background.membershipBg .bgImg[data-bg-pos="top right"],
#background.membershipBg .sectionBg[data-bg-pos="top right"] {
  background-position: 100% 0%;
}
#background.membershipBg .bgImg[data-bg-pos="center left"],
#background.membershipBg .sectionBg[data-bg-pos="center left"] {
  background-position: 0% 50%;
}
#background.membershipBg .bgImg[data-bg-pos=center],
#background.membershipBg .sectionBg[data-bg-pos=center] {
  background-position: 50% 50%;
}
#background.membershipBg .bgImg[data-bg-pos="center right"],
#background.membershipBg .sectionBg[data-bg-pos="center right"] {
  background-position: 100% 50%;
}
#background.membershipBg .bgImg[data-bg-pos="bottom left"],
#background.membershipBg .sectionBg[data-bg-pos="bottom left"] {
  background-position: 0% 100%;
}
#background.membershipBg .bgImg[data-bg-pos="bottom middle"],
#background.membershipBg .sectionBg[data-bg-pos="bottom middle"] {
  background-position: 50% 100%;
}
#background.membershipBg .bgImg[data-bg-pos="bottom right"],
#background.membershipBg .sectionBg[data-bg-pos="bottom right"] {
  background-position: 100% 100%;
}
#background.membershipBg video {
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
}
#background.membershipBg video[data-bg-pos="top left"] {
  background-position: 0% 0%;
}
#background.membershipBg video[data-bg-pos="top middle"] {
  background-position: 50% 0;
}
#background.membershipBg video[data-bg-pos="top right"] {
  background-position: 100% 0%;
}
#background.membershipBg video[data-bg-pos="center left"] {
  background-position: 0% 50%;
}
#background.membershipBg video[data-bg-pos=center] {
  background-position: 50% 50%;
}
#background.membershipBg video[data-bg-pos="center right"] {
  background-position: 100% 50%;
}
#background.membershipBg video[data-bg-pos="bottom left"] {
  background-position: 0% 100%;
}
#background.membershipBg video[data-bg-pos="bottom middle"] {
  background-position: 50% 100%;
}
#background.membershipBg video[data-bg-pos="bottom right"] {
  background-position: 100% 100%;
}

.membershipBuffer {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-end;
  width: 100%;
  min-height: 100%;
  padding-right: 0px;
  padding-top: 0px;
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.35));
}

#backgroundPlayBtn {
  top: 10px;
  bottom: auto;
  background: var(--primary);
  border: 2px solid var(--light);
}
#backgroundPlayBtn .text {
  border: 0;
  -webkit-clip-path: rect(0 0 0 0);
          clip-path: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}
@media (hover: hover) and (pointer: fine) {
  #backgroundPlayBtn:hover {
    background: var(--weber-midnight);
  }
}
[data-browser=ie] #backgroundPlayBtn:hover {
  background: var(--weber-midnight);
}
.ie #backgroundPlayBtn:hover {
  background: var(--weber-midnight);
}
#backgroundPlayBtn.focus-visible {
  background: var(--weber-midnight);
}
#backgroundPlayBtn:focus-visible {
  background: var(--weber-midnight);
}

.loginTeaserVideo {
  position: fixed;
  top: 50%;
  transform: translateY(-50%);
  left: 50px;
  right: 680px;
  z-index: 99;
}
.loginTeaserVideo .videoHolder {
  position: relative;
  overflow: hidden;
  height: 0;
  margin-bottom: 10px;
  padding: 56.25% 0 0;
  border-radius: var(--radius);
  background: var(--brand-dark) url("/images/load-screen.jpg") no-repeat;
  background-size: cover;
}
.loginTeaserVideo .videoHolder[data-vimeo-initialized] {
  background: var(--basic);
}
.loginTeaserVideo .videoHolder .player,
.loginTeaserVideo .videoHolder iframe {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  border: 0;
}

header {
  width: 100vw;
  top: calc(var(--curveH) / 2 * -1);
  position: absolute;
  translate: 0 -30px;
}
header .logoWrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  max-width: 198px;
  width: 100%;
  margin: 0 auto;
}
header .logoWrap .logo {
  width: 100%;
}
header .orientationTitle {
  font-size: 1.1em;
  text-transform: uppercase;
  color: var(--brand-dark);
  padding-top: 25px;
  display: none;
}

.membershipFooter {
  background: #2d1541;
  font-family: var(--secondary-font);
  text-transform: uppercase;
  text-align: center;
  color: var(--light);
  width: 100%;
  padding: 5px;
  display: none;
}
.membershipFooter h1 {
  font-size: 1em;
}

.navCurve {
  width: 120vw;
  position: absolute;
  height: var(--curveH);
  background: #70569e;
  top: -100px;
  left: -10vw;
  border-radius: 50% 50% 0 0;
  display: block;
}
.navCurve:before, .navCurve:after {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0px;
  border-radius: 50%;
}
.navCurve:after {
  background: var(--primary);
  top: 15px;
}

#membership {
  --focus-outline-color: var(--brand-dark);
  --focus-shadow-color: var(--light);
  width: 100vw;
  position: relative;
  z-index: 5;
  overflow-x: clip;
}
#membership .membershipContainer {
  width: 100vw;
  display: flex;
  position: relative;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  padding: 45px 0px 0px;
  background: var(--primary);
  min-height: 400px;
  z-index: 5;
  background-image: linear-gradient(180deg, rgb(73, 37, 101) 46%, rgb(112, 86, 158) 100%);
}
#membership .titleArea {
  margin: 0 auto;
  position: relative;
  text-align: center;
  margin-bottom: 25px;
  border-bottom: 1px solid var(--lovely-lilac);
  padding: 0px 15px 15px;
  color: var(--light);
  width: -webkit-fit-content;
  width: fit-content;
  max-width: calc(100% - 30px);
}
#membership .titleArea h1, #membership .titleArea h2, #membership .titleArea h3 {
  font-size: 1.8em;
  font-family: var(--primary-font);
  padding-bottom: 7px;
  font-weight: 600;
}
#membership .titleArea p {
  margin: 0;
  padding: 0;
}
#membership .titleArea.accountProfiler h1 {
  font-size: 2em;
}
#membership .errorMessage,
#membership .field-validation-error {
  display: inline-block;
  text-align: center;
  background-color: var(--wrong);
  color: var(--wrong-contrast);
  max-width: 100%;
  font-weight: 600;
  padding: 5px 10px;
  margin: 2px auto 10px;
  border-radius: var(--radius);
  border: 1px solid color-mix(in srgb, var(--light) calc(0.4 * 100%), transparent);
}
#membership .loginNav {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  border-top: 1px solid color-mix(in srgb, var(--light) calc(0.3 * 100%), transparent);
  margin-top: 40px;
  padding-top: 15px;
  text-align: center;
  font-size: 0.9em;
  width: 100%;
}
#membership .loginNav a {
  background-color: transparent;
  color: var(--brand-dark-contrast);
  padding: 3px 5px;
  text-decoration: underline;
  border-bottom: 0px;
  text-underline-offset: 5px;
}
@media (hover: hover) and (pointer: fine) {
  #membership .loginNav a:hover {
    text-decoration: none;
  }
}
[data-browser=ie] #membership .loginNav a:hover {
  text-decoration: none;
}
.ie #membership .loginNav a:hover {
  text-decoration: none;
}
#membership .loginNav a:focus {
  outline: 2px solid var(--brand-dark-contrast);
  outline-offset: 2px;
}
#membership .loginNav > * {
  margin: 0 5px;
}
#membership .ssoMessage {
  border: 2px solid var(--grape-juice);
  border-radius: 15px;
  padding: 10px;
  font-size: 0.85em;
}
#membership .ssoMessage p {
  margin: 0;
  padding: 0;
}
#membership .formWrap {
  margin: 0 auto;
  margin-top: 0px;
  padding: 0 0px 20px;
  text-align: center;
  max-width: 600px;
}
#membership .formWrap.forgotPassword p {
  color: var(--light);
}
#membership .formWrap input[type=checkbox] {
  position: relative;
  margin: 0;
  cursor: pointer;
}
@supports ((-webkit-appearance: none) or (appearance: none)) {
  #membership .formWrap input[type=checkbox] {
    -webkit-appearance: none;
            appearance: none;
    width: 1em;
    height: 1em;
  }
  #membership .formWrap input[type=checkbox]:before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    border-radius: 3px;
    border-style: solid;
    border-width: 2px;
    border-color: color-mix(in srgb, var(--brand-dark) calc(0.7 * 100%), transparent);
    transition: all 200ms;
  }
  #membership .formWrap input[type=checkbox]:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1em;
    height: 1em;
    display: block;
    background-color: var(--brand-bright-contrast);
    -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9 IjAgMCAzMTYuMzggMjUwLjYiPjxwYXRoIGQ9Ik03MC40IDIxOS44YzQuNTUgNC44 NyA5LjIyIDkuNjcgMTQuMTIgMTQuMTkgMy43NSAzLjQ3IDcuNzEgNi44NSAxMS45 MyA5Ljc0IDUuNSAzLjc4IDExLjkyIDcuMDggMTguNzggNi44NSA2LjY2LS4yMyAx Mi43Ny0zLjczIDE3Ljk3LTcuNjIgOC42LTYuNDIgMTYuNjctMTUuMTcgMjMuODQt MjMuMTRMMzA1LjY4IDU0LjY5YzcuMi04IDExLjc5LTE4LjI1IDEwLjQ3LTI5LjE3 LTEuMDQtOC41OS01LjcxLTE2LjU1LTEzLjAxLTIxLjI5LTUuNjUtMy42Ny0xMi4y Ni00Ljk4LTE4LjktMy44Mi04LjkgMS41Ni0xNi41NCA3LjIyLTIyLjQ4IDEzLjc4 LTQ4LjM0IDUzLjMyLTk2LjU5IDEwNi43MS0xNDQuODUgMTYwLjExbC0zLjE5IDMu NTMtNjAuNC02Ni42M2MtOC40Mi05LjI5LTE5LjctMTMuOTQtMzEuOTItOS41Ny00 LjcyIDEuNjktOC45OSA0LjU4LTEyLjQ1IDguMTktMy44NiA0LjA0LTYuNzggOS4w Ni04LjEzIDE0LjQ5LTIuMzEgOS4yNy4zIDE4LjA3IDYuNjIgMjUuMTNsNjIuOTUg NzAuMzVaIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQiLz48L3N2Zz4K");
            mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9 IjAgMCAzMTYuMzggMjUwLjYiPjxwYXRoIGQ9Ik03MC40IDIxOS44YzQuNTUgNC44 NyA5LjIyIDkuNjcgMTQuMTIgMTQuMTkgMy43NSAzLjQ3IDcuNzEgNi44NSAxMS45 MyA5Ljc0IDUuNSAzLjc4IDExLjkyIDcuMDggMTguNzggNi44NSA2LjY2LS4yMyAx Mi43Ny0zLjczIDE3Ljk3LTcuNjIgOC42LTYuNDIgMTYuNjctMTUuMTcgMjMuODQt MjMuMTRMMzA1LjY4IDU0LjY5YzcuMi04IDExLjc5LTE4LjI1IDEwLjQ3LTI5LjE3 LTEuMDQtOC41OS01LjcxLTE2LjU1LTEzLjAxLTIxLjI5LTUuNjUtMy42Ny0xMi4y Ni00Ljk4LTE4LjktMy44Mi04LjkgMS41Ni0xNi41NCA3LjIyLTIyLjQ4IDEzLjc4 LTQ4LjM0IDUzLjMyLTk2LjU5IDEwNi43MS0xNDQuODUgMTYwLjExbC0zLjE5IDMu NTMtNjAuNC02Ni42M2MtOC40Mi05LjI5LTE5LjctMTMuOTQtMzEuOTItOS41Ny00 LjcyIDEuNjktOC45OSA0LjU4LTEyLjQ1IDguMTktMy44NiA0LjA0LTYuNzggOS4w Ni04LjEzIDE0LjQ5LTIuMzEgOS4yNy4zIDE4LjA3IDYuNjIgMjUuMTNsNjIuOTUg NzAuMzVaIiBzdHlsZT0iZmlsbC1ydWxlOmV2ZW5vZGQiLz48L3N2Zz4K");
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: 60%;
            mask-size: 60%;
    -webkit-mask-position: 50% 50%;
            mask-position: 50% 50%;
    transition: all 200ms;
    opacity: 0;
  }
  #membership .formWrap input[type=checkbox]:checked:before {
    border-color: var(--brand-dark);
    background-color: var(--brand-bright);
  }
  #membership .formWrap input[type=checkbox]:checked:after {
    opacity: 1;
  }
  #membership .formWrap input[type=checkbox][disabled] {
    opacity: 0.3;
    cursor: not-allowed;
  }
  #membership .formWrap input[type=checkbox][disabled]:before {
    background-color: color-mix(in srgb, var(--basic) calc(0.8 * 100%), transparent);
  }
}
#membership .formWrap input[type=checkbox] ~ label,
#membership .formWrap input[type=radio] ~ label {
  padding-left: 0.35em;
}
#membership .formWrap input[type=radio] {
  font-size: 1.1em;
  position: relative;
  margin: 0;
  box-shadow: none;
  cursor: pointer;
}
@supports ((-webkit-appearance: none) or (appearance: none)) {
  #membership .formWrap input[type=radio] {
    -webkit-appearance: none;
            appearance: none;
    width: 1em;
    height: 1em;
  }
  #membership .formWrap input[type=radio]:before {
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    border-style: solid;
    border-width: 2px;
    border-color: color-mix(in srgb, var(--brand-dark) calc(0.7 * 100%), transparent);
    border-radius: 50%;
    transition: all 200ms;
  }
  #membership .formWrap input[type=radio]:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 5;
    width: 0;
    height: 0;
    opacity: 0;
    border-radius: 50%;
    transition: all 200ms;
  }
  #membership .formWrap input[type=radio]:checked:before {
    border-color: var(--brand-dark);
    background-color: var(--hover);
  }
  #membership .formWrap input[type=radio]:checked:after {
    opacity: 1;
    background-color: var(--hover-contrast);
    width: 0.45em;
    height: 0.45em;
  }
  #membership .formWrap input[type=radio][disabled] {
    opacity: 0.3;
    cursor: not-allowed;
  }
  #membership .formWrap input[type=radio][disabled]:before {
    background-color: oklch(from var(--basic) min(l + l * 0.75, 1) c h);
  }
}
#membership .formWrap .styledFieldset {
  background-color: var(--light);
  color: var(--brand-dark);
}
#membership .formWrap .styledFieldset legend {
  text-transform: uppercase;
  background: var(--brand-dark);
  color: var(--light);
  border-radius: var(--radius-sm);
  font-weight: 700;
  border: 2px solid var(--light);
}
#membership .formWrap.login {
  display: flex;
  flex-direction: column;
  align-items: center;
  max-width: 960px;
  width: 100%;
  margin: 0 auto;
}
#membership .formWrap.login .formWrapInner {
  display: flex;
  align-items: center;
  width: 100%;
}
#membership .formWrap.login .statusMessage {
  background-color: var(--black);
  color: var(--black-contrast);
  padding: 5px 10px;
  width: -webkit-fit-content;
  width: fit-content;
  margin: 10px auto;
}
#membership .formWrap.login .horzDivider {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0;
  justify-content: center;
  width: 50px;
  max-width: 50px;
}
#membership .formWrap.login .horzDivider .or {
  text-transform: uppercase;
  margin-left: 15px;
  margin-right: 15px;
  padding: 10px;
  border-radius: var(--radius);
  translate: 0 0px;
  font-weight: 700;
  color: var(--light);
}
#membership .formWrap.login .loginWrapper {
  width: 100%;
  border: 2px solid var(--brand-dark-contrast);
  border-radius: var(--radius);
  padding: 20px;
}
#membership .formWrap.login .loginWrapper .fieldWrapper {
  min-width: 280px;
}
#membership .formWrap.login .loginWrapper .field-validation-error {
  margin-top: 10px;
}
#membership .formWrap.login .loginWrapper h3 {
  font-weight: 400;
}
#membership .formWrap.login .employeeLogin {
  width: 100%;
  padding: 30px 20px;
  margin-top: 25px;
  line-height: 1.8;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  border-radius: var(--radius);
  text-align: center;
}
#membership .formWrap.login .employeeLogin h3 {
  color: currentColor;
  padding-bottom: 20px;
  line-height: 1;
}
#membership .formWrap.login .employeeLogin a {
  padding: 8px 16px;
  font-weight: 700;
  border-radius: var(--radius);
  text-decoration: none;
  background-color: var(--light);
  color: var(--light-contrast);
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.login .employeeLogin a:hover {
    background-color: var(--hover);
    color: var(--hover-contrast);
  }
}
[data-browser=ie] #membership .formWrap.login .employeeLogin a:hover {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.ie #membership .formWrap.login .employeeLogin a:hover {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
#membership .formWrap.login .employeeLogin a.focus-visible {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
#membership .formWrap.login .employeeLogin a:focus-visible {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
#membership .formWrap.landingPage {
  padding-left: 0px;
  padding-right: 0px;
  width: calc(100% - 50px);
  margin-top: 10px;
  padding-top: 20px;
  max-width: 1200px;
}
#membership .formWrap.landingPage .buttons {
  --graphic: 170px;
  --guest-graphic: 120px;
  --border: 8px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 25px;
  margin: 0 auto;
  max-width: 860px;
  width: 100%;
  padding: 0px 0px 0 0;
}
#membership .formWrap.landingPage .buttons a {
  position: relative;
  font-weight: 700;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  text-decoration: none;
  border: 0px solid #a275b3;
  padding: 10px;
  padding-left: 0px;
  padding-right: 30px;
  border-radius: 20px;
  padding-bottom: 15px;
  width: -webkit-fit-content;
  width: fit-content;
  padding-left: var(--graphic);
  min-height: 125px;
  transition: filter 0.2s, translate 0.2s, scale 0.2s;
}
#membership .formWrap.landingPage .buttons a:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  scale: 0 0.25;
  transform-origin: 0% 50%;
  border-radius: var(--radius-circle);
  transition: all 500ms var(--timing-smooth-sm);
  background-color: var(--brand-bright);
}
#membership .formWrap.landingPage .buttons a .textHolder {
  display: flex;
  flex-direction: column;
  text-align: left;
  color: var(--light);
  gap: 8px;
}
#membership .formWrap.landingPage .buttons a .text {
  font-size: 2.5em;
  position: relative;
  z-index: 3;
  transition: color 300ms;
  font-family: var(--secondary-font);
}
#membership .formWrap.landingPage .buttons a .description {
  text-transform: none;
  font-weight: normal;
  font-size: 0.8em;
}
#membership .formWrap.landingPage .buttons a .graphicHolder {
  min-width: var(--graphic);
  width: var(--graphic);
  aspect-ratio: 170/196;
  position: absolute;
  z-index: 3;
  left: 0;
  bottom: -5px;
  transition: all 0.2s;
}
#membership .formWrap.landingPage .buttons a .graphicHolder .image {
  border-radius: 0;
  border-color: var(--light);
  border-width: var(--border);
  border-bottom-width: calc(var(--border) * 3.5);
  border-style: solid;
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  display: block;
}
#membership .formWrap.landingPage .buttons a .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  aspect-ratio: 1/1;
  width: 75px;
  border-radius: 50%;
  background: #814d9d;
  color: #d3c2df;
  border: 6px solid #2d1541;
  font-size: 2.5em;
  transform-origin: center center;
  font-weight: normal;
  top: -35px;
  right: -20px;
  position: absolute;
  overflow: hidden;
  transition: all 0.2s;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn {
  background: #2d1541;
  border: 5px solid #a275b3;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  padding-right: 50px;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .graphicHolder {
  translate: -25px 0px;
  rotate: -5deg;
  bottom: -18px;
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover {
    background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
    scale: 1.1;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .graphicHolder {
    rotate: -2deg;
    scale: 1.1;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .icon {
    background: #2d1541;
    rotate: 3deg;
  }
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .icon {
  background: #2d1541;
  rotate: 3deg;
}
.ie #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
.ie #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
.ie #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:hover .icon {
  background: #2d1541;
  rotate: 3deg;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn.focus-visible {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn.focus-visible .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn.focus-visible .icon {
  background: #2d1541;
  rotate: 3deg;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:focus-visible {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:focus-visible .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn:focus-visible .icon {
  background: #2d1541;
  rotate: 3deg;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn {
  color: var(--brand-dark-contrast);
  padding-left: var(--guest-graphic);
  gap: 10px;
  min-height: 100px;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .text {
  font-size: 2em;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .graphicHolder {
  min-width: var(--guest-graphic);
  width: var(--guest-graphic);
  translate: -20px 10px;
  rotate: 5deg;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .icon {
  display: none;
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover {
    background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
    scale: 1.1;
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover .graphicHolder {
    rotate: -2deg;
    scale: 1.1;
  }
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
.ie #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
.ie #membership .formWrap.landingPage .buttons a.guestLoginBtn:hover .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn.focus-visible {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn.focus-visible .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn:focus-visible {
  background: color-mix(in srgb, var(--grape-juice) calc(0.5 * 100%), transparent);
  scale: 1.1;
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn:focus-visible .graphicHolder {
  rotate: -2deg;
  scale: 1.1;
}
#membership .formWrap.accountProfiler {
  margin-top: 0;
  text-align: left;
}
#membership .formWrap.accountProfiler .profileSettingsExplainer,
#membership .formWrap.accountProfiler .profileErrorWrap {
  text-align: center;
}
#membership .formWrap.accountProfiler .errorMessage li {
  list-style-type: none;
}
#membership .formWrap.accountProfiler .instruction {
  margin-bottom: 20px;
  text-align: center;
}
#membership .formWrap.accountProfiler .accordionWrapper {
  background: none;
  color: var(--brand-dark-contrast);
}
#membership .formWrap.accountProfiler .styledFieldset {
  font-size: 0.9em;
  margin-bottom: 18px;
  padding-bottom: 18px;
}
#membership .formWrap.accountProfiler .styledFieldset .controlWrapper {
  border-bottom: 0 !important;
}
#membership .formWrap.accountProfiler .styledFieldset .controlWrapper:not(:last-child) {
  margin-bottom: 10px !important;
}
#membership .formWrap.accountProfiler .styledFieldset.phone .fieldWrapper {
  margin: 10px 0 15px;
  padding-bottom: 10px;
}
#membership .formWrap.accountProfiler .styledFieldset.phone .controlWrapper .control {
  border-bottom: 0;
}
#membership .formWrap.accountProfiler p.profileSelectExplainer {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  position: relative;
  text-align: left;
  background: var(--brand-bright);
  color: var(--brand-bright-contrast);
  padding: 8px 12px;
  margin: 0 auto 18px;
  border-radius: var(--radius);
}
#membership .formWrap.accountProfiler p.profileSelectExplainer:before {
  content: "";
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent;
  border-width: 7px calc(10px / 2) 0 calc(10px / 2);
  border-top-color: var(--brand-bright);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  bottom: -6px;
}
#membership .formWrap.accountProfiler .buttonHolder {
  margin: 20px 0 20px;
}
#membership .formWrap.accountProfiler .resetAccountTypeBtn {
  border: 0;
  padding: 0;
  border-radius: 0;
  overflow: visible;
  font-size: 0.8em;
  border-bottom: 1px solid var(--brand-dark-contrast);
  cursor: pointer;
  color: var(--brand-dark);
  background-color: var(--brand-dark-contrast);
  transition: 200ms;
  background: none;
  color: var(--light);
  padding: 2px;
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.accountProfiler .resetAccountTypeBtn:hover {
    border-color: var(--brand-bright);
    color: var(--brand-bright);
    background-color: var(--brand-bright-contrast);
  }
}
[data-browser=ie] #membership .formWrap.accountProfiler .resetAccountTypeBtn:hover {
  border-color: var(--brand-bright);
  color: var(--brand-bright);
  background-color: var(--brand-bright-contrast);
}
.ie #membership .formWrap.accountProfiler .resetAccountTypeBtn:hover {
  border-color: var(--brand-bright);
  color: var(--brand-bright);
  background-color: var(--brand-bright-contrast);
}
#membership .formWrap.accountProfiler .resetAccountTypeBtn.focus-visible {
  border-color: var(--brand-bright);
  color: var(--brand-bright);
  background-color: var(--brand-bright-contrast);
}
#membership .formWrap.accountProfiler .resetAccountTypeBtn:focus-visible {
  border-color: var(--brand-bright);
  color: var(--brand-bright);
  background-color: var(--brand-bright-contrast);
}
#membership .formWrap.accountProfiler .accordionModule .accordionTitle {
  background-color: var(--light);
  color: var(--light-contrast);
}
#membership .formWrap.accountProfiler .accordionModule .accordionTitle .icon {
  color: var(--basic);
}
#membership .formWrap.twoFactor .singleFieldSubmission {
  display: flex;
  justify-content: center;
}
#membership .formWrap.twoFactor .singleFieldSubmission .fieldWrapper {
  margin: 0 10px 0 0;
}
#membership .formWrap.twoFactor .singleFieldSubmission button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
#membership .formWrap.twoFactor .singleFieldSubmission button .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.twoFactor .singleFieldSubmission button:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] #membership .formWrap.twoFactor .singleFieldSubmission button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie #membership .formWrap.twoFactor .singleFieldSubmission button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor .singleFieldSubmission button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor .singleFieldSubmission button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor .singleFieldSubmission button[disabled], #membership .formWrap.twoFactor .singleFieldSubmission button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#membership .formWrap.twoFactor .singleFieldSubmission button {
  border-color: var(--light);
}
#membership .formWrap.twoFactor #TFAButtonApp {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
#membership .formWrap.twoFactor #TFAButtonApp .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.twoFactor #TFAButtonApp:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] #membership .formWrap.twoFactor #TFAButtonApp:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie #membership .formWrap.twoFactor #TFAButtonApp:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor #TFAButtonApp.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor #TFAButtonApp:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#membership .formWrap.twoFactor #TFAButtonApp[disabled], #membership .formWrap.twoFactor #TFAButtonApp[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#membership .formWrap.twoFactor #TFAButtonApp {
  padding: 0.35em 0.5em;
  margin-bottom: 20px;
}
#membership .formWrap.twoFactor #TFAButtonEmail,
#membership .formWrap.twoFactor #OTPButton {
  border: 0;
  background: none;
  padding: 0 0 5px;
  margin-top: 15px;
  border-bottom: 1px solid var(--brand-dark-contrast);
  color: var(--brand-dark-contrast);
  cursor: pointer;
}
#membership .formWrap.twoFactor #TFAButtonEmail[data-wait-a-few=true],
#membership .formWrap.twoFactor #OTPButton[data-wait-a-few=true] {
  opacity: 0.6;
  cursor: not-allowed;
}
#membership .buttonHolder {
  text-align: center;
  padding-top: 15px;
}
#membership .buttonHolder button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--weber-midnight);
  color: var(--weber-midnight-contrast);
  text-transform: uppercase;
}
#membership .buttonHolder button .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  #membership .buttonHolder button:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--weber-midnight);
  }
}
[data-browser=ie] #membership .buttonHolder button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--weber-midnight);
}
.ie #membership .buttonHolder button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--weber-midnight);
}
#membership .buttonHolder button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--weber-midnight);
}
#membership .buttonHolder button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--weber-midnight);
}
#membership .buttonHolder button[disabled], #membership .buttonHolder button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#membership .buttonHolder button {
  border-color: var(--light);
  margin: 0 auto;
}
#membership .styledFieldset {
  margin-bottom: 20px;
}
#membership .styledFieldset .groupLegend {
  padding: 4px 2px;
  margin-bottom: 10px;
  font-size: 0.9em;
}

.simpleDialog .closeDialog {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
.simpleDialog .closeDialog .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  .simpleDialog .closeDialog:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] .simpleDialog .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie .simpleDialog .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.simpleDialog .closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.simpleDialog .closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.simpleDialog .closeDialog[disabled], .simpleDialog .closeDialog[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
.simpleDialog .closeDialog .icon {
  display: none;
}

#resetData button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
#resetData button .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  #resetData button:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] #resetData button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie #resetData button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#resetData button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#resetData button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
#resetData button[disabled], #resetData button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}

@media (max-width: 1280px) {
  .loginTeaserVideo {
    left: 20px;
    right: 650px;
  }
}
@media (max-width: 1080px) {
  .loginTeaserVideo {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    transform: none;
    width: 100%;
    padding: 0 6px 15px;
  }
  #membership .formWrap.landingPage {
    padding-right: 10px;
    padding-left: 25px;
  }
  #membership .formWrap.landingPage .buttons {
    --guest-graphic: 110px;
    max-width: 850px;
    gap: 20px;
  }
}
@media (max-height: 650px) {
  header .logoWrap {
    max-width: 150px;
  }
  #membership .membershipContainer {
    padding-top: 10px;
  }
}
@media (max-width: 920px) {
  :root {
    --login-w: 550px;
  }
  .membershipBuffer {
    align-items: center;
  }
  #membership .formWrap.landingPage {
    padding-right: 0px;
    padding-left: 25px;
  }
  #membership .formWrap.landingPage .buttons {
    --graphic: 150px;
    --guest-graphic: 100px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .graphicHolder {
    translate: -10px -5px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .text {
    font-size: 1.75em;
  }
  #background.membershipBg {
    height: 50vh;
    width: 100%;
  }
  #background.membershipBg .bgImg,
  #background.membershipBg .sectionBg,
  #background.membershipBg video {
    height: 100%;
    width: 100%;
  }
}
@media (max-width: 825px) {
  #membership .formWrap.landingPage {
    padding-top: 20px;
    padding-bottom: 50px;
  }
  #membership .formWrap.landingPage .buttons {
    flex-direction: column;
    gap: 30px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn {
    padding-left: 30px;
    padding-right: var(--guest-graphic);
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .textHolder {
    text-align: right;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .graphicHolder {
    translate: 20px 10px;
    left: auto;
    right: 0;
  }
  #membership .formWrap.login .formWrapInner {
    flex-direction: column;
    max-width: 500px;
    padding-left: 20px;
    padding-right: 20px;
    gap: 10px;
  }
}
@media (max-width: 670px) {
  #resetData button {
    width: 100%;
    margin-bottom: 8px;
  }
  body:after {
    max-width: none;
  }
  header {
    max-width: 100%;
  }
  #membership {
    max-width: 100%;
  }
}
@media (max-width: 520px) {
  #membership .formWrap.landingPage .buttons {
    gap: 30px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn {
    --border: 5px;
    min-height: 85px;
    border: 3px solid #a275b3;
  }
  #membership .formWrap.landingPage .buttons .textHolder {
    font-size: 0.8em;
  }
}
@media (max-width: 470px) {
  header .logoWrap {
    max-width: 170px;
  }
  #membership .membershipContainer {
    padding-top: 30px;
  }
  #membership .titleArea p {
    font-size: 0.8em;
    line-height: 1.4em;
  }
  #membership .titleArea h1, #membership .titleArea h2, #membership .titleArea h3 {
    font-size: 1.5em;
  }
  #membership .formWrap.landingPage .buttons {
    --graphic: 140px;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn {
    min-height: 110px;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .graphicHolder {
    translate: -20px 0;
  }
  #membership .formWrap.landingPage .buttons a .icon {
    width: 65px;
    font-size: 2em;
  }
}
@media (max-width: 390px) {
  #membership .formWrap.landingPage {
    padding-left: 0px;
    width: calc(100% - 40px);
    padding-top: 0px;
  }
  #membership .formWrap.landingPage .buttons {
    --graphic: 115px;
    --guest-graphic:85px;
    justify-content: center;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn {
    --border: 6px;
    width: 100%;
    padding-right: 20px;
    text-align: center;
    justify-content: center;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .graphicHolder {
    translate: -10px -5px;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .icon {
    display: none;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .text {
    font-size: 2.25em;
  }
  #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .textHolder {
    text-align: center;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn {
    padding-left: 23px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .graphicsHolder {
    translate: 20px 5px;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .text {
    font-size: 1.55em;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn .textHolder {
    text-align: center;
  }
}
*[style*="font-weight: bold"] {
  font-weight: normal !important;
}

.rte {
  clear: both;
}
.rte h4,
.rte h5 {
  margin: 0.8em 0 0.5em;
}
.rte > *:first-child {
  margin-top: 0 !important;
}
.rte > *:last-child {
  margin-bottom: 0 !important;
}
.rte a.focus-visible {
  box-shadow: inset 0 0 0 2px black !important;
  text-decoration: none !important;
  border: 0 !important;
}
.rte a:focus-visible {
  box-shadow: inset 0 0 0 2px black !important;
  text-decoration: none !important;
  border: 0 !important;
}
.rte a:has(img) {
  position: relative;
  display: inline-flex;
  border: 0;
  padding: 0;
}
.rte a:has(img) .icon {
  position: absolute;
  top: 2px;
  right: 3px;
  padding: 6px;
  border-radius: var(--radius-sm);
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  box-shadow: var(--shadow);
  transition: all 200ms;
}
@media (hover: hover) and (pointer: fine) {
  .rte a:has(img):hover .icon {
    background-color: var(--hover);
    color: var(--hover-contrast);
  }
}
[data-browser=ie] .rte a:has(img):hover .icon {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.ie .rte a:has(img):hover .icon {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.rte a:has(img).focus-visible .icon {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.rte a:has(img):focus-visible .icon {
  background-color: var(--hover);
  color: var(--hover-contrast);
}
.rte iframe {
  max-width: calc(100vw - 80px);
  max-height: calc((100vw - 80px) / 1.7778); /* 16:9 */
}
.rte img {
  margin: 10px;
}
.rte img[style*="float: right"] {
  margin: 0 0 20px 20px;
}
.rte img[style*="float: left"] {
  margin: 0 20px 20px 0px;
}
.rte img[style*="float: right"], .rte img[style*="float: left"] {
  max-width: 60%;
}
@media (max-width: 670px) {
  .rte img[style*="float: right"], .rte img[style*="float: left"] {
    max-width: 50%;
  }
}
@media (max-width: 520px), (max-width: 1080px) and (min-width: 826px) {
  .rte img[style*="float: right"], .rte img[style*="float: left"] {
    max-width: 100%;
    float: none !important;
    margin: 0 auto 8px;
  }
}
.rte figure:not(.termBbl) {
  margin: 20px 0px;
  border-radius: calc(var(--radius) + 5px - var(--border));
  border: var(--border) solid var(--grey);
  padding: 5px;
  display: inline-block;
}
.rte figure:not(.termBbl) img {
  float: none !important;
  margin: 0px !important;
  max-width: 100% !important;
  border-radius: var(--radius) var(--radius) 0px 0px;
}
.rte figure:not(.termBbl)[style*="text-align: right"] {
  float: right;
  margin: 0 0 20px 20px;
}
.rte figure:not(.termBbl)[style*="text-align: left"] {
  float: left;
  margin: 0 20px 20px 0px;
}
.rte figure:not(.termBbl)[style*="text-align: left"], .rte figure:not(.termBbl)[style*="text-align: right"] {
  text-align: left !important;
  max-width: 60%;
}
@media (max-width: 670px) {
  .rte figure:not(.termBbl)[style*="text-align: left"], .rte figure:not(.termBbl)[style*="text-align: right"] {
    max-width: 50%;
  }
}
@media (max-width: 520px), (max-width: 1080px) and (min-width: 826px) {
  .rte figure:not(.termBbl)[style*="text-align: left"], .rte figure:not(.termBbl)[style*="text-align: right"] {
    max-width: 100%;
    float: none !important;
    margin: 0 auto 8px;
  }
}
.rte figure:not(.termBbl) figcaption {
  font-weight: 400;
  padding: 10px;
  border-radius: 0px 0px var(--radius) var(--radius);
  background-color: var(--light-grey);
  color: var(--light-grey-contrast);
  font-size: 0.9em;
  font-family: var(--primary-font);
}
.rte ol[style="list-style-type: upper-alpha;"] > li:before, .rte ol[style="list-style-type: lower-alpha;"] > li:before, .rte ol[style="list-style-type: lower-greek;"] > li:before, .rte ol[style="list-style-type: upper-roman;"] > li:before, .rte ol[style="list-style-type: lower-roman;"] > li:before {
  display: none;
}
.rte .tableWrapper {
  overflow: auto;
  max-width: 100%;
  margin-bottom: 20px;
  background: linear-gradient(to right, var(--light) 30%, color-mix(in srgb, var(--light) calc(0 * 100%), transparent)), linear-gradient(to right, color-mix(in srgb, var(--light) calc(0 * 100%), transparent), var(--light) 70%) 0 100%, radial-gradient(farthest-side at 0% 50%, color-mix(in srgb, var(--black) calc(0.2 * 100%), transparent), color-mix(in srgb, var(--black) calc(0 * 100%), transparent)), radial-gradient(farthest-side at 100% 50%, color-mix(in srgb, var(--black) calc(0.2 * 100%), transparent), color-mix(in srgb, var(--black) calc(0 * 100%), transparent)) 0 100%;
  background-repeat: no-repeat;
  background-color: var(--light);
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-position: 0 0, 100%, 0 0, 100%;
  background-attachment: local, local, scroll, scroll;
  container-type: inline-size;
}
.rte .tableWrapper table {
  min-width: 500px;
  margin-bottom: 5px;
  margin: 25px 0;
}
.rte .tableWrapper table caption {
  padding: 4px;
  font-weight: 700;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
  padding: 7px;
  font-family: var(--primary-font);
}
.rte .tableWrapper table tr:nth-child(even) {
  background: color-mix(in srgb, var(--brand-bright) calc(0.17 * 100%), transparent);
}
.rte .tableWrapper table tr:nth-child(odd) {
  background: color-mix(in srgb, var(--brand-bright) calc(0.06 * 100%), transparent);
}
.rte .tableWrapper table th {
  padding: 7px;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  border-color: black;
  line-height: 1.4em;
  font-family: var(--primary-font);
}
.rte .tableWrapper table td {
  padding: 5px 7px;
  font-size: 0.95em;
}
.rte .tableWrapper table a {
  background: none;
}
.rte .tableWrapper .mobileScrollMessage {
  position: relative;
  display: none;
  margin-top: 8px;
  padding: 5px 8px;
  border-radius: var(--radius);
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
}
.rte .tableWrapper .mobileScrollMessage:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: calc(5px + var(--radius));
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0 6px 8px 5px;
  border-color: transparent transparent var(--brand-dark) transparent;
}

@container (max-width: 500px) {
  .rte .tableWrapper .mobileScrollMessage {
    display: inline-block;
  }
}
@media (max-width: 670px) {
  .rte .tableWrapper .mobileScrollMessage {
    display: inline-block;
  }
}
@keyframes twinkle1 {
  0%, 100% {
    transform: scale(1) rotate(-2deg);
  }
  50% {
    transform: scale(1.1) rotate(3deg);
  }
}
@keyframes twinkle2 {
  0%, 100% {
    transform: scale(1) rotate(-2deg);
  }
  55% {
    transform: scale(0.9) rotate(3deg);
  }
}
@keyframes twinkle3 {
  0%, 100% {
    transform: scale(1) rotate(2deg);
  }
  55% {
    transform: scale(1.1) rotate(-4deg);
  }
}
.rte,
#revealModalDialog .copyWrap {
  font-family: var(--basic-font);
}
.rte h3, .rte h4, .rte h5, .rte h6,
#revealModalDialog .copyWrap h3,
#revealModalDialog .copyWrap h4,
#revealModalDialog .copyWrap h5,
#revealModalDialog .copyWrap h6 {
  font-family: var(--primary-font);
}
.rte p, .rte li,
#revealModalDialog .copyWrap p,
#revealModalDialog .copyWrap li {
  font-size: 1em;
  line-height: 1.5em;
}
.rte h3.heading,
#revealModalDialog .copyWrap h3.heading {
  width: -webkit-fit-content;
  width: fit-content;
  margin: 20px 0 15px;
  font-size: 2em;
  font-weight: 800;
  color: var(--primary);
  line-height: 1.025em;
}
.rte .headingList,
.rte .subheadingList,
#revealModalDialog .copyWrap .headingList,
#revealModalDialog .copyWrap .subheadingList {
  width: -webkit-fit-content;
  width: fit-content;
  margin: 0.75em 0 0.4em;
  padding-bottom: 0.25em;
  border: 5px solid var(--accent);
  border-width: 2px 0 0 2px;
  border-radius: 10px 0 0 0;
  font-weight: 700;
  padding: 10px 0 5px 10px;
  line-height: 1.2em;
  font-size: 1.2em;
  color: var(--brand-dark);
  background-color: var(--brand-dark-contrast);
  clear: both;
}
.rte h3.headingList,
#revealModalDialog .copyWrap h3.headingList {
  font-size: 1.2em;
}
.rte h4.subheadingList,
#revealModalDialog .copyWrap h4.subheadingList {
  border-color: var(--lovely-lilac);
  font-size: 1.1em;
}
.rte h4.subheading,
#revealModalDialog .copyWrap h4.subheading {
  width: -webkit-fit-content;
  width: fit-content;
  margin: 20px 0 8px;
  font-size: 1.45em;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--secondary);
  background-color: var(--basic-contrast);
  border-radius: 8px;
  font-family: var(--secondary-font);
  text-transform: uppercase;
}
.rte p:has(.largeText),
#revealModalDialog .copyWrap p:has(.largeText) {
  --star: 12px;
  position: relative;
}
.rte p:has(.largeText)::before, .rte p:has(.largeText)::after,
.rte p:has(.largeText) span::before, .rte p:has(.largeText) span::after,
#revealModalDialog .copyWrap p:has(.largeText)::before,
#revealModalDialog .copyWrap p:has(.largeText)::after,
#revealModalDialog .copyWrap p:has(.largeText) span::before,
#revealModalDialog .copyWrap p:has(.largeText) span::after {
  content: "";
  position: absolute;
  aspect-ratio: 70/69;
  width: var(--star);
  background-size: contain;
  background-repeat: no-repeat;
  transform-origin: center;
}
.rte p:has(.largeText)::before,
#revealModalDialog .copyWrap p:has(.largeText)::before {
  --star: 18px;
  left: 0%;
  top: 1px;
  background-image: url("/images/star-thin.svg");
  animation: twinkle1 2.4s ease-in-out infinite;
  animation-delay: 0s;
}
.rte p:has(.largeText)::after,
#revealModalDialog .copyWrap p:has(.largeText)::after {
  left: 27px;
  top: -14px;
  background-image: url("/images/star-thick.svg");
  animation: twinkle2 2s ease-in-out infinite;
  animation-delay: -0.8s;
}
.rte p:has(.largeText) span::before,
#revealModalDialog .copyWrap p:has(.largeText) span::before {
  left: 10px;
  top: 33px;
  background-image: url("/images/star-thick.svg");
  animation: twinkle3 2s ease-in-out infinite;
  animation-delay: -1.6s;
}
@container slideCopy (max-width: 635px) {
  .rte p:has(.largeText)::before, .rte p:has(.largeText)::after,
  .rte p:has(.largeText) span::before, .rte p:has(.largeText) span::after,
  #revealModalDialog .copyWrap p:has(.largeText)::before,
  #revealModalDialog .copyWrap p:has(.largeText)::after,
  #revealModalDialog .copyWrap p:has(.largeText) span::before,
  #revealModalDialog .copyWrap p:has(.largeText) span::after {
    translate: -7px 0;
  }
  .rte p:has(.largeText)::before,
  #revealModalDialog .copyWrap p:has(.largeText)::before {
    --star: 16px;
  }
  .rte p:has(.largeText)::after,
  #revealModalDialog .copyWrap p:has(.largeText)::after {
    left: 20px;
  }
  .rte p:has(.largeText) span::before,
  #revealModalDialog .copyWrap p:has(.largeText) span::before {
    top: 28px;
  }
}
.rte .largeText,
#revealModalDialog .copyWrap .largeText {
  position: relative;
  margin-bottom: 30px;
  display: block;
  width: -webkit-fit-content;
  width: fit-content;
  font-size: 1.5em;
  line-height: 1.4em;
  font-family: var(--primary-font);
  font-weight: 700;
  padding: 5px 10px 0px 43px;
  color: var(--secondary);
}
.rte .highlight,
#revealModalDialog .copyWrap .highlight {
  background: color-mix(in srgb, var(--brand-bright) calc(0.2 * 100%), transparent);
}
.rte .linkButton a,
.rte a:has(.linkButton),
#revealModalDialog .copyWrap .linkButton a,
#revealModalDialog .copyWrap a:has(.linkButton) {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.8em 1.3em;
  border-width: 2px;
  border-radius: 5px;
  line-height: 1.1em;
  text-align: center;
  font-family: var(--primary-font);
  letter-spacing: 0.025em;
  font-weight: 500;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
}
.rte .linkButton a .icon,
.rte a:has(.linkButton) .icon,
#revealModalDialog .copyWrap .linkButton a .icon,
#revealModalDialog .copyWrap a:has(.linkButton) .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  .rte .linkButton a:hover,
  .rte a:has(.linkButton):hover,
  #revealModalDialog .copyWrap .linkButton a:hover,
  #revealModalDialog .copyWrap a:has(.linkButton):hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    cursor: pointer;
    box-shadow: 0 0 0 5px var(--brand-dark);
  }
}
[data-browser=ie] .rte .linkButton a:hover,
[data-browser=ie] .rte a:has(.linkButton):hover,
[data-browser=ie] #revealModalDialog .copyWrap .linkButton a:hover,
[data-browser=ie] #revealModalDialog .copyWrap a:has(.linkButton):hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.ie .rte .linkButton a:hover,
.ie .rte a:has(.linkButton):hover,
.ie #revealModalDialog .copyWrap .linkButton a:hover,
.ie #revealModalDialog .copyWrap a:has(.linkButton):hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.rte .linkButton a.focus-visible,
.rte a:has(.linkButton).focus-visible,
#revealModalDialog .copyWrap .linkButton a.focus-visible,
#revealModalDialog .copyWrap a:has(.linkButton).focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.rte .linkButton a:focus-visible,
.rte a:has(.linkButton):focus-visible,
#revealModalDialog .copyWrap .linkButton a:focus-visible,
#revealModalDialog .copyWrap a:has(.linkButton):focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  cursor: pointer;
  box-shadow: 0 0 0 5px var(--brand-dark);
}
.rte .linkButton a[disabled], .rte .linkButton a[aria-disabled=true],
.rte a:has(.linkButton)[disabled],
.rte a:has(.linkButton)[aria-disabled=true],
#revealModalDialog .copyWrap .linkButton a[disabled],
#revealModalDialog .copyWrap .linkButton a[aria-disabled=true],
#revealModalDialog .copyWrap a:has(.linkButton)[disabled],
#revealModalDialog .copyWrap a:has(.linkButton)[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
.rte .linkButton a,
.rte a:has(.linkButton),
#revealModalDialog .copyWrap .linkButton a,
#revealModalDialog .copyWrap a:has(.linkButton) {
  width: -webkit-fit-content;
  width: fit-content;
}
.rte .linkButton a .icon,
.rte a:has(.linkButton) .icon,
#revealModalDialog .copyWrap .linkButton a .icon,
#revealModalDialog .copyWrap a:has(.linkButton) .icon {
  display: none;
}
.rte ul, .rte ol,
#revealModalDialog .copyWrap ul,
#revealModalDialog .copyWrap ol {
  margin-left: 15px;
}
.rte ul,
#revealModalDialog .copyWrap ul {
  padding: 0;
}
.rte ul > li,
#revealModalDialog .copyWrap ul > li {
  margin-left: 20px;
  margin-bottom: 5px;
}
.rte ul > li::marker,
#revealModalDialog .copyWrap ul > li::marker {
  font-size: 1.25em;
  color: var(--accent);
}
.rte ol,
#revealModalDialog .copyWrap ol {
  padding: 0;
  list-style-type: none;
  counter-reset: counter;
}
.rte ol > li,
#revealModalDialog .copyWrap ol > li {
  position: relative;
  counter-increment: counter;
  margin-left: 20px;
  margin-bottom: 5px;
}
.rte ol > li:before,
#revealModalDialog .copyWrap ol > li:before {
  content: counter(counter) ". ";
  position: absolute;
  right: calc(100% + 8px);
  color: var(--brand-dark);
  font-weight: bold;
}
.rte a,
#revealModalDialog .copyWrap a {
  color: var(--link);
  background-color: var(--link-contrast);
}

.calloutSubtle {
  clear: both;
  margin: 35px auto;
  background-color: var(--light);
  color: var(--light-contrast);
  padding-left: 30px;
  max-width: calc(100% - 70px);
  position: relative;
}
.calloutSubtle * {
  font-family: var(--primary-font);
}
.calloutSubtle .accentIcon {
  position: absolute;
  left: 3px;
  top: 0px;
  font-size: 4em;
  color: var(--lovely-lilac);
  z-index: 5;
}
.calloutSubtle .rte {
  filter: drop-shadow(8px 5px 4px rgba(0, 0, 0, 0.2));
  color: var(--waldos-den);
  border-radius: 0 0 var(--radius) 0;
  background: var(--light);
  padding: 15px;
  padding-left: 25px;
  border: 1px solid var(--lovely-lilac);
  border-width: 0 2px 2px 0;
  min-height: 45px;
}

.calloutBold {
  clear: both;
  margin: 35px auto;
  padding: 20px 35px;
  border-radius: var(--radius);
  background-color: var(--waldos-den);
  color: var(--waldos-den-contrast);
  min-height: 60px;
  position: relative;
  max-width: calc(100% - 50px);
}
.calloutBold * {
  font-family: var(--primary-font);
  font-weight: 500;
}
.calloutBold .accentIcon {
  position: absolute;
  font-size: 2.5em;
  color: var(--bee-balm);
  z-index: 5;
}
.calloutBold .accentIcon.top {
  top: -10px;
  left: -10px;
  font-size: 2em;
  rotate: 70deg;
}
.calloutBold .accentIcon.bottom {
  bottom: -10px;
  right: -8px;
  scale: -1;
  font-size: 2.5em;
}
.calloutBold .rte {
  filter: drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2));
}
.calloutBold a {
  background-color: var(--waldos-den);
  color: var(--waldos-den-contrast);
  border-bottom: 2px solid var(--waldos-den-contrast);
}
@container slideCopy (max-width: 635px) {
  .calloutBold {
    max-width: calc(100% - 15px);
    padding: 15px 25px 18px;
  }
  .calloutBold .accentIcon.top {
    top: -9px;
    left: -8px;
    font-size: 1.8em;
    rotate: 80deg;
  }
  .calloutBold .accentIcon.bottom {
    font-size: 2.2em;
  }
  .calloutSubtle {
    max-width: calc(100% - 40px);
  }
  .calloutSubtle .rte {
    padding-left: 10px;
  }
  .calloutSubtle .accentIcon {
    font-size: 3em;
  }
  .rte .largeText, #revealModalDialog .copyWrap .largeText {
    line-height: 1.3em;
    font-size: 1.4em;
    margin-bottom: 25px;
    padding-left: 25px;
  }
}
@container slideCopy (max-width: 420px) {
  .calloutSubtle {
    max-width: 100%;
    margin-top: 15px;
  }
}
#membership .formWrap.maintenance {
  background: var(--brand-bright);
  border-color: var(--light);
}
#membership .formWrap.maintenance .formArea {
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-around;
  align-items: center;
  width: 100%;
  background: transparent;
}
#membership .formWrap.maintenance .formArea .rte {
  color: var(--light);
}
#membership .formWrap.maintenance .formArea .icon {
  flex-shrink: 0;
  flex-grow: 0;
  width: 75px;
  height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3em;
  background: var(--brand-dark);
  border: 2px solid var(--light);
  border-radius: 50%;
  color: var(--light);
  margin-bottom: 20px;
}

@media (max-width: 670px) {
  #membership .formWrap.maintenance {
    padding: 15px;
  }
  #membership .formWrap.maintenance .formArea {
    flex-direction: column-reverse;
    justify-content: center;
  }
  #membership .formWrap.maintenance .formArea .icon {
    width: 55px;
    height: 55px;
    font-size: 2.25em;
    padding: 0;
    margin-bottom: 15px;
  }
}
.membershipPage .errorPage .titleArea {
  margin-bottom: 30px;
}
.membershipPage .errorPage .icon {
  font-size: 5em;
  display: block;
  margin: 0 auto 20px;
  text-align: center;
  background: var(--brand-bright);
  border-radius: 50%;
  border: 4px solid var(--light);
  color: var(--light);
  margin-bottom: 20px;
  width: 150px;
  height: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
}
.membershipPage .errorPage .rte {
  text-align: center;
  background: oklch(from var(--brand-dark) max(l - l * 0.15, 0) c h);
  padding: 50px 20px 40px 20px;
  margin-top: -60px;
  border: 3px solid var(--light);
}
.membershipPage .errorPage .rte h3.heading {
  background: transparent;
  color: var(--brand-dark-contrast);
  text-transform: none;
}

@media (max-width: 825px) {
  .membershipPage .errorPage .icon {
    font-size: 4em;
    width: 100px;
    height: 100px;
    border-width: 2px;
  }
}
@layer base {
  details {
    transition: all 500ms;
    clear: both;
  }
  details > summary::marker,
  details > summary::-webkit-details-marker {
    display: none;
  }
  .accordionModule .accordionTitle {
    cursor: pointer;
    list-style: none;
  }
  .accordionModule[data-interaction-mandatory=true]:not(.interactedWith) .icon-mandatory {
    display: block !important;
  }
  .accordionModule[data-interaction-mandatory=true]:not(.interactedWith) .interactionNotification {
    display: block !important;
    border: 0;
    -webkit-clip-path: rect(0 0 0 0);
            clip-path: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .accordionModule + .rte {
    margin-top: 25px;
  }
}
ul:has(.accordionModule) {
  margin: 0;
  padding: 0;
}
ul:has(.accordionModule) > li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
ul:has(.accordionModule) + .rte {
  margin-top: 25px;
}

.accordionSet {
  --radius: 15px;
  --borderC: var(--soft-lavendar);
}
.accordionSet .accordionContainer:first-child {
  margin-top: 20px;
}
.accordionSet .accordionContainer:first-child .primaryAccordion .accordionTitle {
  border-radius: var(--radius) var(--radius) 0 0;
}
.accordionSet .accordionContainer:last-child .primaryAccordion .accordionTitle {
  border-bottom-width: 2px;
  border-radius: 0 0 var(--radius) var(--radius);
}
.accordionSet .accordionContainer:last-child .accordionWrapper {
  border-radius: 0 0 var(--radius) var(--radius);
  border-bottom-width: 2px;
}
.accordionSet .accordionContainer:only-child {
  margin-top: 20px;
}
.accordionSet .accordionContainer:only-child .primaryAccordion .accordionTitle {
  border-radius: var(--radius);
}
.accordionSet .accordionContainer:only-child .accordionWrapper {
  border-radius: 0 0 var(--radius) var(--radius);
  border-bottom-width: 2px;
}
.accordionSet .primaryAccordion {
  position: relative;
  width: 100%;
}
.accordionSet .primaryAccordion:focus-within {
  z-index: 5;
}
.accordionSet .primaryAccordion[open] .accordionTitle {
  text-decoration: underline;
  text-underline-offset: 5px;
  border-bottom-left-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}
.accordionSet .primaryAccordion[open] .accordionTitle .icon-arrow-down {
  rotate: 180deg;
}
.accordionSet .primaryAccordion[data-interaction-mandatory=true]:not(.interactedWith) .icon-mandatory {
  position: absolute;
  right: 5px;
  top: 5px;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  padding: 3px;
  border-radius: 2px;
  box-shadow: 1px 1px 8px 0px color-mix(in srgb, var(--black) calc(0.3 * 100%), transparent);
  font-size: 0.75em;
}
.accordionSet .primaryAccordion .accordionTitle {
  color: var(--primary);
  display: flex;
  gap: 10px;
  position: relative;
  min-height: 65px;
  align-items: center;
  padding: 7px 15px 7px 40px;
  border: 2px solid var(--borderC);
  border-bottom-width: 0px;
  background: var(--snow-drift);
  transition: background-color 0.15s;
  font-family: var(--primary-font);
}
.accordionSet .primaryAccordion .accordionTitle .icon-arrow-down {
  color: var(--grape-juice);
  position: absolute;
  top: 50%;
  left: 12px;
  translate: 0 -50%;
  transform-origin: center;
  transition: 0.2s rotate;
  display: inline-block;
}
.accordionSet .primaryAccordion .accordionTitle .icon-arrow-down:before {
  content: "M";
}
.accordionSet .primaryAccordion .accordionTitle .text {
  font-weight: 700;
  font-size: 1.2em;
  line-height: 1.35em;
  transition: translate 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .accordionSet .primaryAccordion .accordionTitle:hover {
    background-color: var(--weber-midnight);
    color: var(--weber-midnight-contrast);
    color: var(--snow-drift);
  }
  .accordionSet .primaryAccordion .accordionTitle:hover .icon-arrow-down {
    color: var(--secondary-contrast-contrast);
  }
}
[data-browser=ie] .accordionSet .primaryAccordion .accordionTitle:hover {
  background-color: var(--weber-midnight);
  color: var(--weber-midnight-contrast);
  color: var(--snow-drift);
}
[data-browser=ie] .accordionSet .primaryAccordion .accordionTitle:hover .icon-arrow-down {
  color: var(--secondary-contrast-contrast);
}
.ie .accordionSet .primaryAccordion .accordionTitle:hover {
  background-color: var(--weber-midnight);
  color: var(--weber-midnight-contrast);
  color: var(--snow-drift);
}
.ie .accordionSet .primaryAccordion .accordionTitle:hover .icon-arrow-down {
  color: var(--secondary-contrast-contrast);
}
.accordionSet .primaryAccordion .accordionTitle.focus-visible {
  background-color: var(--weber-midnight);
  color: var(--weber-midnight-contrast);
  color: var(--snow-drift);
}
.accordionSet .primaryAccordion .accordionTitle.focus-visible .icon-arrow-down {
  color: var(--secondary-contrast-contrast);
}
.accordionSet .primaryAccordion .accordionTitle:focus-visible {
  background-color: var(--weber-midnight);
  color: var(--weber-midnight-contrast);
  color: var(--snow-drift);
}
.accordionSet .primaryAccordion .accordionTitle:focus-visible .icon-arrow-down {
  color: var(--secondary-contrast-contrast);
}
.accordionSet .primaryAccordion .accordionWrapper {
  padding: 25px;
  border: 2px solid var(--borderC);
  border-top-width: 0px;
  border-bottom-width: 0px;
  background: var(--light);
}
.accordionSet .primaryAccordion .accordionWrapper img {
  max-width: 100%;
  height: auto !important;
}
.accordionSet .primaryAccordion + .rte {
  margin-top: 25px;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NvbG8tbGF5ZXJzLnNjc3MiLCJmaWxlOi8vL0U6L1dlYmVyJTIwU3RhdGUlMjBVbml2ZXJzaXR5JTIwLSUyMFVwZ3JhZGUlMjAtJTIwNzYxMC9XZWJlclNVLTc2MTAvU2Fzcy9jdXN0b20vYWRnTWVtYmVyc2hpcC5zY3NzIiwiZmlsZTovLy9lOi93ZWJlciUyMHN0YXRlJTIwdW5pdmVyc2l0eSUyMC0lMjB1cGdyYWRlJTIwLSUyMDc2MTAvd2ViZXJzdS03NjEwL25vZGVfbW9kdWxlcy9pbnRsLXRlbC1pbnB1dC9idWlsZC9jc3MvaW50bHRlbGlucHV0LmNzcyIsIi4uLy4uLy4uL1Nhc3MvY3VzdG9tL2FkZ01lbWJlcnNoaXAuc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NoYXJlZC1taXhpbnMuc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NoYXJlZC1mb3Jtcy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19mb3Jtcy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvX2dsb2JhbC9fc2hhcmVkLWdsb2JhbC5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19nbG9iYWwuc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NoYXJlZC1kaWFsb2dzLnNjc3MiLCJmaWxlOi8vL0U6L1dlYmVyJTIwU3RhdGUlMjBVbml2ZXJzaXR5JTIwLSUyMFVwZ3JhZGUlMjAtJTIwNzYxMC9XZWJlclNVLTc2MTAvU2Fzcy9fZ2xvYmFsL19zaGFyZWQtdmFyaWFibGVzLnNjc3MiLCJmaWxlOi8vL0U6L1dlYmVyJTIwU3RhdGUlMjBVbml2ZXJzaXR5JTIwLSUyMFVwZ3JhZGUlMjAtJTIwNzYxMC9XZWJlclNVLTc2MTAvU2Fzcy9jdXN0b20vX2RpYWxvZy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19taXhpbnMuc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NoYXJlZC1iYWNrZ3JvdW5kLnNjc3MiLCJmaWxlOi8vL0U6L1dlYmVyJTIwU3RhdGUlMjBVbml2ZXJzaXR5JTIwLSUyMFVwZ3JhZGUlMjAtJTIwNzYxMC9XZWJlclNVLTc2MTAvU2Fzcy9jdXN0b20vX2JhY2tncm91bmQuc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL2N1c3RvbS9fbG9naW4uc2NzcyIsImZpbGU6Ly8vRTovV2ViZXIlMjBTdGF0ZSUyMFVuaXZlcnNpdHklMjAtJTIwVXBncmFkZSUyMC0lMjA3NjEwL1dlYmVyU1UtNzYxMC9TYXNzL19nbG9iYWwvX3NoYXJlZC1yaWNoVGV4dFN0eWxlcy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19yaWNoVGV4dFN0eWxlcy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19tYWludGVuYW5jZS5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19lcnJvclBhZ2VzLnNjc3MiLCJmaWxlOi8vL0U6L1dlYmVyJTIwU3RhdGUlMjBVbml2ZXJzaXR5JTIwLSUyMFVwZ3JhZGUlMjAtJTIwNzYxMC9XZWJlclNVLTc2MTAvU2Fzcy9fZ2xvYmFsL19zaGFyZWQtYWNjb3JkaW9ucy5zY3NzIiwiZmlsZTovLy9FOi9XZWJlciUyMFN0YXRlJTIwVW5pdmVyc2l0eSUyMC0lMjBVcGdyYWRlJTIwLSUyMDc2MTAvV2ViZXJTVS03NjEwL1Nhc3MvY3VzdG9tL19hY2NvcmRpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFBO0FBQ0EsV0FBQTtBQ0NBLHNCQUFBO0FDRkE7RUFDRSxzQ0FBQTtFQUNBLHdCQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNEJBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBQ0EsdURBQUE7RUFDQSx3QkFBQTtFQUNBLHVCQUFBO0VBQ0EsNkNBQUE7RUFDQSxnREFBQTtFQUNBLDZDQUFBO0VBQ0EsZ0RBQUE7RUFDQSwrQkFBQTtFQUNBLDhCQUFBO0VBQ0EsK0JBQUE7QUNJRjs7QUREQTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7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Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQ0FBQTtFQUNBLHdCQUFB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TjtBa0JqNUxNO0VBQ0UsWUFBQTtBbEJtNUxSO0FrQi80TE07RUFDRSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSwwQkFBQTtBbEJpNUxSO0FDdCtLRTtFQUNFO0lBb0RBLHVDQUFBO0lBQ0EscUNBQUE7SWlCNWRJLHdCQUFBO0VsQms1TE47RWtCajVMTTtJQUNFLHlDQUFBO0VsQm01TFI7QUFDRjtBQzErS0U7RUErQ0UsdUNBQUE7RUFDQSxxQ0FBQTtFaUI1ZEksd0JBQUE7QWxCMjVMUjtBa0IxNUxRO0VBQ0UseUNBQUE7QWxCNDVMVjtBQzkrS0U7RUEyQ0UsdUNBQUE7RUFDQSxxQ0FBQTtFaUI1ZEksd0JBQUE7QWxCbTZMUjtBa0JsNkxRO0VBQ0UseUNBQUE7QWxCbzZMVjtBQzMrS0U7RUFnQ0UsdUNBQUE7RUFDQSxxQ0FBQTtFaUI1ZEksd0JBQUE7QWxCMjZMUjtBa0IxNkxRO0VBQ0UseUNBQUE7QWxCNDZMVjtBQy8rS0U7RUE0QkUsdUNBQUE7RUFDQSxxQ0FBQTtFaUI1ZEksd0JBQUE7QWxCbTdMUjtBa0JsN0xRO0VBQ0UseUNBQUE7QWxCbzdMVjtBa0I3NkxJO0VBQ0csYUFBQTtFQUNILGdDQUFBO0VBQ0EscUJBQUE7RUFDQSx3QkFBQTtFQUNBLHdCQUFBO0FsQis2TEo7QWtCOTZMTTtFQUNFLGVBQUE7RUFDQSx1QkFBQTtBbEJnN0xSO0FrQjU2TEk7RUFDRSxnQkFBQTtBbEI4NkxOIiwiZmlsZSI6ImFkZ01lbWJlcnNoaXAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGxheWVyIHJlc2V0OyAvLyBDcmVhdGUgMXN0IGxheWVyIG5hbWVkIFwicmVzZXRcIlxyXG5AbGF5ZXIgYmFzZTsgLy8gQ3JlYXRlIDJuZCBsYXllciBuYW1lZCBcImJhc2VcIlxyXG5cclxuLy8gU29tZSBhZGRpdGlvbmFsIG5vdGVzIGFuZCByZW1pbmRlcnM6XHJcbi8vIC0gc29sby1sYXllcnMgYXJlIGFwcGxpZWQgaW4gdGhlIG9yZGVyIHRoZXkncmUgZGVjbGFyZWQuIFNvIGluIHRoZSBjYXNlIGFib3ZlLCBzdHlsZXMgaW4gXCJiYXNlXCIgb3ZlcndyaXRlIHN0eWxlcyBpbiBcInJlc2V0XCIuXHJcbi8vIC0gUmVndWxhciBzdHlsZXMgKGFrYSBvbmVzIG5vdCBpbnNpZGUgYSBsYXllcikgYWx3YXlzIG92ZXJ3cml0ZSBzdHlsZXMgaW5zaWRlIG9mIHNvbG8tbGF5ZXJzLCByZWdhcmRsZXNzIG9mIHNwZWNpZmljaXR5LlxyXG4vLyAtIERPIE5PVCB1c2UgIWltcG9ydGFudCBpbnNpZGUgb2YgYSBsYXllciwgaXQgV0lMTCBjYXVzZSBpc3N1ZXMgYW5kIHNhZG5lc3MuXHJcbiIsIkB1c2UgXCIuLi9fZ2xvYmFsL3NvbG8tbGF5ZXJzXCI7IC8vIFRoaXMgc2hvdWxkIEFMV0FZUyBiZSBmaXJzdCBpbiB0aGUgbGlzdCBvZiBpbXBvcnRzIG9yIHRoaW5ncyB3aWxsIGdldCB3ZWlyZC5cclxuXHJcbi8qIHN0eWxlbGludC1kaXNhYmxlICovXHJcbkB1c2UgXCJwa2c6aW50bC10ZWwtaW5wdXQvc3R5bGVzXCI7XHJcbi8qIHN0eWxlbGludC1lbmFibGUgKi9cclxuQHVzZSBcImZvbnRzXCI7XHJcbkB1c2UgXCJmb3Jtc1wiO1xyXG5AdXNlIFwiZ2xvYmFsXCI7XHJcbkB1c2UgXCJkaWFsb2dcIjtcclxuQHVzZSBcImJhY2tncm91bmRcIjtcclxuQHVzZSBcImxvZ2luXCI7XHJcbkB1c2UgXCJyaWNoVGV4dFN0eWxlc1wiO1xyXG5AdXNlIFwibWFpbnRlbmFuY2VcIjtcclxuQHVzZSBcImVycm9yUGFnZXNcIjtcclxuQHVzZSBcImFjY29yZGlvblwiO1xyXG4iLCI6cm9vdCB7XG4gIC0taXRpLWhvdmVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAtLWl0aS1ib3JkZXItY29sb3I6ICNjY2M7XG4gIC0taXRpLWRpYWxjb2RlLWNvbG9yOiAjOTk5O1xuICAtLWl0aS1kcm9wZG93bi1iZzogd2hpdGU7XG4gIC0taXRpLXNlYXJjaC1pY29uLWNvbG9yOiAjOTk5O1xuICAtLWl0aS1zcGFjZXItaG9yaXpvbnRhbDogOHB4O1xuICAtLWl0aS1mbGFnLWhlaWdodDogMTJweDtcbiAgLS1pdGktZmxhZy13aWR0aDogMTZweDtcbiAgLS1pdGktYm9yZGVyLXdpZHRoOiAxcHg7XG4gIC0taXRpLWFycm93LWhlaWdodDogNHB4O1xuICAtLWl0aS1hcnJvdy13aWR0aDogNnB4O1xuICAtLWl0aS10cmlhbmdsZS1ib3JkZXI6IGNhbGModmFyKC0taXRpLWFycm93LXdpZHRoKSAvIDIpO1xuICAtLWl0aS1hcnJvdy1wYWRkaW5nOiA2cHg7XG4gIC0taXRpLWFycm93LWNvbG9yOiAjNTU1O1xuICAtLWl0aS1wYXRoLWZsYWdzLTF4OiB1cmwoXCIuLi9pbWcvZmxhZ3Mud2VicFwiKTtcbiAgLS1pdGktcGF0aC1mbGFncy0yeDogdXJsKFwiLi4vaW1nL2ZsYWdzQDJ4LndlYnBcIik7XG4gIC0taXRpLXBhdGgtZ2xvYmUtMXg6IHVybChcIi4uL2ltZy9nbG9iZS53ZWJwXCIpO1xuICAtLWl0aS1wYXRoLWdsb2JlLTJ4OiB1cmwoXCIuLi9pbWcvZ2xvYmVAMngud2VicFwiKTtcbiAgLS1pdGktZmxhZy1zcHJpdGUtd2lkdGg6IDM5MDRweDtcbiAgLS1pdGktZmxhZy1zcHJpdGUtaGVpZ2h0OiAxMnB4O1xuICAtLWl0aS1tb2JpbGUtcG9wdXAtbWFyZ2luOiAzMHB4O1xufVxuXG4uaXRpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uaXRpICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLml0aV9fYTExeS10ZXh0IHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dCxcbi5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXRbdHlwZT10ZXh0XSxcbi5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXRbdHlwZT10ZWxdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0LFxuW2Rpcj1ydGxdIC5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXRbdHlwZT10ZXh0XSxcbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGVsXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLml0aV9fY291bnRyeS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKTtcbn1cbi5pdGlfX3NlbGVjdGVkLWNvdW50cnkge1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5pdGlfX3NlbGVjdGVkLWNvdW50cnktcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCB2YXIoLS1pdGktYXJyb3ctcGFkZGluZykgMCB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xufVxuLml0aV9fYXJyb3cge1xuICBtYXJnaW4tbGVmdDogdmFyKC0taXRpLWFycm93LXBhZGRpbmcpO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogdmFyKC0taXRpLXRyaWFuZ2xlLWJvcmRlcikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogdmFyKC0taXRpLXRyaWFuZ2xlLWJvcmRlcikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IHZhcigtLWl0aS1hcnJvdy1oZWlnaHQpIHNvbGlkIHZhcigtLWl0aS1hcnJvdy1jb2xvcik7XG59XG5bZGlyPXJ0bF0gLml0aV9fYXJyb3cge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWl0aS1hcnJvdy1wYWRkaW5nKTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uaXRpX19hcnJvdy0tdXAge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1pdGktYXJyb3ctaGVpZ2h0KSBzb2xpZCB2YXIoLS1pdGktYXJyb3ctY29sb3IpO1xufVxuLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRpLWRyb3Bkb3duLWJnKTtcbn1cbi5pdGktLWlubGluZS1kcm9wZG93biAuaXRpX19kcm9wZG93bi1jb250ZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAyO1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKHZhcigtLWl0aS1ib3JkZXItd2lkdGgpICogLTEpO1xuICBib3JkZXI6IHZhcigtLWl0aS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWl0aS1ib3JkZXItY29sb3IpO1xuICBib3gtc2hhZG93OiAxcHggMXB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG4uaXRpX19zZWFyY2gtaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMjhweDtcbn1cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDhweCBjZW50ZXI7XG59XG4uaXRpX19zZWFyY2gtaW5wdXQgKyAuaXRpX19jb3VudHJ5LWxpc3Qge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0taXRpLWJvcmRlci1jb2xvcik7XG59XG4uaXRpX19zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLml0aV9fc2VhcmNoLWlucHV0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaXRpX19zZWFyY2gtaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogOHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtaWNvbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiA4cHg7XG59XG4uaXRpX19zZWFyY2gtaWNvbi1zdmcge1xuICBzdHJva2U6IHZhcigtLWl0aS1zZWFyY2gtaWNvbi1jb2xvcik7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZS13aWR0aDogMztcbn1cbi5pdGlfX3NlYXJjaC1jbGVhciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDRweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5pdGlfX3NlYXJjaC1jbGVhciAuaXRpX19zZWFyY2gtY2xlYXIteCB7XG4gIHN0cm9rZS13aWR0aDogMjtcbn1cbi5pdGlfX3NlYXJjaC1jbGVhciAuaXRpX19zZWFyY2gtY2xlYXItYmcge1xuICBmaWxsOiB2YXIoLS1pdGktc2VhcmNoLWljb24tY29sb3IpO1xufVxuW2Rpcj1ydGxdIC5pdGlfX3NlYXJjaC1jbGVhciB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA0cHg7XG59XG4uaXRpX19zZWFyY2gtY2xlYXI6aG92ZXIsIC5pdGlfX3NlYXJjaC1jbGVhcjpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taXRpLWhvdmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5pdGlfX25vLXJlc3VsdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cbi5pdGlfX2NvdW50cnktbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbi5pdGktLWlubGluZS1kcm9wZG93biAuaXRpX19jb3VudHJ5LWxpc3Qge1xuICBtYXgtaGVpZ2h0OiAxODVweDtcbn1cbi5pdGktLWZsZXhpYmxlLWRyb3Bkb3duLXdpZHRoIC5pdGlfX2NvdW50cnktbGlzdCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLml0aS0tZmxleGlibGUtZHJvcGRvd24td2lkdGggLml0aV9fY291bnRyeS1saXN0IHtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICB9XG59XG4uaXRpX19jb3VudHJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogOHB4IHZhcigtLWl0aS1zcGFjZXItaG9yaXpvbnRhbCk7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uaXRpX19kaWFsLWNvZGUge1xuICBjb2xvcjogdmFyKC0taXRpLWRpYWxjb2RlLWNvbG9yKTtcbn1cbi5pdGlfX2NvdW50cnkuaXRpX19oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGktaG92ZXItY29sb3IpO1xufVxuLml0aV9fY291bnRyeS1saXN0IC5pdGlfX2ZsYWcsIC5pdGlfX2NvdW50cnktbmFtZSB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0taXRpLXNwYWNlci1ob3Jpem9udGFsKTtcbn1cbltkaXI9cnRsXSAuaXRpX19jb3VudHJ5LWxpc3QgLml0aV9fZmxhZywgW2Rpcj1ydGxdIC5pdGlfX2NvdW50cnktbmFtZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWl0aS1zcGFjZXItaG9yaXpvbnRhbCk7XG59XG4uaXRpLS1hbGxvdy1kcm9wZG93biAuaXRpX19jb3VudHJ5LWNvbnRhaW5lcjpub3QoOmhhcygrIGlucHV0W2Rpc2FibGVkXSkpOm5vdCg6aGFzKCsgaW5wdXRbcmVhZG9ubHldKSkgYnV0dG9uLml0aV9fc2VsZWN0ZWQtY291bnRyeSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pdGktLWFsbG93LWRyb3Bkb3duIC5pdGlfX2NvdW50cnktY29udGFpbmVyOm5vdCg6aGFzKCsgaW5wdXRbZGlzYWJsZWRdKSk6bm90KDpoYXMoKyBpbnB1dFtyZWFkb25seV0pKSAuaXRpX19zZWxlY3RlZC1jb3VudHJ5LXByaW1hcnk6aG92ZXIsXG4uaXRpLS1hbGxvdy1kcm9wZG93biAuaXRpX19jb3VudHJ5LWNvbnRhaW5lcjpub3QoOmhhcygrIGlucHV0W2Rpc2FibGVkXSkpOm5vdCg6aGFzKCsgaW5wdXRbcmVhZG9ubHldKSkgLml0aV9fc2VsZWN0ZWQtY291bnRyeTpoYXMoKyAuaXRpX19kcm9wZG93bi1jb250ZW50OmhvdmVyKSAuaXRpX19zZWxlY3RlZC1jb3VudHJ5LXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGktaG92ZXItY29sb3IpO1xufVxuLml0aSAuaXRpX19zZWxlY3RlZC1kaWFsLWNvZGUge1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuW2Rpcj1ydGxdIC5pdGkgLml0aV9fc2VsZWN0ZWQtZGlhbC1jb2RlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLml0aS0tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IC0xMDAwcHg7XG4gIGxlZnQ6IC0xMDAwcHg7XG4gIHotaW5kZXg6IDEwNjA7XG4gIHBhZGRpbmc6IHZhcigtLWl0aS1ib3JkZXItd2lkdGgpO1xufVxuLml0aS0tY29udGFpbmVyOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLml0aV9faGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uaXRpX192LWhpZGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5pdGktLWZ1bGxzY3JlZW4tcG9wdXAuaXRpLS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBwYWRkaW5nOiB2YXIoLS1pdGktbW9iaWxlLXBvcHVwLW1hcmdpbik7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5pdGktLWZ1bGxzY3JlZW4tcG9wdXAgLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5pdGktLWZ1bGxzY3JlZW4tcG9wdXAgLml0aV9fY291bnRyeSB7XG4gIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG4uaXRpX19mbGFnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IDEwMHB4O1xuICBoZWlnaHQ6IHZhcigtLWl0aS1mbGFnLWhlaWdodCk7XG4gIHdpZHRoOiB2YXIoLS1pdGktZmxhZy13aWR0aCk7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMHB4ICM4ODg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWZsYWdzLTF4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdmFyKC0taXRpLWZsYWctb2Zmc2V0KSAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWl0aS1mbGFnLXNwcml0ZS13aWR0aCkgdmFyKC0taXRpLWZsYWctc3ByaXRlLWhlaWdodCk7XG59XG5cbi5pdGlfX2FjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IDBweDtcbn1cblxuLml0aV9fYWQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2cHg7XG59XG5cbi5pdGlfX2FlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMnB4O1xufVxuXG4uaXRpX19hZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDhweDtcbn1cblxuLml0aV9fYWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY0cHg7XG59XG5cbi5pdGlfX2FpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MHB4O1xufVxuXG4uaXRpX19hbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTZweDtcbn1cblxuLml0aV9fYW0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExMnB4O1xufVxuXG4uaXRpX19hbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI4cHg7XG59XG5cbi5pdGlfX2FyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDRweDtcbn1cblxuLml0aV9fYXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2MHB4O1xufVxuXG4uaXRpX19hdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc2cHg7XG59XG5cbi5pdGlfX2F1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTJweDtcbn1cblxuLml0aV9fYXcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwOHB4O1xufVxuXG4uaXRpX19heCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI0cHg7XG59XG5cbi5pdGlfX2F6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDBweDtcbn1cblxuLml0aV9fYmEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1NnB4O1xufVxuXG4uaXRpX19iYiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjcycHg7XG59XG5cbi5pdGlfX2JkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODhweDtcbn1cblxuLml0aV9fYmUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwNHB4O1xufVxuXG4uaXRpX19iZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzIwcHg7XG59XG5cbi5pdGlfX2JnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzZweDtcbn1cblxuLml0aV9fYmgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1MnB4O1xufVxuXG4uaXRpX19iaSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY4cHg7XG59XG5cbi5pdGlfX2JqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODRweDtcbn1cblxuLml0aV9fYmwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQwMHB4O1xufVxuXG4uaXRpX19ibSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDE2cHg7XG59XG5cbi5pdGlfX2JuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00MzJweDtcbn1cblxuLml0aV9fYm8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ0OHB4O1xufVxuXG4uaXRpX19icSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDY0cHg7XG59XG5cbi5pdGlfX2JyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00ODBweDtcbn1cblxuLml0aV9fYnMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ5NnB4O1xufVxuXG4uaXRpX19idCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTEycHg7XG59XG5cbi5pdGlfX2J3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01MjhweDtcbn1cblxuLml0aV9fYnkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU0NHB4O1xufVxuXG4uaXRpX19ieiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTYwcHg7XG59XG5cbi5pdGlfX2NhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01NzZweDtcbn1cblxuLml0aV9fY2Mge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU5MnB4O1xufVxuXG4uaXRpX19jZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjA4cHg7XG59XG5cbi5pdGlfX2NmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02MjRweDtcbn1cblxuLml0aV9fY2cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY0MHB4O1xufVxuXG4uaXRpX19jaCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjU2cHg7XG59XG5cbi5pdGlfX2NpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02NzJweDtcbn1cblxuLml0aV9fY2sge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY4OHB4O1xufVxuXG4uaXRpX19jbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzA0cHg7XG59XG5cbi5pdGlfX2NtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03MjBweDtcbn1cblxuLml0aV9fY24ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTczNnB4O1xufVxuXG4uaXRpX19jbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzUycHg7XG59XG5cbi5pdGlfX2NyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03NjhweDtcbn1cblxuLml0aV9fY3Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTc4NHB4O1xufVxuXG4uaXRpX19jdiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODAwcHg7XG59XG5cbi5pdGlfX2N3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MTZweDtcbn1cblxuLml0aV9fY3gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTgzMnB4O1xufVxuXG4uaXRpX19jeSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODQ4cHg7XG59XG5cbi5pdGlfX2N6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04NjRweDtcbn1cblxuLml0aV9fZGUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTg4MHB4O1xufVxuXG4uaXRpX19kaiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODk2cHg7XG59XG5cbi5pdGlfX2RrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05MTJweDtcbn1cblxuLml0aV9fZG0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTkyOHB4O1xufVxuXG4uaXRpX19kbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTQ0cHg7XG59XG5cbi5pdGlfX2R6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05NjBweDtcbn1cblxuLml0aV9fZWMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk3NnB4O1xufVxuXG4uaXRpX19lZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTkycHg7XG59XG5cbi5pdGlfX2VnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDA4cHg7XG59XG5cbi5pdGlfX2VoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDI0cHg7XG59XG5cbi5pdGlfX2VyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDQwcHg7XG59XG5cbi5pdGlfX2VzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDU2cHg7XG59XG5cbi5pdGlfX2V0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDcycHg7XG59XG5cbi5pdGlfX2ZpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDg4cHg7XG59XG5cbi5pdGlfX2ZqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTA0cHg7XG59XG5cbi5pdGlfX2ZrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTIwcHg7XG59XG5cbi5pdGlfX2ZtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTM2cHg7XG59XG5cbi5pdGlfX2ZvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTUycHg7XG59XG5cbi5pdGlfX2ZyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTY4cHg7XG59XG5cbi5pdGlfX2dhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTg0cHg7XG59XG5cbi5pdGlfX2diIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjAwcHg7XG59XG5cbi5pdGlfX2dkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjE2cHg7XG59XG5cbi5pdGlfX2dlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjMycHg7XG59XG5cbi5pdGlfX2dmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjQ4cHg7XG59XG5cbi5pdGlfX2dnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjY0cHg7XG59XG5cbi5pdGlfX2doIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjgwcHg7XG59XG5cbi5pdGlfX2dpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjk2cHg7XG59XG5cbi5pdGlfX2dsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzEycHg7XG59XG5cbi5pdGlfX2dtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzI4cHg7XG59XG5cbi5pdGlfX2duIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzQ0cHg7XG59XG5cbi5pdGlfX2dwIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzYwcHg7XG59XG5cbi5pdGlfX2dxIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzc2cHg7XG59XG5cbi5pdGlfX2dyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzkycHg7XG59XG5cbi5pdGlfX2d0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDA4cHg7XG59XG5cbi5pdGlfX2d1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDI0cHg7XG59XG5cbi5pdGlfX2d3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDQwcHg7XG59XG5cbi5pdGlfX2d5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDU2cHg7XG59XG5cbi5pdGlfX2hrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDcycHg7XG59XG5cbi5pdGlfX2huIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDg4cHg7XG59XG5cbi5pdGlfX2hyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTA0cHg7XG59XG5cbi5pdGlfX2h0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTIwcHg7XG59XG5cbi5pdGlfX2h1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTM2cHg7XG59XG5cbi5pdGlfX2lkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTUycHg7XG59XG5cbi5pdGlfX2llIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTY4cHg7XG59XG5cbi5pdGlfX2lsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTg0cHg7XG59XG5cbi5pdGlfX2ltIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjAwcHg7XG59XG5cbi5pdGlfX2luIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjE2cHg7XG59XG5cbi5pdGlfX2lvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjMycHg7XG59XG5cbi5pdGlfX2lxIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjQ4cHg7XG59XG5cbi5pdGlfX2lyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjY0cHg7XG59XG5cbi5pdGlfX2lzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjgwcHg7XG59XG5cbi5pdGlfX2l0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjk2cHg7XG59XG5cbi5pdGlfX2plIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzEycHg7XG59XG5cbi5pdGlfX2ptIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzI4cHg7XG59XG5cbi5pdGlfX2pvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzQ0cHg7XG59XG5cbi5pdGlfX2pwIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzYwcHg7XG59XG5cbi5pdGlfX2tlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzc2cHg7XG59XG5cbi5pdGlfX2tnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzkycHg7XG59XG5cbi5pdGlfX2toIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODA4cHg7XG59XG5cbi5pdGlfX2tpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODI0cHg7XG59XG5cbi5pdGlfX2ttIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODQwcHg7XG59XG5cbi5pdGlfX2tuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODU2cHg7XG59XG5cbi5pdGlfX2twIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODcycHg7XG59XG5cbi5pdGlfX2tyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODg4cHg7XG59XG5cbi5pdGlfX2t3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTA0cHg7XG59XG5cbi5pdGlfX2t5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTIwcHg7XG59XG5cbi5pdGlfX2t6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTM2cHg7XG59XG5cbi5pdGlfX2xhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTUycHg7XG59XG5cbi5pdGlfX2xiIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTY4cHg7XG59XG5cbi5pdGlfX2xjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTg0cHg7XG59XG5cbi5pdGlfX2xpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDAwcHg7XG59XG5cbi5pdGlfX2xrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDE2cHg7XG59XG5cbi5pdGlfX2xyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDMycHg7XG59XG5cbi5pdGlfX2xzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDQ4cHg7XG59XG5cbi5pdGlfX2x0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDY0cHg7XG59XG5cbi5pdGlfX2x1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDgwcHg7XG59XG5cbi5pdGlfX2x2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDk2cHg7XG59XG5cbi5pdGlfX2x5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTEycHg7XG59XG5cbi5pdGlfX21hIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTI4cHg7XG59XG5cbi5pdGlfX21jIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTQ0cHg7XG59XG5cbi5pdGlfX21kIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTYwcHg7XG59XG5cbi5pdGlfX21lIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTc2cHg7XG59XG5cbi5pdGlfX21mIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTkycHg7XG59XG5cbi5pdGlfX21nIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjA4cHg7XG59XG5cbi5pdGlfX21oIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjI0cHg7XG59XG5cbi5pdGlfX21rIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjQwcHg7XG59XG5cbi5pdGlfX21sIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjU2cHg7XG59XG5cbi5pdGlfX21tIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjcycHg7XG59XG5cbi5pdGlfX21uIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjg4cHg7XG59XG5cbi5pdGlfX21vIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzA0cHg7XG59XG5cbi5pdGlfX21wIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzIwcHg7XG59XG5cbi5pdGlfX21xIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzM2cHg7XG59XG5cbi5pdGlfX21yIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzUycHg7XG59XG5cbi5pdGlfX21zIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzY4cHg7XG59XG5cbi5pdGlfX210IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzg0cHg7XG59XG5cbi5pdGlfX211IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDAwcHg7XG59XG5cbi5pdGlfX212IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDE2cHg7XG59XG5cbi5pdGlfX213IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDMycHg7XG59XG5cbi5pdGlfX214IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDQ4cHg7XG59XG5cbi5pdGlfX215IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDY0cHg7XG59XG5cbi5pdGlfX216IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDgwcHg7XG59XG5cbi5pdGlfX25hIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDk2cHg7XG59XG5cbi5pdGlfX25jIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTEycHg7XG59XG5cbi5pdGlfX25lIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTI4cHg7XG59XG5cbi5pdGlfX25mIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTQ0cHg7XG59XG5cbi5pdGlfX25nIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTYwcHg7XG59XG5cbi5pdGlfX25pIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTc2cHg7XG59XG5cbi5pdGlfX25sIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTkycHg7XG59XG5cbi5pdGlfX25vIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjA4cHg7XG59XG5cbi5pdGlfX25wIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjI0cHg7XG59XG5cbi5pdGlfX25yIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjQwcHg7XG59XG5cbi5pdGlfX251IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjU2cHg7XG59XG5cbi5pdGlfX256IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjcycHg7XG59XG5cbi5pdGlfX29tIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjg4cHg7XG59XG5cbi5pdGlfX3BhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzA0cHg7XG59XG5cbi5pdGlfX3BlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzIwcHg7XG59XG5cbi5pdGlfX3BmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzM2cHg7XG59XG5cbi5pdGlfX3BnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzUycHg7XG59XG5cbi5pdGlfX3BoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzY4cHg7XG59XG5cbi5pdGlfX3BrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzg0cHg7XG59XG5cbi5pdGlfX3BsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODAwcHg7XG59XG5cbi5pdGlfX3BtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODE2cHg7XG59XG5cbi5pdGlfX3ByIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODMycHg7XG59XG5cbi5pdGlfX3BzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODQ4cHg7XG59XG5cbi5pdGlfX3B0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODY0cHg7XG59XG5cbi5pdGlfX3B3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODgwcHg7XG59XG5cbi5pdGlfX3B5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODk2cHg7XG59XG5cbi5pdGlfX3FhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTEycHg7XG59XG5cbi5pdGlfX3JlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTI4cHg7XG59XG5cbi5pdGlfX3JvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTQ0cHg7XG59XG5cbi5pdGlfX3JzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTYwcHg7XG59XG5cbi5pdGlfX3J1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTc2cHg7XG59XG5cbi5pdGlfX3J3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTkycHg7XG59XG5cbi5pdGlfX3NhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDA4cHg7XG59XG5cbi5pdGlfX3NiIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDI0cHg7XG59XG5cbi5pdGlfX3NjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDQwcHg7XG59XG5cbi5pdGlfX3NkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDU2cHg7XG59XG5cbi5pdGlfX3NlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDcycHg7XG59XG5cbi5pdGlfX3NnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDg4cHg7XG59XG5cbi5pdGlfX3NoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTA0cHg7XG59XG5cbi5pdGlfX3NpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTIwcHg7XG59XG5cbi5pdGlfX3NqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTM2cHg7XG59XG5cbi5pdGlfX3NrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTUycHg7XG59XG5cbi5pdGlfX3NsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTY4cHg7XG59XG5cbi5pdGlfX3NtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTg0cHg7XG59XG5cbi5pdGlfX3NuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjAwcHg7XG59XG5cbi5pdGlfX3NvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjE2cHg7XG59XG5cbi5pdGlfX3NyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjMycHg7XG59XG5cbi5pdGlfX3NzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjQ4cHg7XG59XG5cbi5pdGlfX3N0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjY0cHg7XG59XG5cbi5pdGlfX3N2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjgwcHg7XG59XG5cbi5pdGlfX3N4IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjk2cHg7XG59XG5cbi5pdGlfX3N5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzEycHg7XG59XG5cbi5pdGlfX3N6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzI4cHg7XG59XG5cbi5pdGlfX3RjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzQ0cHg7XG59XG5cbi5pdGlfX3RkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzYwcHg7XG59XG5cbi5pdGlfX3RnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzc2cHg7XG59XG5cbi5pdGlfX3RoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzkycHg7XG59XG5cbi5pdGlfX3RqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDA4cHg7XG59XG5cbi5pdGlfX3RrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDI0cHg7XG59XG5cbi5pdGlfX3RsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDQwcHg7XG59XG5cbi5pdGlfX3RtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDU2cHg7XG59XG5cbi5pdGlfX3RuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDcycHg7XG59XG5cbi5pdGlfX3RvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDg4cHg7XG59XG5cbi5pdGlfX3RyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTA0cHg7XG59XG5cbi5pdGlfX3R0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTIwcHg7XG59XG5cbi5pdGlfX3R2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTM2cHg7XG59XG5cbi5pdGlfX3R3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTUycHg7XG59XG5cbi5pdGlfX3R6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTY4cHg7XG59XG5cbi5pdGlfX3VhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTg0cHg7XG59XG5cbi5pdGlfX3VnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjAwcHg7XG59XG5cbi5pdGlfX3VzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjE2cHg7XG59XG5cbi5pdGlfX3V5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjMycHg7XG59XG5cbi5pdGlfX3V6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjQ4cHg7XG59XG5cbi5pdGlfX3ZhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjY0cHg7XG59XG5cbi5pdGlfX3ZjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjgwcHg7XG59XG5cbi5pdGlfX3ZlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjk2cHg7XG59XG5cbi5pdGlfX3ZnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzEycHg7XG59XG5cbi5pdGlfX3ZpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzI4cHg7XG59XG5cbi5pdGlfX3ZuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzQ0cHg7XG59XG5cbi5pdGlfX3Z1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzYwcHg7XG59XG5cbi5pdGlfX3dmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzc2cHg7XG59XG5cbi5pdGlfX3dzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzkycHg7XG59XG5cbi5pdGlfX3hrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODA4cHg7XG59XG5cbi5pdGlfX3llIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODI0cHg7XG59XG5cbi5pdGlfX3l0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODQwcHg7XG59XG5cbi5pdGlfX3phIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODU2cHg7XG59XG5cbi5pdGlfX3ptIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODcycHg7XG59XG5cbi5pdGlfX3p3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODg4cHg7XG59XG5cbi5pdGlfX2dsb2JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZ2xvYmUtMXgpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICBib3gtc2hhZG93OiBub25lO1xuICBoZWlnaHQ6IDE5cHg7XG59XG5cbkBtZWRpYSAobWluLXJlc29sdXRpb246IDJ4KSB7XG4gIC5pdGlfX2ZsYWcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWZsYWdzLTJ4KTtcbiAgfVxuICAuaXRpX19nbG9iZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZ2xvYmUtMngpO1xuICB9XG59IiwiQGxheWVyIHJlc2V0O1xuQGxheWVyIGJhc2U7XG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xuOnJvb3Qge1xuICAtLWl0aS1ob3Zlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS1pdGktYm9yZGVyLWNvbG9yOiAjY2NjO1xuICAtLWl0aS1kaWFsY29kZS1jb2xvcjogIzk5OTtcbiAgLS1pdGktZHJvcGRvd24tYmc6IHdoaXRlO1xuICAtLWl0aS1zZWFyY2gtaWNvbi1jb2xvcjogIzk5OTtcbiAgLS1pdGktc3BhY2VyLWhvcml6b250YWw6IDhweDtcbiAgLS1pdGktZmxhZy1oZWlnaHQ6IDEycHg7XG4gIC0taXRpLWZsYWctd2lkdGg6IDE2cHg7XG4gIC0taXRpLWJvcmRlci13aWR0aDogMXB4O1xuICAtLWl0aS1hcnJvdy1oZWlnaHQ6IDRweDtcbiAgLS1pdGktYXJyb3ctd2lkdGg6IDZweDtcbiAgLS1pdGktdHJpYW5nbGUtYm9yZGVyOiBjYWxjKHZhcigtLWl0aS1hcnJvdy13aWR0aCkgLyAyKTtcbiAgLS1pdGktYXJyb3ctcGFkZGluZzogNnB4O1xuICAtLWl0aS1hcnJvdy1jb2xvcjogIzU1NTtcbiAgLS1pdGktcGF0aC1mbGFncy0xeDogdXJsKFwiLi4vaW1nL2ZsYWdzLndlYnBcIik7XG4gIC0taXRpLXBhdGgtZmxhZ3MtMng6IHVybChcIi4uL2ltZy9mbGFnc0AyeC53ZWJwXCIpO1xuICAtLWl0aS1wYXRoLWdsb2JlLTF4OiB1cmwoXCIuLi9pbWcvZ2xvYmUud2VicFwiKTtcbiAgLS1pdGktcGF0aC1nbG9iZS0yeDogdXJsKFwiLi4vaW1nL2dsb2JlQDJ4LndlYnBcIik7XG4gIC0taXRpLWZsYWctc3ByaXRlLXdpZHRoOiAzOTA0cHg7XG4gIC0taXRpLWZsYWctc3ByaXRlLWhlaWdodDogMTJweDtcbiAgLS1pdGktbW9iaWxlLXBvcHVwLW1hcmdpbjogMzBweDtcbn1cblxuLml0aSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uaXRpICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uaXRpX19hMTF5LXRleHQge1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXQsXG4uaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGV4dF0sXG4uaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGVsXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5cbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0LFxuW2Rpcj1ydGxdIC5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXRbdHlwZT10ZXh0XSxcbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGVsXSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uaXRpX19jb3VudHJ5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHBhZGRpbmc6IHZhcigtLWl0aS1ib3JkZXItd2lkdGgpO1xufVxuXG4uaXRpX19zZWxlY3RlZC1jb3VudHJ5IHtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5pdGlfX3NlbGVjdGVkLWNvdW50cnktcHJpbWFyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCB2YXIoLS1pdGktYXJyb3ctcGFkZGluZykgMCB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xufVxuXG4uaXRpX19hcnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1pdGktYXJyb3ctcGFkZGluZyk7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiB2YXIoLS1pdGktdHJpYW5nbGUtYm9yZGVyKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1pdGktdHJpYW5nbGUtYm9yZGVyKSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogdmFyKC0taXRpLWFycm93LWhlaWdodCkgc29saWQgdmFyKC0taXRpLWFycm93LWNvbG9yKTtcbn1cblxuW2Rpcj1ydGxdIC5pdGlfX2Fycm93IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1pdGktYXJyb3ctcGFkZGluZyk7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uaXRpX19hcnJvdy0tdXAge1xuICBib3JkZXItdG9wOiBub25lO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS1pdGktYXJyb3ctaGVpZ2h0KSBzb2xpZCB2YXIoLS1pdGktYXJyb3ctY29sb3IpO1xufVxuXG4uaXRpX19kcm9wZG93bi1jb250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGktZHJvcGRvd24tYmcpO1xufVxuXG4uaXRpLS1pbmxpbmUtZHJvcGRvd24gLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1pdGktYm9yZGVyLXdpZHRoKSAqIC0xKTtcbiAgYm9yZGVyOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1pdGktYm9yZGVyLWNvbG9yKTtcbiAgYm94LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uaXRpX19zZWFyY2gtaW5wdXQge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAwO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgcGFkZGluZy1yaWdodDogMjhweDtcbn1cblxuW2Rpcj1ydGxdIC5pdGlfX3NlYXJjaC1pbnB1dCB7XG4gIHBhZGRpbmctbGVmdDogaW5oZXJpdDtcbiAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgOHB4IGNlbnRlcjtcbn1cblxuLml0aV9fc2VhcmNoLWlucHV0ICsgLml0aV9fY291bnRyeS1saXN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWl0aS1ib3JkZXItY29sb3IpO1xufVxuXG4uaXRpX19zZWFyY2gtaW5wdXQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uaXRpX19zZWFyY2gtaW5wdXQtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLml0aV9fc2VhcmNoLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtaWNvbiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiA4cHg7XG59XG5cbi5pdGlfX3NlYXJjaC1pY29uLXN2ZyB7XG4gIHN0cm9rZTogdmFyKC0taXRpLXNlYXJjaC1pY29uLWNvbG9yKTtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlLXdpZHRoOiAzO1xufVxuXG4uaXRpX19zZWFyY2gtY2xlYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA0cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG5cbi5pdGlfX3NlYXJjaC1jbGVhciAuaXRpX19zZWFyY2gtY2xlYXIteCB7XG4gIHN0cm9rZS13aWR0aDogMjtcbn1cblxuLml0aV9fc2VhcmNoLWNsZWFyIC5pdGlfX3NlYXJjaC1jbGVhci1iZyB7XG4gIGZpbGw6IHZhcigtLWl0aS1zZWFyY2gtaWNvbi1jb2xvcik7XG59XG5cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtY2xlYXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNHB4O1xufVxuXG4uaXRpX19zZWFyY2gtY2xlYXI6aG92ZXIsIC5pdGlfX3NlYXJjaC1jbGVhcjpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0taXRpLWhvdmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLml0aV9fbm8tcmVzdWx0cyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4uaXRpX19jb3VudHJ5LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5pdGktLWlubGluZS1kcm9wZG93biAuaXRpX19jb3VudHJ5LWxpc3Qge1xuICBtYXgtaGVpZ2h0OiAxODVweDtcbn1cblxuLml0aS0tZmxleGlibGUtZHJvcGRvd24td2lkdGggLml0aV9fY291bnRyeS1saXN0IHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5pdGktLWZsZXhpYmxlLWRyb3Bkb3duLXdpZHRoIC5pdGlfX2NvdW50cnktbGlzdCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuLml0aV9fY291bnRyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDhweCB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uaXRpX19kaWFsLWNvZGUge1xuICBjb2xvcjogdmFyKC0taXRpLWRpYWxjb2RlLWNvbG9yKTtcbn1cblxuLml0aV9fY291bnRyeS5pdGlfX2hpZ2hsaWdodCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0aS1ob3Zlci1jb2xvcik7XG59XG5cbi5pdGlfX2NvdW50cnktbGlzdCAuaXRpX19mbGFnLCAuaXRpX19jb3VudHJ5LW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWl0aS1zcGFjZXItaG9yaXpvbnRhbCk7XG59XG5cbltkaXI9cnRsXSAuaXRpX19jb3VudHJ5LWxpc3QgLml0aV9fZmxhZywgW2Rpcj1ydGxdIC5pdGlfX2NvdW50cnktbmFtZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWl0aS1zcGFjZXItaG9yaXpvbnRhbCk7XG59XG5cbi5pdGktLWFsbG93LWRyb3Bkb3duIC5pdGlfX2NvdW50cnktY29udGFpbmVyOm5vdCg6aGFzKCsgaW5wdXRbZGlzYWJsZWRdKSk6bm90KDpoYXMoKyBpbnB1dFtyZWFkb25seV0pKSBidXR0b24uaXRpX19zZWxlY3RlZC1jb3VudHJ5IHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaXRpLS1hbGxvdy1kcm9wZG93biAuaXRpX19jb3VudHJ5LWNvbnRhaW5lcjpub3QoOmhhcygrIGlucHV0W2Rpc2FibGVkXSkpOm5vdCg6aGFzKCsgaW5wdXRbcmVhZG9ubHldKSkgLml0aV9fc2VsZWN0ZWQtY291bnRyeS1wcmltYXJ5OmhvdmVyLFxuLml0aS0tYWxsb3ctZHJvcGRvd24gLml0aV9fY291bnRyeS1jb250YWluZXI6bm90KDpoYXMoKyBpbnB1dFtkaXNhYmxlZF0pKTpub3QoOmhhcygrIGlucHV0W3JlYWRvbmx5XSkpIC5pdGlfX3NlbGVjdGVkLWNvdW50cnk6aGFzKCsgLml0aV9fZHJvcGRvd24tY29udGVudDpob3ZlcikgLml0aV9fc2VsZWN0ZWQtY291bnRyeS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRpLWhvdmVyLWNvbG9yKTtcbn1cblxuLml0aSAuaXRpX19zZWxlY3RlZC1kaWFsLWNvZGUge1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuXG5bZGlyPXJ0bF0gLml0aSAuaXRpX19zZWxlY3RlZC1kaWFsLWNvZGUge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG5cbi5pdGktLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwMHB4O1xuICBsZWZ0OiAtMTAwMHB4O1xuICB6LWluZGV4OiAxMDYwO1xuICBwYWRkaW5nOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKTtcbn1cblxuLml0aS0tY29udGFpbmVyOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uaXRpX19oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLml0aV9fdi1oaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaXRpLS1mdWxsc2NyZWVuLXBvcHVwLml0aS0tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZzogdmFyKC0taXRpLW1vYmlsZS1wb3B1cC1tYXJnaW4pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5pdGktLWZ1bGxzY3JlZW4tcG9wdXAgLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLml0aS0tZnVsbHNjcmVlbi1wb3B1cCAuaXRpX19jb3VudHJ5IHtcbiAgcGFkZGluZzogMTBweCAxMHB4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG59XG5cbi5pdGlfX2ZsYWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogMTAwcHg7XG4gIGhlaWdodDogdmFyKC0taXRpLWZsYWctaGVpZ2h0KTtcbiAgd2lkdGg6IHZhcigtLWl0aS1mbGFnLXdpZHRoKTtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBib3gtc2hhZG93OiAwcHggMHB4IDFweCAwcHggIzg4ODtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZmxhZ3MtMXgpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB2YXIoLS1pdGktZmxhZy1vZmZzZXQpIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0taXRpLWZsYWctc3ByaXRlLXdpZHRoKSB2YXIoLS1pdGktZmxhZy1zcHJpdGUtaGVpZ2h0KTtcbn1cblxuLml0aV9fYWMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogMHB4O1xufVxuXG4uaXRpX19hZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTZweDtcbn1cblxuLml0aV9fYWUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMycHg7XG59XG5cbi5pdGlfX2FmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00OHB4O1xufVxuXG4uaXRpX19hZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjRweDtcbn1cblxuLml0aV9fYWkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTgwcHg7XG59XG5cbi5pdGlfX2FsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05NnB4O1xufVxuXG4uaXRpX19hbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTEycHg7XG59XG5cbi5pdGlfX2FvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjhweDtcbn1cblxuLml0aV9fYXIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0NHB4O1xufVxuXG4uaXRpX19hcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTYwcHg7XG59XG5cbi5pdGlfX2F0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzZweDtcbn1cblxuLml0aV9fYXUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5MnB4O1xufVxuXG4uaXRpX19hdyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjA4cHg7XG59XG5cbi5pdGlfX2F4IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjRweDtcbn1cblxuLml0aV9fYXoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0MHB4O1xufVxuXG4uaXRpX19iYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjU2cHg7XG59XG5cbi5pdGlfX2JiIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzJweDtcbn1cblxuLml0aV9fYmQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4OHB4O1xufVxuXG4uaXRpX19iZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzA0cHg7XG59XG5cbi5pdGlfX2JmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjBweDtcbn1cblxuLml0aV9fYmcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzNnB4O1xufVxuXG4uaXRpX19iaCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzUycHg7XG59XG5cbi5pdGlfX2JpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjhweDtcbn1cblxuLml0aV9fYmoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4NHB4O1xufVxuXG4uaXRpX19ibCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDAwcHg7XG59XG5cbi5pdGlfX2JtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00MTZweDtcbn1cblxuLml0aV9fYm4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQzMnB4O1xufVxuXG4uaXRpX19ibyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDQ4cHg7XG59XG5cbi5pdGlfX2JxIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00NjRweDtcbn1cblxuLml0aV9fYnIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ4MHB4O1xufVxuXG4uaXRpX19icyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDk2cHg7XG59XG5cbi5pdGlfX2J0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01MTJweDtcbn1cblxuLml0aV9fYncge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTUyOHB4O1xufVxuXG4uaXRpX19ieSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTQ0cHg7XG59XG5cbi5pdGlfX2J6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01NjBweDtcbn1cblxuLml0aV9fY2Ege1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU3NnB4O1xufVxuXG4uaXRpX19jYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTkycHg7XG59XG5cbi5pdGlfX2NkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02MDhweDtcbn1cblxuLml0aV9fY2Yge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTYyNHB4O1xufVxuXG4uaXRpX19jZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjQwcHg7XG59XG5cbi5pdGlfX2NoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02NTZweDtcbn1cblxuLml0aV9fY2kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY3MnB4O1xufVxuXG4uaXRpX19jayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjg4cHg7XG59XG5cbi5pdGlfX2NsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03MDRweDtcbn1cblxuLml0aV9fY20ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTcyMHB4O1xufVxuXG4uaXRpX19jbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzM2cHg7XG59XG5cbi5pdGlfX2NvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03NTJweDtcbn1cblxuLml0aV9fY3Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTc2OHB4O1xufVxuXG4uaXRpX19jdSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzg0cHg7XG59XG5cbi5pdGlfX2N2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MDBweDtcbn1cblxuLml0aV9fY3cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTgxNnB4O1xufVxuXG4uaXRpX19jeCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODMycHg7XG59XG5cbi5pdGlfX2N5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04NDhweDtcbn1cblxuLml0aV9fY3oge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTg2NHB4O1xufVxuXG4uaXRpX19kZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODgwcHg7XG59XG5cbi5pdGlfX2RqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04OTZweDtcbn1cblxuLml0aV9fZGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTkxMnB4O1xufVxuXG4uaXRpX19kbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTI4cHg7XG59XG5cbi5pdGlfX2RvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05NDRweDtcbn1cblxuLml0aV9fZHoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk2MHB4O1xufVxuXG4uaXRpX19lYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTc2cHg7XG59XG5cbi5pdGlfX2VlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05OTJweDtcbn1cblxuLml0aV9fZWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwMDhweDtcbn1cblxuLml0aV9fZWgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwMjRweDtcbn1cblxuLml0aV9fZXIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwNDBweDtcbn1cblxuLml0aV9fZXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwNTZweDtcbn1cblxuLml0aV9fZXQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwNzJweDtcbn1cblxuLml0aV9fZmkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEwODhweDtcbn1cblxuLml0aV9fZmoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExMDRweDtcbn1cblxuLml0aV9fZmsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExMjBweDtcbn1cblxuLml0aV9fZm0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExMzZweDtcbn1cblxuLml0aV9fZm8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExNTJweDtcbn1cblxuLml0aV9fZnIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExNjhweDtcbn1cblxuLml0aV9fZ2Ege1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExODRweDtcbn1cblxuLml0aV9fZ2Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyMDBweDtcbn1cblxuLml0aV9fZ2Qge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyMTZweDtcbn1cblxuLml0aV9fZ2Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyMzJweDtcbn1cblxuLml0aV9fZ2Yge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyNDhweDtcbn1cblxuLml0aV9fZ2cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyNjRweDtcbn1cblxuLml0aV9fZ2gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyODBweDtcbn1cblxuLml0aV9fZ2kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyOTZweDtcbn1cblxuLml0aV9fZ2wge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzMTJweDtcbn1cblxuLml0aV9fZ20ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzMjhweDtcbn1cblxuLml0aV9fZ24ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzNDRweDtcbn1cblxuLml0aV9fZ3Age1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzNjBweDtcbn1cblxuLml0aV9fZ3Ege1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzNzZweDtcbn1cblxuLml0aV9fZ3Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEzOTJweDtcbn1cblxuLml0aV9fZ3Qge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0MDhweDtcbn1cblxuLml0aV9fZ3Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0MjRweDtcbn1cblxuLml0aV9fZ3cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0NDBweDtcbn1cblxuLml0aV9fZ3kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0NTZweDtcbn1cblxuLml0aV9faGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0NzJweDtcbn1cblxuLml0aV9faG4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE0ODhweDtcbn1cblxuLml0aV9faHIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1MDRweDtcbn1cblxuLml0aV9faHQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1MjBweDtcbn1cblxuLml0aV9faHUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1MzZweDtcbn1cblxuLml0aV9faWQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1NTJweDtcbn1cblxuLml0aV9faWUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1NjhweDtcbn1cblxuLml0aV9faWwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE1ODRweDtcbn1cblxuLml0aV9faW0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2MDBweDtcbn1cblxuLml0aV9faW4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2MTZweDtcbn1cblxuLml0aV9faW8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2MzJweDtcbn1cblxuLml0aV9faXEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2NDhweDtcbn1cblxuLml0aV9faXIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2NjRweDtcbn1cblxuLml0aV9faXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2ODBweDtcbn1cblxuLml0aV9faXQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2OTZweDtcbn1cblxuLml0aV9famUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3MTJweDtcbn1cblxuLml0aV9fam0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3MjhweDtcbn1cblxuLml0aV9fam8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3NDRweDtcbn1cblxuLml0aV9fanAge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3NjBweDtcbn1cblxuLml0aV9fa2Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3NzZweDtcbn1cblxuLml0aV9fa2cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3OTJweDtcbn1cblxuLml0aV9fa2gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4MDhweDtcbn1cblxuLml0aV9fa2kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4MjRweDtcbn1cblxuLml0aV9fa20ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4NDBweDtcbn1cblxuLml0aV9fa24ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4NTZweDtcbn1cblxuLml0aV9fa3Age1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4NzJweDtcbn1cblxuLml0aV9fa3Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE4ODhweDtcbn1cblxuLml0aV9fa3cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5MDRweDtcbn1cblxuLml0aV9fa3kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5MjBweDtcbn1cblxuLml0aV9fa3oge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5MzZweDtcbn1cblxuLml0aV9fbGEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5NTJweDtcbn1cblxuLml0aV9fbGIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5NjhweDtcbn1cblxuLml0aV9fbGMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE5ODRweDtcbn1cblxuLml0aV9fbGkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwMDBweDtcbn1cblxuLml0aV9fbGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwMTZweDtcbn1cblxuLml0aV9fbHIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwMzJweDtcbn1cblxuLml0aV9fbHMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwNDhweDtcbn1cblxuLml0aV9fbHQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwNjRweDtcbn1cblxuLml0aV9fbHUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwODBweDtcbn1cblxuLml0aV9fbHYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwOTZweDtcbn1cblxuLml0aV9fbHkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxMTJweDtcbn1cblxuLml0aV9fbWEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxMjhweDtcbn1cblxuLml0aV9fbWMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxNDRweDtcbn1cblxuLml0aV9fbWQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxNjBweDtcbn1cblxuLml0aV9fbWUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxNzZweDtcbn1cblxuLml0aV9fbWYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIxOTJweDtcbn1cblxuLml0aV9fbWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyMDhweDtcbn1cblxuLml0aV9fbWgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyMjRweDtcbn1cblxuLml0aV9fbWsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyNDBweDtcbn1cblxuLml0aV9fbWwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyNTZweDtcbn1cblxuLml0aV9fbW0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyNzJweDtcbn1cblxuLml0aV9fbW4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyODhweDtcbn1cblxuLml0aV9fbW8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzMDRweDtcbn1cblxuLml0aV9fbXAge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzMjBweDtcbn1cblxuLml0aV9fbXEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzMzZweDtcbn1cblxuLml0aV9fbXIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzNTJweDtcbn1cblxuLml0aV9fbXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzNjhweDtcbn1cblxuLml0aV9fbXQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIzODRweDtcbn1cblxuLml0aV9fbXUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0MDBweDtcbn1cblxuLml0aV9fbXYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0MTZweDtcbn1cblxuLml0aV9fbXcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0MzJweDtcbn1cblxuLml0aV9fbXgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0NDhweDtcbn1cblxuLml0aV9fbXkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0NjRweDtcbn1cblxuLml0aV9fbXoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0ODBweDtcbn1cblxuLml0aV9fbmEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI0OTZweDtcbn1cblxuLml0aV9fbmMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1MTJweDtcbn1cblxuLml0aV9fbmUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1MjhweDtcbn1cblxuLml0aV9fbmYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1NDRweDtcbn1cblxuLml0aV9fbmcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1NjBweDtcbn1cblxuLml0aV9fbmkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1NzZweDtcbn1cblxuLml0aV9fbmwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1OTJweDtcbn1cblxuLml0aV9fbm8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2MDhweDtcbn1cblxuLml0aV9fbnAge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2MjRweDtcbn1cblxuLml0aV9fbnIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2NDBweDtcbn1cblxuLml0aV9fbnUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2NTZweDtcbn1cblxuLml0aV9fbnoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2NzJweDtcbn1cblxuLml0aV9fb20ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI2ODhweDtcbn1cblxuLml0aV9fcGEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3MDRweDtcbn1cblxuLml0aV9fcGUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3MjBweDtcbn1cblxuLml0aV9fcGYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3MzZweDtcbn1cblxuLml0aV9fcGcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3NTJweDtcbn1cblxuLml0aV9fcGgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3NjhweDtcbn1cblxuLml0aV9fcGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3ODRweDtcbn1cblxuLml0aV9fcGwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4MDBweDtcbn1cblxuLml0aV9fcG0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4MTZweDtcbn1cblxuLml0aV9fcHIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4MzJweDtcbn1cblxuLml0aV9fcHMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4NDhweDtcbn1cblxuLml0aV9fcHQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4NjRweDtcbn1cblxuLml0aV9fcHcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4ODBweDtcbn1cblxuLml0aV9fcHkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI4OTZweDtcbn1cblxuLml0aV9fcWEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5MTJweDtcbn1cblxuLml0aV9fcmUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5MjhweDtcbn1cblxuLml0aV9fcm8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5NDRweDtcbn1cblxuLml0aV9fcnMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5NjBweDtcbn1cblxuLml0aV9fcnUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5NzZweDtcbn1cblxuLml0aV9fcncge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI5OTJweDtcbn1cblxuLml0aV9fc2Ege1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwMDhweDtcbn1cblxuLml0aV9fc2Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwMjRweDtcbn1cblxuLml0aV9fc2Mge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwNDBweDtcbn1cblxuLml0aV9fc2Qge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwNTZweDtcbn1cblxuLml0aV9fc2Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwNzJweDtcbn1cblxuLml0aV9fc2cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwODhweDtcbn1cblxuLml0aV9fc2gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxMDRweDtcbn1cblxuLml0aV9fc2kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxMjBweDtcbn1cblxuLml0aV9fc2oge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxMzZweDtcbn1cblxuLml0aV9fc2sge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxNTJweDtcbn1cblxuLml0aV9fc2wge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxNjhweDtcbn1cblxuLml0aV9fc20ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMxODRweDtcbn1cblxuLml0aV9fc24ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyMDBweDtcbn1cblxuLml0aV9fc28ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyMTZweDtcbn1cblxuLml0aV9fc3Ige1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyMzJweDtcbn1cblxuLml0aV9fc3Mge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyNDhweDtcbn1cblxuLml0aV9fc3Qge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyNjRweDtcbn1cblxuLml0aV9fc3Yge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyODBweDtcbn1cblxuLml0aV9fc3gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyOTZweDtcbn1cblxuLml0aV9fc3kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzMTJweDtcbn1cblxuLml0aV9fc3oge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzMjhweDtcbn1cblxuLml0aV9fdGMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzNDRweDtcbn1cblxuLml0aV9fdGQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzNjBweDtcbn1cblxuLml0aV9fdGcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzNzZweDtcbn1cblxuLml0aV9fdGgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMzOTJweDtcbn1cblxuLml0aV9fdGoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0MDhweDtcbn1cblxuLml0aV9fdGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0MjRweDtcbn1cblxuLml0aV9fdGwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0NDBweDtcbn1cblxuLml0aV9fdG0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0NTZweDtcbn1cblxuLml0aV9fdG4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0NzJweDtcbn1cblxuLml0aV9fdG8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM0ODhweDtcbn1cblxuLml0aV9fdHIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1MDRweDtcbn1cblxuLml0aV9fdHQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1MjBweDtcbn1cblxuLml0aV9fdHYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1MzZweDtcbn1cblxuLml0aV9fdHcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1NTJweDtcbn1cblxuLml0aV9fdHoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1NjhweDtcbn1cblxuLml0aV9fdWEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1ODRweDtcbn1cblxuLml0aV9fdWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2MDBweDtcbn1cblxuLml0aV9fdXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2MTZweDtcbn1cblxuLml0aV9fdXkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2MzJweDtcbn1cblxuLml0aV9fdXoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2NDhweDtcbn1cblxuLml0aV9fdmEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2NjRweDtcbn1cblxuLml0aV9fdmMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2ODBweDtcbn1cblxuLml0aV9fdmUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2OTZweDtcbn1cblxuLml0aV9fdmcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3MTJweDtcbn1cblxuLml0aV9fdmkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3MjhweDtcbn1cblxuLml0aV9fdm4ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3NDRweDtcbn1cblxuLml0aV9fdnUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3NjBweDtcbn1cblxuLml0aV9fd2Yge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3NzZweDtcbn1cblxuLml0aV9fd3Mge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM3OTJweDtcbn1cblxuLml0aV9feGsge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4MDhweDtcbn1cblxuLml0aV9feWUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4MjRweDtcbn1cblxuLml0aV9feXQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4NDBweDtcbn1cblxuLml0aV9femEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4NTZweDtcbn1cblxuLml0aV9fem0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4NzJweDtcbn1cblxuLml0aV9fencge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM4ODhweDtcbn1cblxuLml0aV9fZ2xvYmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pdGktcGF0aC1nbG9iZS0xeCk7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGhlaWdodDogMTlweDtcbn1cblxuQG1lZGlhIChtaW4tcmVzb2x1dGlvbjogMngpIHtcbiAgLml0aV9fZmxhZyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZmxhZ3MtMngpO1xuICB9XG4gIC5pdGlfX2dsb2JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pdGktcGF0aC1nbG9iZS0yeCk7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgKi9cbi8qLS0tVEVYVCBBTkQgRk9OVC0tLSovXG4vKi0tLUJBQ0tHUk9VTkQtLS0qL1xuLyotLS1QT1NJVElPTklORy0tLSovXG4vKi0tLUNPTlRFTlQtLS0qL1xuLyotLS1MSVNUUy0tLSovXG4vKi0tLUJPUkRFUiBBUlJPV1MtLS0qL1xuLyoqRm9ybXMqKi9cbi8qKiBERUZBVUxUIE9WRVJSSURFUyAqKi9cbkBsYXllciBiYXNlIHtcbiAgLmZpZWxkV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgfVxuICAuZmllbGRXcmFwcGVyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxuICAuZmllbGRXcmFwcGVyIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSkge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC5maWVsZFdyYXBwZXIgaW5wdXQ6Oi1tcy1jbGVhcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGlucHV0OjotbXMtY2xlYXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgaW5wdXQ6Oi1tcy1jbGVhcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIGlucHV0OjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuZGVzY3JpcHRpb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5kZXNjcmlwdGlvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuZGVzY3JpcHRpb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMC44NGVtO1xuICAgIGNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmFzaWMpIGNhbGMoMC44NSAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciB0ZXh0YXJlYSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQubG9uZ2Fuc3dlciB0ZXh0YXJlYSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZHJvcGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgc2VsZWN0LFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biBzZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgZmlsbD0nYmxhY2snIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgd2lkdGg9JzI0JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J003IDEwbDUgNSA1LTV6Jy8+PHBhdGggZD0nTTAgMGgyNHYyNEgweicgZmlsbD0nbm9uZScvPjwvc3ZnPlwiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCA1MHB4O1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgc2VsZWN0OjotbXMtZXhwYW5kLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1saWdodC1ncmV5KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG4gIC5jb250cm9sV3JhcHBlcjpsYXN0LWNoaWxkLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXI6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG4gIC5jb250cm9sV3JhcHBlciAuY29udHJvbCxcbiAgLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5jb250cm9sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyIGxhYmVsLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyIC5kZXNjcmlwdGlvbixcbiAgLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMC44NGVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICBjb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJhc2ljKSBjYWxjKDAuODUgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICB9XG4gIC5maWVsZFdyYXBwZXIuZW5yb2xsZWVOYW1lIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbiAgLnN0eWxlZEZpZWxkc2V0LFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0LWdyZXkpIGNhbGMoMC40ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3R5bGVkRmllbGRzZXQgbGVnZW5kLFxuICAuc3R5bGVkRmllbGRzZXQgLmdyb3VwTGVnZW5kLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCBsZWdlbmQsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IC5ncm91cExlZ2VuZCB7XG4gICAgcGFkZGluZzogNXB4IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1wcmltYXJ5KTtcbiAgICBib3JkZXItcmFkaXVzOiA3cHg7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6IHZhcigtLWdyYXBlLWp1aWNlKTtcbiAgfVxuICAuc3R5bGVkRmllbGRzZXQgLmdyb3VwTGVnZW5kLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCAuZ3JvdXBMZWdlbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIGF1dG8gMTBweDtcbiAgfVxuICAuc3R5bGVkRmllbGRzZXQgLmZpZWxkc2V0R3JpZCxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGRzZXQgLmZpZWxkc2V0R3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgZ2FwOiAxMnB4O1xuICB9XG4gIC5zdHlsZWRGaWVsZHNldCAuZmllbGRzZXRHcmlkIC5maWVsZFdyYXBwZXIsXG4gIC5zdHlsZWRGaWVsZHNldCAuZmllbGRzZXRHcmlkIC5jb250cm9sV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGRzZXQgLmZpZWxkc2V0R3JpZCAuZmllbGRXcmFwcGVyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCAuZmllbGRzZXRHcmlkIC5jb250cm9sV3JhcHBlciB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIC5maWVsZFdyYXBwZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCB7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gIH1cbiAgLmZpZWxkV3JhcHBlciBsYWJlbDpub3QoLmNoZWNrYm94TGFiZWwpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciBsYWJlbDpub3QoLmNoZWNrYm94TGFiZWwpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDhweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbiAgICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6bm90KC5pdGlfX3NlYXJjaC1pbnB1dCksXG4gIC5maWVsZFdyYXBwZXIgdGV4dGFyZWEsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pOm5vdCguaXRpX19zZWFyY2gtaW5wdXQpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciB0ZXh0YXJlYSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoLml0aV9fc2VhcmNoLWlucHV0KSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSB0ZXh0YXJlYSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6bm90KC5pdGlfX3NlYXJjaC1pbnB1dCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIHRleHRhcmVhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWluLWhlaWdodDogNDhweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ3JleSk7XG4gICAgcGFkZGluZzogMjNweCA4cHggNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5zaG93SGlkZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDUzcHg7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjgpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgfVxuICBAbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGU6aG92ZXIsXG4gICAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyLFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlOmhvdmVyLFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gICAgfVxuICB9XG4gIFtkYXRhLWJyb3dzZXI9aWVdIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmhvdmVyLFxuICBbZGF0YS1icm93c2VyPWllXSAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAuc2hvd0hpZGU6aG92ZXIsXG4gIFtkYXRhLWJyb3dzZXI9aWVdIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlOmhvdmVyLFxuICBbZGF0YS1icm93c2VyPWllXSAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmllIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmhvdmVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGU6aG92ZXIsXG4gIC5pZSAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGUuZm9jdXMtdmlzaWJsZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlLmZvY3VzLXZpc2libGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlLmZvY3VzLXZpc2libGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZS5mb2N1cy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmZvY3VzLXZpc2libGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5zaG93SGlkZTpmb2N1cy12aXNpYmxlLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIC5zaG93SGlkZTpmb2N1cy12aXNpYmxlLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgfVxuICAuZmllbGRXcmFwcGVyIC5zaG93SGlkZVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLmljb246YWZ0ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5zaG93SGlkZVthcmlhLWNoZWNrZWQ9dHJ1ZV0gLmljb246YWZ0ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlW2FyaWEtY2hlY2tlZD10cnVlXSAuaWNvbjphZnRlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlW2FyaWEtY2hlY2tlZD10cnVlXSAuaWNvbjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogM3B4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNDVkZWcpO1xuICAgIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgfVxuICAuZmllbGRXcmFwcGVyIC5zaG93SGlkZSAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIC5zaG93SGlkZSAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlIC5pY29uIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAjUGFzc3dvcmQ6Zm9jdXMgKyAjcmVxdWlyZW1lbnRzLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAjUGFzc3dvcmQ6Zm9jdXMgKyAjcmVxdWlyZW1lbnRzIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAwcHg7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAjcmVxdWlyZW1lbnRzLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAjcmVxdWlyZW1lbnRzLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlICNyZXF1aXJlbWVudHMsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkICNyZXF1aXJlbWVudHMge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCA4MDBtcyBlYXNlLWluLW91dDtcbiAgfVxuICAuZmllbGRXcmFwcGVyICNyZXF1aXJlbWVudHMgbGksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyICNyZXF1aXJlbWVudHMgbGksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgI3JlcXVpcmVtZW50cyBsaSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgI3JlcXVpcmVtZW50cyBsaSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAjcmVxdWlyZW1lbnRzIGxpLnZhbGlkIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAjcmVxdWlyZW1lbnRzIGxpLnZhbGlkIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlICNyZXF1aXJlbWVudHMgbGkudmFsaWQgLmljb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkICNyZXF1aXJlbWVudHMgbGkudmFsaWQgLmljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvcnJlY3QpO1xuICAgIGNvbG9yOiB2YXIoLS1jb3JyZWN0LWNvbnRyYXN0KTtcbiAgICBmb250LXNpemU6IDAuODhlbTtcbiAgICBwYWRkaW5nLXRvcDogMC4xZW07XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAjcmVxdWlyZW1lbnRzIGxpIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAjcmVxdWlyZW1lbnRzIGxpIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlICNyZXF1aXJlbWVudHMgbGkgLmljb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkICNyZXF1aXJlbWVudHMgbGkgLmljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdyb25nKTtcbiAgICBjb2xvcjogdmFyKC0td3JvbmctY29udHJhc3QpO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgZm9udC1zaXplOiAwLjk1ZW07XG4gICAgcGFkZGluZy1ib3R0b206IDAuMWVtO1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZHJvcGRvd24gbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOHB4O1xuICAgIGxlZnQ6IDhweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIH1cbiAgLmRyb3Bkb3duV3JhcHBlciBzZWxlY3QsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRyb3Bkb3duIHNlbGVjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDUycHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdyZXkpO1xuICAgIHBhZGRpbmc6IDI2cHggNDVweCA4cHggOHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLnVtYnJhY28tZm9ybXMtZmllbGQubG9uZ2Fuc3dlciB0ZXh0YXJlYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDU2cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdyZXkpO1xuICAgIHBhZGRpbmc6IDZweCA4cHggNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgZm9ybSAuZXJyb3IsXG4gIC5mb3JtV3JhcCAuZXJyb3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogNHB4IDA7XG4gICAgcGFkZGluZzogMnB4IDRweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td3JvbmcpO1xuICAgIGNvbG9yOiB2YXIoLS13cm9uZy1jb250cmFzdCk7XG4gIH1cbiAgZm9ybSAuZXJyb3I6ZW1wdHksXG4gIC5mb3JtV3JhcCAuZXJyb3I6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICAgLnN0eWxlZEZpZWxkc2V0LFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuICAgIC5zdHlsZWRGaWVsZHNldCAuZmllbGRzZXRHcmlkLFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IC5maWVsZHNldEdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBub25lO1xuICAgIH1cbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNTIwcHgpIHtcbiAgICAuY29udHJvbFdyYXBwZXIgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDQ3MHB4KSB7XG4gICAgLmNvbnRyb2xXcmFwcGVyIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgfVxuICB9XG59XG4uZmllbGRXcmFwcGVyIC5kZXNjcmlwdGlvbiA+ICo6Zmlyc3QtY2hpbGQsXG4udW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAuZGVzY3JpcHRpb24gPiAqOmZpcnN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuZGVzY3JpcHRpb24gPiAqOmZpcnN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLmRlc2NyaXB0aW9uID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5maWVsZFdyYXBwZXIgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQsXG4udW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5jb250cm9sV3JhcHBlciA+ICo6Zmlyc3QtY2hpbGQsXG4uYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIgPiAqOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuLmNvbnRyb2xXcmFwcGVyID4gKjpsYXN0LWNoaWxkLFxuLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLmNvbnRyb2xXcmFwcGVyIC5kZXNjcmlwdGlvbiA+ICo6Zmlyc3QtY2hpbGQsXG4uYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIgLmRlc2NyaXB0aW9uID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5jb250cm9sV3JhcHBlciAuZGVzY3JpcHRpb24gPiAqOmxhc3QtY2hpbGQsXG4uYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uc3R5bGVkRmllbGRzZXQgPiA6bGFzdC1jaGlsZCxcbi51bWJyYWNvLWZvcm1zLWZpZWxkc2V0ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG5cbiNyZXF1aXJlbWVudHMgbGkudmFsaWQgLmljb246YmVmb3JlIHtcbiAgY29udGVudDogXCJhXCI7XG59XG5cbkBsYXllciByZXNldCB7XG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cbiAgaHRtbCB7XG4gICAgbWluLWhlaWdodDogMTAwZHZoO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgfVxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDBkdmg7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIGFydGljbGUgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMWVtO1xuICB9XG4gIGlucHV0LFxuICBidXR0b24sXG4gIHRleHRhcmVhLFxuICBzZWxlY3Qge1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gIH1cbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbjogMHB4IDAgMjBweDtcbiAgICBsaW5lLWhlaWdodDogMS41NWVtO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNpYy1mb250KTtcbiAgfVxuICBvbCxcbiAgdWwge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbWFyZ2luOiAwLjRlbSAwIDAuNzVlbTtcbiAgfVxuICBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICB9XG4gIGJ1dHRvbiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuICBpZnJhbWUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuQGxheWVyIGJhc2Uge1xuICBib2R5IHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XG4gICAgY29sb3I6IHZhcigtLWJhc2ljKTtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tbGluayk7XG4gICAgcGFkZGluZy1pbmxpbmU6IDJweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAxcHg7XG4gIH1cbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAgIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuICBbZGF0YS1icm93c2VyPWllXSBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbiAgLmllIGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBhLmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBhOmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBhIC50YXJnZXRCbGFua05vdGlmaWVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcC1wYXRoOiByZWN0KDAgMCAwIDApO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogLTFweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cbiAgYSAuaWNvbi1tYWlsIHtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMjVlbTtcbiAgfVxuICBhIC5pY29uLWV4dGVybmFsLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxuICBbZGF0YS1hY3RpdmUtem9uZT1ob21lXSB7XG4gICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgfVxufVxuKjpub3QoYTpub3QoW3JvbGU9YnV0dG9uXSkpOmZvY3VzLXZpc2libGUsICo6bm90KGE6bm90KFtyb2xlPWJ1dHRvbl0pKS5mb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tZm9jdXMtb3V0bGluZS1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWZvY3VzLW91dGxpbmUtb2Zmc2V0KSAhaW1wb3J0YW50O1xuICBvdXRsaW5lLXN0eWxlOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXN0eWxlKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lLXdpZHRoOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXdpZHRoKSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgdmFyKC0tZm9jdXMtc2hhZG93LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uc29jaWFsTWVkaWFMb2dpbnMgYTpmb2N1cy12aXNpYmxlLFxuLnNvY2lhbE1lZGlhTG9naW5zIGEuZm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWZvY3VzLW91dGxpbmUtY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgIWltcG9ydGFudDtcbiAgb3V0bGluZS1zdHlsZTogdmFyKC0tZm9jdXMtb3V0bGluZS1zdHlsZSkgIWltcG9ydGFudDtcbiAgb3V0bGluZS13aWR0aDogdmFyKC0tZm9jdXMtb3V0bGluZS13aWR0aCkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tZm9jdXMtb3V0bGluZS1vZmZzZXQpIHZhcigtLWZvY3VzLXNoYWRvdy1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuYm9keVtkYXRhLXJlZHVjZS1hbmltYXRpb249dHJ1ZV0gKixcbmJvZHlbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPXRydWVdICo6OmJlZm9yZSxcbmJvZHlbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPXRydWVdICo6OmFmdGVyIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5zbGlkZVNraXAsXG4uaG9tZVNraXAsXG4ubWVtYmVyc2hpcFNraXAge1xuICBib3JkZXI6IDA7XG4gIGNsaXAtcGF0aDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWRlU2tpcC5mb2N1cy12aXNpYmxlLFxuLmhvbWVTa2lwLmZvY3VzLXZpc2libGUsXG4ubWVtYmVyc2hpcFNraXAuZm9jdXMtdmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAxMHB4O1xuICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OTk7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4uc2xpZGVTa2lwOmZvY3VzLXZpc2libGUsXG4uaG9tZVNraXA6Zm9jdXMtdmlzaWJsZSxcbi5tZW1iZXJzaGlwU2tpcDpmb2N1cy12aXNpYmxlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk5OTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjbGlwLXBhdGg6IGluaXRpYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbn1cblxuW2RhdGEtYWN0aXZlLXpvbmU9aG9tZV0gLmhvbWVTa2lwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltkYXRhLWFjdGl2ZS16b25lPXNsaWRlc10gLnNsaWRlU2tpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWVtYmVyc2hpcFNraXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQGtleWZyYW1lcyBhdHRlbnRpb25XaWdnbGUge1xuICAvKiBpZGxlICovXG4gIDAlLCA4OCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIC8qIHF1aWNrIHdpZ2dsZSBidXJzdCAqL1xuICA5MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKTtcbiAgfVxuICA5MiUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpO1xuICB9XG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTJkZWcpO1xuICB9XG4gIDk2JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMmRlZyk7XG4gIH1cbiAgOTglIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyBhdHRlbnRpb25XaWdnbGVCb3VuY3kge1xuICAwJSwgODglLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgxKTtcbiAgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00ZGVnKSBzY2FsZSgxLjAzKTtcbiAgfVxuICA5MiUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDRkZWcpIHNjYWxlKDEuMDMpO1xuICB9XG4gIDk0JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTNkZWcpIHNjYWxlKDEuMDIpO1xuICB9XG4gIDk2JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoM2RlZykgc2NhbGUoMS4wMik7XG4gIH1cbiAgOTglIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgxKTtcbiAgfVxufVxuaHRtbCB7XG4gIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZTtcbn1cblxud2lsbGlzLXpvbmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuW2luZXJ0XSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG53aWxsaXMtZGlhbG9nOm5vdChbZGF0YS1vcGVuPXRydWVdKSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuaHRtbFtkYXRhLWRpYWxvZy1oaWRlLW92ZXJmbG93PXRydWVdIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG5AbGF5ZXIgYmFzZSB7XG4gIC5kaWFsb2dCYWNrZHJvcCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgfVxuICBAc3VwcG9ydHMgKGhlaWdodDogMTAwZHZoKSB7XG4gICAgLmRpYWxvZ0JhY2tkcm9wIHtcbiAgICAgIGhlaWdodDogMTAwZHZoO1xuICAgIH1cbiAgfVxuICAuc2xpZGUgLmRpYWxvZ0JhY2tkcm9wIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmRpYWxvZ0lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBkaXZbcm9sZT1kaWFsb2ddIHtcbiAgICB3aWR0aDogNTgwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gLmRpYWxvZ0lubmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9bGFyZ2VNb2RhbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgd2lkdGg6IDgwMHB4O1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nSW5uZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSAuZGlhbG9nTGFiZWwge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSBkaXZbcm9sZT1kaWFsb2ddIC5kaWFsb2dDb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSAuZGlhbG9nQWN0aW9ucyB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXVtkYXRhLWRpYWxvZy1zdHlsZT1zaWRlYmFyTGVmdF0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdW2RhdGEtZGlhbG9nLXN0eWxlPXNpZGViYXJSaWdodF0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXSBkaXZbcm9sZT1kaWFsb2ddIHtcbiAgICB3aWR0aDogNDQwcHg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1mdWxsXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZV49ZnVsbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdIGRpdltyb2xlPWRpYWxvZ10ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9Z2xhY2lhbF0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDMwMDBtcztcbn1cblxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD12ZXJ5U2xvd10ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbn1cblxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1zbG93XSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogODAwbXM7XG59XG5cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9bWVkaXVtXSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9ZmFzdF0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xufVxuXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPXZlcnlGYXN0XSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwbXM7XG59XG5cbi5kaWFsb2dCYWNrZHJvcCB7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwbXM7XG59XG4uZGlhbG9nQmFja2Ryb3AuaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuLmRpYWxvZ0JhY2tkcm9wLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlSW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG5cbkBrZXlmcmFtZXMgZmFkZVRvcEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVUb3BJbl0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZVRvcEluO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVUb3BPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZVRvcE91dF0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZVRvcE91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlQm90dG9tSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlQm90dG9tSW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVCb3R0b21Jbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlQm90dG9tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZUJvdHRvbU91dF0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUJvdHRvbU91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlUmlnaHRJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVSaWdodEluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlUmlnaHRJbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlUmlnaHRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlUmlnaHRPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVSaWdodE91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlTGVmdEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVMZWZ0SW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVMZWZ0SW47XG59XG5cbkBrZXlmcmFtZXMgZmFkZUxlZnRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZUxlZnRPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVMZWZ0T3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlVG9wSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BJbl0ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVUb3BJbjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4MjVweCkge1xuICBkaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BJbl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbUluO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVUb3BPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlVG9wT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlQm90dG9tSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1zbGlkZUJvdHRvbUluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbUluO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlQm90dG9tT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVCb3R0b21PdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlQm90dG9tT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlUmlnaHRJbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPXNsaWRlUmlnaHRJbl0ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVSaWdodEluO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlUmlnaHRPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1zbGlkZVJpZ2h0T3V0XSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZVJpZ2h0T3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlTGVmdEluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPXNsaWRlTGVmdEluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUxlZnRJbjtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUxlZnRPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVMZWZ0T3V0XSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUxlZnRPdXQ7XG59XG5cbi5kaWFsb2dCYWNrZHJvcCB7XG4gIGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS13ZWJlci1taWRuaWdodCkgY2FsYygwLjggKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWRhcmstZ3JleSkgdmFyKC0tbGlnaHQtZ3JleSk7XG59XG5cbi5jbG9zZURpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjhlbSAxLjNlbTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uY2xvc2VEaWFsb2cgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAuY2xvc2VEaWFsb2c6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4uaWUgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLmNsb3NlRGlhbG9nLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4uY2xvc2VEaWFsb2c6Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5jbG9zZURpYWxvZ1tkaXNhYmxlZF0sIC5jbG9zZURpYWxvZ1thcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uZGlhbG9nQ29udGVudCB7XG4gIG1hcmdpbjogMTBweCAwO1xufVxuXG4uZGlhbG9nQWN0aW9ucy5nZW5lcmF0ZWQgYnV0dG9uLmNsb3NlRGlhbG9nIC5pY29uOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xuICBjb250ZW50OiBcImJcIjtcbn1cblxuYnV0dG9uLmNsb3NlRGlhbG9nIC5pY29uOmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xuICBmb250LXNpemU6IDEuNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBjb250ZW50OiBcImJcIjtcbn1cblxuLmRpYWxvZ0xhYmVsIGgyIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG4uc2FmYXJpIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0ge1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMTUwcHg7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIC5kaWFsb2dJbm5lciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc25vdy1kcmlmdCk7XG4gIGNvbG9yOiB2YXIoLS1zbm93LWRyaWZ0LWNvbnRyYXN0KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgNXB4IHZhcigtLWJlZS1iYWxtKSwgMCAwIDAgOHB4IHZhcigtLXNvZnQtbGF2ZW5kYXIpO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBidXR0b24uY2xvc2VEaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC44ZW0gMS4zZW07XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBidXR0b24uY2xvc2VEaWFsb2cgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBidXR0b24uY2xvc2VEaWFsb2c6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gYnV0dG9uLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLmllIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gYnV0dG9uLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBidXR0b24uY2xvc2VEaWFsb2cuZm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gYnV0dG9uLmNsb3NlRGlhbG9nOmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIGJ1dHRvbi5jbG9zZURpYWxvZ1tkaXNhYmxlZF0sIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gYnV0dG9uLmNsb3NlRGlhbG9nW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIGJ1dHRvbi5jbG9zZURpYWxvZyAuaWNvbjpiZWZvcmUge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgY29udGVudDogXCJiXCI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zYWZhcmkgW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIHtcbiAgcGFkZGluZzogMjBweCAyMHB4IDE1MHB4O1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIC5kaWFsb2dJbm5lciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXB1cnBsZS1jbG91ZCk7XG4gIGNvbG9yOiB2YXIoLS1wdXJwbGUtY2xvdWQtY29udHJhc3QpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxM3B4IHZhcigtLXNvZnQtbGF2ZW5kYXIpLCAwIDAgMCAxNnB4IHZhcigtLWdyYXBlLWp1aWNlKTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nTGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrKTtcbiAgcGFkZGluZzogNXB4IDEwcHggMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nTGFiZWwgaDIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG59XG5cbltkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHVycGxlLWNsb3VkKTtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgY29sb3I6IHZhcigtLXB1cnBsZS1jbG91ZC1jb250cmFzdCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDhweCB2YXIoLS1ncmFwZS1qdWljZSk7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmRpYWxvZ0xhYmVsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmRpYWxvZ0FjdGlvbnMge1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogN3B4O1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOGVtIDEuM2VtO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2cgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIC5jbG9zZURpYWxvZzpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1icmlnaHQpO1xufVxuLmllIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIC5jbG9zZURpYWxvZzpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1icmlnaHQpO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIC5jbG9zZURpYWxvZzpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWJyaWdodCk7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2dbZGlzYWJsZWRdLCBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2dbYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXSAuZGlhbG9nSW5uZXIge1xuICBtaW4taGVpZ2h0OiAxMDAlO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXVtkYXRhLWRpYWxvZy1zdHlsZT1zaWRlYmFyTGVmdF0gLmRpYWxvZ0lubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMDtcbiAgcGFkZGluZzogMjBweDtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZV49c2lkZWJhcl1bZGF0YS1kaWFsb2ctc3R5bGU9c2lkZWJhclJpZ2h0XSAuZGlhbG9nSW5uZXIge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIDAgMCB2YXIoLS1yYWRpdXMpO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG5bZGF0YS1kaWFsb2ctc3R5bGVePWZ1bGxdIC5kaWFsb2dJbm5lciB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5zaW1wbGVEaWFsb2cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1jb250cmFzdCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG59XG5cbiNyZXR1cm5NZXNzYWdlIC5jbG9zZURpYWxvZyAuaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdW2RhdGEtZGlhbG9nLXN0eWxlPXNpZGViYXJMZWZ0XSAuZGlhbG9nSW5uZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXVtkYXRhLWRpYWxvZy1zdHlsZT1zaWRlYmFyUmlnaHRdIC5kaWFsb2dJbm5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIGRpdltyb2xlPWRpYWxvZ10ucmVwb3J0TmVlZGVkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQGtleWZyYW1lcyB6b29tSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4zKTtcbiAgfVxufVxuQGtleWZyYW1lcyB6b29tT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGxheWVyIGJhc2Uge1xuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10ucmV0dXJuUGF1c2UgLmJnSW1nV3JhcHBlcjpmaXJzdC1jaGlsZCB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nV3JhcHBlciB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuODVzO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nV3JhcHBlci5jdXJyZW50IHtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1dyYXBwZXIucHJldiB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1dyYXBwZXI6bnRoLWNoaWxkKG9kZCkgLmJnSW1nLnRyYW5zIHtcbiAgICBhbmltYXRpb24tbmFtZTogem9vbUluO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdXcmFwcGVyOm50aC1jaGlsZChldmVuKSAuYmdJbWcudHJhbnMge1xuICAgIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWcge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDEwcztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPWNlbnRlcl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImNlbnRlciBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMCUgNTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSA1MCU7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMCUgMTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJ0b3AgbWlkZGxlXCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSAxMCU7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMCUgOTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJib3R0b20gbWlkZGxlXCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPVwiYm90dG9tIGxlZnRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDkwJSA5MCU7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWFuaW1hdGlvbj1jZW50ZXJdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1hbmltYXRpb249XCJ0b3AgcmlnaHRcIl0ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCByaWdodDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYW5pbWF0aW9uPVwidG9wIGxlZnRcIl0ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1hbmltYXRpb249XCJib3R0b20gcmlnaHRcIl0ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSByaWdodDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYW5pbWF0aW9uPVwiYm90dG9tIGxlZnRcIl0ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XS5wYXVzZWQgLmJnSW1nV3JhcHBlci50cmFucyB7XG4gICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10ucGF1c2VkIC5iZ0ltZy50cmFucyB7XG4gICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWcsXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmcge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJ0b3AgbGVmdFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCU7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwJTtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgbGVmdFwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cImNlbnRlciBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPWNlbnRlcl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9Y2VudGVyXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwiYm90dG9tIGxlZnRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAxMDAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSByaWdodFwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSByaWdodFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIHZpZGVvIHtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgfVxufVxuW2RhdGEtaXMtbG9hZGluZz10cnVlXSAjYmFja2dyb3VuZCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbltkYXRhLWFjdGl2ZS1kaWFsb2c9Y2hlY2tsaXN0XSAjYmFja2dyb3VuZFBsYXlCdG4sIFtkYXRhLWFjdGl2ZS1kaWFsb2c9ZmFxXSAjYmFja2dyb3VuZFBsYXlCdG4sIFtkYXRhLWFjdGl2ZS1kaWFsb2c9Z2xvc3NhcnldICNiYWNrZ3JvdW5kUGxheUJ0biwgW2RhdGEtYWN0aXZlLWRpYWxvZz1hY2hpZXZlbWVudHNdICNiYWNrZ3JvdW5kUGxheUJ0biwgW2RhdGEtYWN0aXZlLWRpYWxvZz1yZXNvdXJjZXNdICNiYWNrZ3JvdW5kUGxheUJ0biwgW2RhdGEtYWN0aXZlLWRpYWxvZz1mYXFDb25maXJtUXVlc3Rpb25NZXNzYWdlXSAjYmFja2dyb3VuZFBsYXlCdG4sIFtkYXRhLWFjdGl2ZS1kaWFsb2c9ZmFxUXVlc3Rpb25TdWJtaXR0ZWRNZXNzYWdlXSAjYmFja2dyb3VuZFBsYXlCdG4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuW2RhdGEtYWN0aXZlLWRpYWxvZz11dGlsaXR5TWVudV0gI2JhY2tncm91bmRQbGF5QnRuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbltkYXRhLWFjdGl2ZS16b25lPXNsaWRlc10gI2JhY2tncm91bmRQbGF5QnRuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbltkYXRhLWlzLWxvYWRpbmc9dHJ1ZV0gI2JhY2tncm91bmRQbGF5QnRuIHtcbiAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xufVxuI2JhY2tncm91bmRQbGF5QnRuIC5pY29uLXBsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuI2JhY2tncm91bmRQbGF5QnRuLnBhdXNlIC5pY29uLXBsYXkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZSAuaWNvbi1wYXVzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbjpyb290IHtcbiAgLS1tdG4tc3RhZ2dlcjogNzJweDtcbiAgLS1tb3VudGFpbi13aWR0aDogNzAwcHg7XG4gIC0tdG9wLWg6IDQwMHB4O1xufVxuXG5ib2R5OmhhcygjbWFpbk5hdiBsaS5zZWN0aW9uW2RhdGEtc3RhdGU9YWN0aXZlXSBidXR0b246aG92ZXIpIC5tYXNjb3RIb2xkZXIubWFzY290MiBpbWcge1xuICB0b3A6IDBweDtcbiAgc2NhbGU6IDE7XG59XG5ib2R5OmhhcygjbWFpbk5hdiBsaS5zZWN0aW9uW2RhdGEtc3RhdGU9YWN0aXZlXSBidXR0b246aG92ZXIpIC5tYXNjb3RIb2xkZXIubWFzY290MiAucXVvdGUge1xuICB0b3A6IC0yNXB4O1xuICBvcGFjaXR5OiAxO1xufVxuXG5ib2R5W2RhdGEtb3JpZW50YXRpb24tY29tcGxldGU9dHJ1ZV0gLm1hc2NvdEhvbGRlci5tYXNjb3QxIGltZyB7XG4gIHRvcDogMHB4O1xuICBzY2FsZTogMTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMnM7XG59XG5ib2R5W2RhdGEtb3JpZW50YXRpb24tY29tcGxldGU9dHJ1ZV0gLm1hc2NvdEhvbGRlci5tYXNjb3QxIC5jb25ncmF0c01zZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAyLjVzO1xufVxuXG5bZGF0YS1pcy1sb2FkaW5nPXRydWVdIC5tYXNjb3RIb2xkZXIubWFzY290MSwgLnV0aWxpdHlNb2RlIC5tYXNjb3RIb2xkZXIubWFzY290MSwgLm1lbnVPdXQgLm1hc2NvdEhvbGRlci5tYXNjb3QxIHtcbiAgc2NhbGU6IDA7XG59XG5bZGF0YS1pcy1sb2FkaW5nPXRydWVdIC5tYXNjb3RIb2xkZXIubWFzY290MSBpbWcsIC51dGlsaXR5TW9kZSAubWFzY290SG9sZGVyLm1hc2NvdDEgaW1nLCAubWVudU91dCAubWFzY290SG9sZGVyLm1hc2NvdDEgaW1nIHtcbiAgdG9wOiAxMDAlO1xufVxuW2RhdGEtaXMtbG9hZGluZz10cnVlXSAubWFzY290SG9sZGVyLm1hc2NvdDEgLmNvbmdyYXRzTXNnLCAudXRpbGl0eU1vZGUgLm1hc2NvdEhvbGRlci5tYXNjb3QxIC5jb25ncmF0c01zZywgLm1lbnVPdXQgLm1hc2NvdEhvbGRlci5tYXNjb3QxIC5jb25ncmF0c01zZyB7XG4gIHRvcDogLTgwcHg7XG4gIG9wYWNpdHk6IDA7XG59XG5cbltkYXRhLWFjdGl2ZS16b25lPWhvbWVdIC51dGlsaXR5TW9kZSAjYmFja2dyb3VuZCAuYmFja2dyb3VuZE1lZGlhIHtcbiAgYm90dG9tOiAtMTAwJTtcbiAgdHJhbnNsYXRlOiA3NSUgMDtcbn1cbltkYXRhLWFjdGl2ZS16b25lPWhvbWVdIC51dGlsaXR5TW9kZSAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwIHtcbiAgc2NhbGU6IDEuNTtcbiAgLS1nYXAxOiAxMCU7XG4gIC0tZ2FwMjogMzIlO1xufVxuW2RhdGEtYWN0aXZlLXpvbmU9aG9tZV0gLnV0aWxpdHlNb2RlICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAudG9wIHtcbiAgYm90dG9tOiAtOTVweDtcbiAgcmlnaHQ6IC0zNXB4O1xuICBzY2FsZTogMS4zO1xufVxuW2RhdGEtYWN0aXZlLXpvbmU9aG9tZV0gLnV0aWxpdHlNb2RlICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAubWlkZGxlIHtcbiAgc2NhbGU6IDEuODtcbn1cbltkYXRhLWFjdGl2ZS16b25lPWhvbWVdIC51dGlsaXR5TW9kZSAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwLmJhY2sge1xuICByaWdodDogOTVweDtcbiAgc2NhbGU6IDI7XG4gIGJvdHRvbTogLTQwcHg7XG59XG5cbi5tYXNjb3RIb2xkZXIge1xuICBhc3BlY3QtcmF0aW86IDE4Ny8zMjg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDIwJTtcbiAgd2lkdGg6IDEzNXB4O1xuICB0b3A6IDEwJTtcbiAgcm90YXRlOiA1ZGVnO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAtMXB4IDhweCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmFzaWMpIGNhbGMoMC4zICogMTAwJSksIHRyYW5zcGFyZW50KSk7XG59XG4uaW5TZWN0aW9uIC5tYXNjb3RIb2xkZXIubWFzY290MiB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLm1hc2NvdEhvbGRlci5tYXNjb3QxIHtcbiAgYXNwZWN0LXJhdGlvOiAyNDAvMzU1O1xuICByaWdodDogMzglO1xuICB3aWR0aDogMTYwcHg7XG4gIHRvcDogOCU7XG4gIHJvdGF0ZTogOGRlZztcbiAgdHJhbnNpdGlvbjogc2NhbGUgMC43cztcbn1cbi5tYXNjb3RIb2xkZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMHB4O1xuICB0b3A6IDEwMCU7XG4gIHNjYWxlOiAwO1xuICByb3RhdGU6IDBkZWc7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBjZW50ZXI7XG4gIHRyYW5zaXRpb246IHRvcCAwLjQ1cyBlYXNlLW91dCwgc2NhbGUgMC40NXM7XG59XG4ubWFzY290SG9sZGVyIC5jb25ncmF0c01zZyB7XG4gIC0tYm9yZGVyLWNvbG9yOiB2YXIoLS13ZWJlci1taWRuaWdodCk7XG4gIC0tYm9yZGVyOiAycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA4cHg7XG4gIG9wYWNpdHk6IDE7XG4gIHJpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gIHdpZHRoOiAyMzBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiB2YXIoLS13YWxkb3MtZGVuKTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgdHJhbnNpdGlvbjogdG9wIDAuNDVzIGVhc2Utb3V0LCBvcGFjaXR5IDAuMnM7XG4gIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyOiB2YXIoLS1ib3JkZXIpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5tYXNjb3RIb2xkZXIgLmNvbmdyYXRzTXNnOmFmdGVyIHtcbiAgLS1zaXplOiAxOHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAtOXB4O1xuICBib3R0b206IDEycHg7XG4gIHdpZHRoOiB2YXIoLS1zaXplKTtcbiAgaGVpZ2h0OiB2YXIoLS1zaXplKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xuICBib3JkZXItcmlnaHQ6IHZhcigtLWJvcmRlcikgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDBkZWcpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICBzY2FsZTogMTtcbn1cbi5tYXNjb3RIb2xkZXIgLmNvbmdyYXRzTXNnIGgzIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDVweDtcbn1cbi5tYXNjb3RIb2xkZXIgLmNvbmdyYXRzTXNnIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5tYXNjb3RIb2xkZXIgLmNvbmdyYXRzTXNnIHNwYW4ubGluZTEge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcbiAgcGFkZGluZzogNXB4O1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbi5oZWFkZXJNb3VudGFpbnMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTcycHg7XG4gIGxlZnQ6IC0yMjBweDtcbiAgbGVmdDogLTEyJTtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDkwMHB4O1xuICBzY2FsZTogLTE7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB6LWluZGV4OiA1MDtcbn1cbi5oZWFkZXJNb3VudGFpbnMgLm1vdW50YWluV3JhcCB7XG4gIC0tZ2FwMTogMjBweDtcbiAgLS1nYXAyOiA1NnB4O1xuICB0cmFuc2xhdGU6IDgwJSAzMDBweDtcbn1cbi5oZWFkZXJNb3VudGFpbnMgLm1vdW50YWluV3JhcCAuYm9yZGVyIHtcbiAgd2lkdGg6IDE1MCU7XG4gIGxlZnQ6IC0xMzAlO1xufVxuLmhlYWRlck1vdW50YWlucyAubW91bnRhaW5XcmFwLmJhY2sgLm1vdW50YWluIHtcbiAgcmlnaHQ6IDE1cHg7XG59XG4uaW5TZWN0aW9uIC5oZWFkZXJNb3VudGFpbnMgLm1vdW50YWluV3JhcCB7XG4gIHRyYW5zbGF0ZTogODAlIDIwcHg7XG59XG5cbi5tb3VudGFpbldyYXAge1xuICAtLWdhcDE6IDklO1xuICAtLWdhcDI6IDE4JTtcbiAgYXNwZWN0LXJhdGlvOiAxNDE5LzgwMztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogOTglO1xuICBtYXgtd2lkdGg6IDg1JTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDBweDtcbiAgcmlnaHQ6IDBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAycywgcmlnaHQgMXMsIHRyYW5zbGF0ZSAxLjVzIGVhc2UtaW4tb3V0LCBzY2FsZSAyLjJzO1xufVxuLm1vdW50YWluV3JhcC50b3Age1xuICAtLU1jb2xvcjogdmFyKC0tcHJpbWFyeSk7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuNjVzO1xufVxuLm1vdW50YWluV3JhcC5taWRkbGUge1xuICAtLU1jb2xvcjogdmFyKC0tcHVycGxlLXJ1c2gpO1xuICBib3R0b206IHZhcigtLWdhcDEpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjU1cztcbn1cbi5tb3VudGFpbldyYXAuYmFjayB7XG4gIC0tTWNvbG9yOiB2YXIoLS1sb3ZlbHktbGlsYWMpO1xuICBib3R0b206IHZhcigtLWdhcDIpO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjM1cztcbn1cbi5tb3VudGFpbldyYXAgLmJvcmRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMHB4O1xuICB3aWR0aDogMTQwJTtcbiAgbGVmdDogLTExMCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLU1jb2xvcik7XG4gIGhlaWdodDogMTIuNDElO1xufVxuLm1vdW50YWluV3JhcCAubW91bnRhaW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1NY29sb3IpO1xuICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5GcmFtZUV4dCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDBweDtcbiAgYm90dG9tOiAwcHg7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IGJvdHRvbSAxcywgcmlnaHQgMXM7XG59XG5cbiNiYWNrZ3JvdW5kIHtcbiAgLS1pbm5lci1oOiA4NTBweDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206IDBweDtcbiAgbGVmdDogMjBweDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDFzIDAuMzVzLCBvcGFjaXR5IDAuNXM7XG59XG4uc2xpZGVTZXR1cCAjYmFja2dyb3VuZCB7XG4gIGhlaWdodDogdmFyKC0taW5uZXItaCk7XG59XG5bZGF0YS1pcy1sb2FkaW5nPXRydWVdICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAge1xuICB0cmFuc2xhdGU6IDc4JSAxNTBweDtcbiAgLS1nYXAxOiAxNSU7XG4gIC0tZ2FwMjoyMiU7XG59XG4uc2xpZGVTZXR1cCAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwIHtcbiAgdHJhbnNsYXRlOiA3OCUgNTBweDtcbiAgLS1nYXAxOiA1JTtcbiAgLS1nYXAyOjglO1xufVxuLnNsaWRlU2V0dXAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcC5iYWNrIHtcbiAgdHJhbnNsYXRlOiA4NSUgNTBweDtcbn1cbi5zbGlkZVNldHVwICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAubWlkZGxlIHtcbiAgdHJhbnNsYXRlOiA4NSUgOTBweDtcbn1cbi5zbGlkZVNldHVwICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAudG9wIHtcbiAgdHJhbnNsYXRlOiA5MCUgOTBweDtcbn1cbiNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAudG9wIC5tb3VudGFpbiB7XG4gIHJpZ2h0OiAtMzBweDtcbn1cbiNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAubWlkZGxlIC5tb3VudGFpbiB7XG4gIHJpZ2h0OiAtMTVweDtcbn1cbiNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEge1xuICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5NZWRpYUV4dCk7XG4gIGFzcGVjdC1yYXRpbzogMTMzOC83Mjc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwcHg7XG4gIHJpZ2h0OiAtMTVweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYm90dG9tIDEuNXMgZWFzZS1pbi1vdXQsIHRyYW5zbGF0ZSAxLjVzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDAuM3M7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDg1cHgpO1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgei1pbmRleDogNTtcbn1cbi5maXJlZm94ICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBpc29sYXRpb246IGlzb2xhdGU7XG4gIGNvbnRhaW46IHBhaW50O1xufVxuLnV0aWxpdHlNb2RlICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEsIC5zZWFyY2hNb2RlICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEsIC50b29sc01vZGUgI2JhY2tncm91bmQgLmJhY2tncm91bmRNZWRpYSB7XG4gIG9wYWNpdHk6IDA7XG4gIGJvdHRvbTogLTEwMCU7XG59XG4udXRpbGl0eU1vZGUubWVudU91dCAjYmFja2dyb3VuZCAuYmFja2dyb3VuZE1lZGlhLCAuc2VhcmNoTW9kZS5tZW51T3V0ICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEsIC50b29sc01vZGUubWVudU91dCAjYmFja2dyb3VuZCAuYmFja2dyb3VuZE1lZGlhIHtcbiAgb3BhY2l0eTogMDtcbiAgYm90dG9tOiAtMTAwJTtcbn1cbi5tZW51T3V0ICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEge1xuICBib3R0b206IC0xMDAlO1xuICB0cmFuc2xhdGU6IDc1JSAwO1xufVxuLm1lbnVJbiAjYmFja2dyb3VuZCAuYmFja2dyb3VuZE1lZGlhIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMXM7XG59XG5bZGF0YS1pcy1sb2FkaW5nPXRydWVdICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEge1xuICBib3R0b206IC0xMDAlO1xuICB0cmFuc2xhdGU6IDc1JSAwO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAxcztcbn1cbiNiYWNrZ3JvdW5kIC5jb3Zlci1zbGlkZXIsXG4jYmFja2dyb3VuZCB2aWRlbyxcbiNiYWNrZ3JvdW5kIC5tYWluQmdJbWcge1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xufVxuLmZpcmVmb3ggI2JhY2tncm91bmQgLmNvdmVyLXNsaWRlcixcbi5maXJlZm94ICNiYWNrZ3JvdW5kIHZpZGVvLFxuLmZpcmVmb3ggI2JhY2tncm91bmQgLm1haW5CZ0ltZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXAtcGF0aDogaW5oZXJpdDtcbn1cbiNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdIb2xkZXIge1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xufVxuLm1lbnVPdXQgI2JhY2tncm91bmQgLnNlY3Rpb25CZ0hvbGRlciB7XG4gIHotaW5kZXg6IDM7XG59XG4jYmFja2dyb3VuZCAuc2VjdGlvbkJnSG9sZGVyW2RhdGEtc2VjdGlvbi1iZy1vbmx5PXRydWVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xufVxuLmluU2VjdGlvbiAjYmFja2dyb3VuZCAuc2VjdGlvbkJnSG9sZGVyW2RhdGEtc2VjdGlvbi1iZy1vbmx5PXRydWVdIHtcbiAgb3BhY2l0eTogMTtcbn1cbiNiYWNrZ3JvdW5kIC5iZ0ltZyxcbiNiYWNrZ3JvdW5kIC5zZWN0aW9uQmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNiYWNrZ3JvdW5kIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJvdHRvbTogMTVweDtcbiAgbGVmdDogMTVweDtcbiAgei1pbmRleDogMTUwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0biAudGV4dCB7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyAycHgpO1xuICB0b3A6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBzY2FsZTogMC4xO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XG4gIHBhZGRpbmc6IDJweCA3cHggNHB4IDdweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3BhY2l0eTogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXNlY29uZGFyeS1mb250KTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXhzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50KTtcbiAgY29sb3I6IHZhcigtLWFjY2VudC1jb250cmFzdCk7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctYm91bmNlKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XG4gIHRyYW5zbGF0ZTogMCAtNTAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0biAudGV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctYm91bmNlKTtcbiAgdHJhbnNsYXRlOiAwIC01MCU7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDEwMCU7XG4gIGhlaWdodDogMTRweDtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKDEwMCUgNTAlLCAwJSAxMDAlLCAwJSAwJSk7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4gLnRleHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctYm91bmNlKTtcbiAgdHJhbnNsYXRlOiAwIC01MCU7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWFjY2VudCk7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiBjYWxjKDEwMCUgLSAycHgpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMTAwJSA1MCUsIDAlIDEwMCUsIDAlIDAlKTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0biAudGV4dCB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG59XG4jYmFja2dyb3VuZFBsYXlCdG4gLmljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIHotaW5kZXg6IDQ7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNiYWNrZ3JvdW5kUGxheUJ0bjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIH1cbiAgI2JhY2tncm91bmRQbGF5QnRuOmhvdmVyIC50ZXh0IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHNjYWxlOiAxO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG5bZGF0YS1icm93c2VyPWllXSAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIgLnRleHQge1xuICBvcGFjaXR5OiAxO1xuICBzY2FsZTogMTtcbn1cbi5pZSAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG4uaWUgI2JhY2tncm91bmRQbGF5QnRuOmhvdmVyIC50ZXh0IHtcbiAgb3BhY2l0eTogMTtcbiAgc2NhbGU6IDE7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4uZm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5mb2N1cy12aXNpYmxlIC50ZXh0IHtcbiAgb3BhY2l0eTogMTtcbiAgc2NhbGU6IDE7XG59XG4jYmFja2dyb3VuZFBsYXlCdG46Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bjpmb2N1cy12aXNpYmxlIC50ZXh0IHtcbiAgb3BhY2l0eTogMTtcbiAgc2NhbGU6IDE7XG59XG5cbkBtZWRpYSAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1pbi1oZWlnaHQ6IDEwNTBweCkge1xuICBib2R5IHtcbiAgICAtLXRvcC1oOiA2MDBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSwgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCksIChtYXgtaGVpZ2h0OiA1MDBweCkge1xuICBib2R5IHtcbiAgICAtLXRvcC1oOiA2MDBweDtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA4NTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCksIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIGFuZCAobWF4LWhlaWdodDogMTAwMHB4KSwgKG1heC1oZWlnaHQ6IDUwMHB4KSBhbmQgKG1heC1oZWlnaHQ6IDEwMDBweCkge1xuICBib2R5IHtcbiAgICAtLXRvcC1oOiA0NTBweDtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA3NzBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC1oZWlnaHQ6IDgyNXB4KSwgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkgYW5kIChtYXgtaGVpZ2h0OiA4MjVweCksIChtYXgtaGVpZ2h0OiA1MDBweCkgYW5kIChtYXgtaGVpZ2h0OiA4MjVweCkge1xuICBib2R5IHtcbiAgICAtLXRvcC1oOiAzNTBweDtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA3MDBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC13aWR0aDogNjcwcHgpLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aDogNjcwcHgpLCAobWF4LWhlaWdodDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA2NzBweCkge1xuICBib2R5IHtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA2MjBweDtcbiAgICAtLXRvcC1oOiAzNTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC13aWR0aDogNDcwcHgpLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aDogNDcwcHgpLCAobWF4LWhlaWdodDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA0NzBweCkge1xuICBib2R5IHtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA1NTBweDtcbiAgICAtLXRvcC1oOiAyOTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC13aWR0aDogMzkwcHgpLCAobWF4LXdpZHRoOiA5MjBweCkgYW5kIChtYXgtaGVpZ2h0OiA1MDBweCksIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIGFuZCAobWF4LXdpZHRoOiAzOTBweCksIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIGFuZCAobWF4LWhlaWdodDogNTAwcHgpLCAobWF4LWhlaWdodDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiAzOTBweCksIChtYXgtaGVpZ2h0OiA1MDBweCkgYW5kIChtYXgtaGVpZ2h0OiA1MDBweCkge1xuICBib2R5IHtcbiAgICAtLW1vdW50YWluLXdpZHRoOiA1MDBweDtcbiAgICAtLXRvcC1oOiAyOTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSwgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCksIChtYXgtaGVpZ2h0OiA1MDBweCkge1xuICAuaGVhZGVyTW91bnRhaW5zIC5tb3VudGFpbldyYXAgLmJvcmRlciB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDFzIDAuMzVzO1xuICB9XG4gICNiYWNrZ3JvdW5kIHtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiB1bnNldDtcbiAgICBsZWZ0OiB1bnNldDtcbiAgICByaWdodDogMDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiB1bnNldDtcbiAgICBvdmVyZmxvdzogY2xpcDtcbiAgICBoZWlnaHQ6IHZhcigtLXRvcC1oKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJhY2tncm91bmRNZWRpYSB7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiBjYWxjKHZhcigtLW1vdW50YWluLXdpZHRoKSAtIDgwcHgpO1xuICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xuICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgYXNwZWN0LXJhdGlvOiAxMjM3Lzc4MDtcbiAgICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5NZWRpYVJzcCk7XG4gIH1cbiAgLnNsaWRlU2V0dXAgI2JhY2tncm91bmQge1xuICAgIHRyYW5zbGF0ZTogMCAwJTtcbiAgfVxuICAudXRpbGl0eU1vZGUgI2JhY2tncm91bmQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbiAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcCB7XG4gICAgLS1nYXAxOiAtNSU7XG4gICAgLS1nYXAyOiAtNCU7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgIGFzcGVjdC1yYXRpbzogMTM1NC84ODI7XG4gICAgd2lkdGg6IHZhcigtLW1vdW50YWluLXdpZHRoKTtcbiAgICBoZWlnaHQ6IHVuc2V0O1xuICAgIGJvdHRvbTogMHB4O1xuICB9XG4gICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAgLmJvcmRlciB7XG4gICAgbGVmdDogLTE1MCU7XG4gICAgd2lkdGg6IDE5MCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICB9XG4gIC5tZW51T3V0ICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAgLmJvcmRlciB7XG4gICAgc2NhbGU6IDE7XG4gIH1cbiAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcCAubW91bnRhaW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogdW5zZXQ7XG4gICAgYXNwZWN0LXJhdGlvOiAxMzU0Lzg4MjtcbiAgICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5GcmFtZVJzcCk7XG4gIH1cbiAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcC5iYWNrIHtcbiAgICBib3R0b206IDBweDtcbiAgICByaWdodDogLTEwcHg7XG4gIH1cbiAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcC5taWRkbGUge1xuICAgIGJvdHRvbTogdmFyKC0tZ2FwMSk7XG4gICAgcmlnaHQ6IDBweDtcbiAgfVxuICAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwLnRvcCB7XG4gICAgYm90dG9tOiB2YXIoLS1nYXAyKTtcbiAgICByaWdodDogLThweDtcbiAgfVxuICAuc2xpZGVTZXR1cCAjYmFja2dyb3VuZCB7XG4gICAgLS1pbm5lci1oOiA3NTBweDtcbiAgICB0b3A6IGNhbGMoMTAwJSAtIHZhcigtLWlubmVyLWgpKTtcbiAgfVxuICAuc2xpZGVTZXR1cCAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwLmJhY2sge1xuICAgIHRyYW5zbGF0ZTogODclIC01MHB4O1xuICB9XG4gIC5zbGlkZVNldHVwICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAubWlkZGxlIHtcbiAgICB0cmFuc2xhdGU6IDg1JSA0MHB4O1xuICB9XG4gIC5zbGlkZVNldHVwICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAudG9wIHtcbiAgICB0cmFuc2xhdGU6IDg2JSA5MHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTIwcHgpIGFuZCAobWF4LXdpZHRoOiA2NzBweCksIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIGFuZCAobWF4LXdpZHRoOiA2NzBweCksIChtYXgtaGVpZ2h0OiA1MDBweCkgYW5kIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gICNiYWNrZ3JvdW5kIC5iYWNrZ3JvdW5kTWVkaWEge1xuICAgIGJvdHRvbTogLTI1cHg7XG4gIH1cbiAgI2JhY2tncm91bmQgLm1vdW50YWluV3JhcCAubW91bnRhaW4ge1xuICAgIGJvdHRvbTogLTUwcHg7XG4gIH1cbiAgI2JhY2tncm91bmRQbGF5QnRuIHtcbiAgICBib3R0b206IDVweDtcbiAgICBsZWZ0OiA1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MjBweCkgYW5kIChtYXgtd2lkdGg6IDUyMHB4KSwgKG1heC13aWR0aDogOTIwcHgpIGFuZCAobWF4LWhlaWdodDogNTAwcHgpLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aDogNTIwcHgpLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC1oZWlnaHQ6IDUwMHB4KSwgKG1heC1oZWlnaHQ6IDUwMHB4KSBhbmQgKG1heC13aWR0aDogNTIwcHgpLCAobWF4LWhlaWdodDogNTAwcHgpIGFuZCAobWF4LWhlaWdodDogNTAwcHgpIHtcbiAgLnN0aWNreSAuaGVhZGVyTW91bnRhaW5zIC5tb3VudGFpbldyYXAge1xuICAgIC0tZ2FwMTogMjBweDtcbiAgICAtLWdhcDI6IDMwcHg7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMHMgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSBhbmQgKG1heC13aWR0aDogNDcwcHgpLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSBhbmQgKG1heC13aWR0aDogNDcwcHgpLCAobWF4LWhlaWdodDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA0NzBweCkge1xuICAuc2xpZGVTZXR1cCAjYmFja2dyb3VuZCB7XG4gICAgdG9wOiAxMTAlO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWF4LWhlaWdodDogODAwcHgpIHtcbiAgLm1hc2NvdEhvbGRlci5tYXNjb3QxIHtcbiAgICB3aWR0aDogMTMwcHg7XG4gIH1cbiAgLm1hc2NvdEhvbGRlci5tYXNjb3QxIC5jb25ncmF0c01zZyB7XG4gICAgc2NhbGU6IDAuOTtcbiAgfVxufVxuQG1lZGlhIChtYXgtaGVpZ2h0OiA2MDBweCkge1xuICAubWFzY290SG9sZGVyLm1hc2NvdDEge1xuICAgIHdpZHRoOiAxMTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkyMHB4KSwgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCksIChtYXgtaGVpZ2h0OiA1MDBweCkge1xuICBbZGF0YS1vcmllbnRhdGlvbi1jb21wbGV0ZT10cnVlXSAubWFzY290SG9sZGVyLm1hc2NvdDEge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG59XG5cbi5idWZmZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEyMDtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDU1cHgpO1xufVxuXG4uYWRnRm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDU1cHg7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgei1pbmRleDogOTk5OTtcbn1cbi5hZGdGb290ZXIgLmFkZ0xvZ29XcmFwIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogYmxhY2s7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gIC5hZGdGb290ZXIgLmFkZ0xvZ29XcmFwIGE6aG92ZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIC5hZGdGb290ZXIgLmFkZ0xvZ29XcmFwIGE6aG92ZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcbn1cbi5pZSAuYWRnRm9vdGVyIC5hZGdMb2dvV3JhcCBhOmhvdmVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG59XG4uYWRnRm9vdGVyIC5hZGdMb2dvV3JhcCBhOmZvY3VzIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG59XG4uYWRnRm9vdGVyIC5hZGdMb2dvV3JhcCAuYWRnTG9nbyB7XG4gIGhlaWdodDogMzhweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5zb2NpYWxNZWRpYSB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYVRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIGdhcDogMTBweDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgLmZhY2Vib29rTG9naW4ge1xuICBiYWNrZ3JvdW5kOiByZ2IoOCwgMTAyLCAyNTUpICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAuZ29vZ2xlTG9naW4ge1xuICBiYWNrZ3JvdW5kOiAjZWJlYmVjICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAudHdpdHRlckxvZ2luIHtcbiAgYmFja2dyb3VuZDogIzE0MTcxYSAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgLnR3aXR0ZXJMb2dpbiAudGV4dCB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcC1wYXRoOiByZWN0KDAgMCAwIDApO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zIC5hcHBsZUxvZ2luIHtcbiAgYmFja2dyb3VuZDogYmxhY2sgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zID4gYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgaGVpZ2h0OiA1MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFlbSAhaW1wb3J0YW50O1xuICBib3JkZXI6IDBweDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgPiBhIC5zdmdJY29uIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiA3cHg7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zID4gYSAudGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IDEuMWVtO1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAuYXBwbGVMb2dpbiB7XG4gIGhlaWdodDogNDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAuYXBwbGVMb2dpbiA+IGRpdiB7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4vKi5sb2dpbldyYXBwZXJbZGF0YS1oaWRkZW4tZm9yLWd1ZXN0PVwidHJ1ZVwiXSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn0qL1xuLmd1ZXN0V3JhcHBlckhvbGRlciB7XG4gIG1heC1oZWlnaHQ6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCA4MDBtcztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmZpZWxkV3JhcHBlci5lbnJvbGxlZU5hbWUge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi5maWVsZFdyYXBwZXIucGhvbmUgI1Bob25lTnVtYmVyIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xufVxuLmZpZWxkV3JhcHBlci5waG9uZSAuaXRpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG59XG4uZmllbGRXcmFwcGVyLnBob25lIC5pdGkgLml0aV9fY291bnRyeS1jb250YWluZXIge1xuICB0b3A6IDE4cHg7XG4gIGJvdHRvbTogMXB4O1xufVxuLmZpZWxkV3JhcHBlci5waG9uZSAuaXRpIC5pdGlfX3NlbGVjdGVkLWNvdW50cnkge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIDAgMCB2YXIoLS1yYWRpdXMpO1xufVxuLmZpZWxkV3JhcHBlci5waG9uZSAuaXRpIC5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQge1xuICB6LWluZGV4OiAzO1xufVxuXG46cm9vdCB7XG4gIC0taXRpLXBhdGgtZmxhZ3MtMXg6IHVybChcIi9JbWFnZXMvZmxhZ3MucG5nXCIpO1xuICAtLWl0aS1wYXRoLWZsYWdzLTJ4OiB1cmwoXCIvSW1hZ2VzL2ZsYWdzQDJ4LnBuZ1wiKTtcbiAgLS1pdGktcGF0aC1nbG9iZS0xeDogdXJsKFwiL0ltYWdlcy9nbG9iZS5wbmdcIik7XG4gIC0taXRpLXBhdGgtZ2xvYmUtMng6IHVybChcIi9JbWFnZXMvZ2xvYmVAMngucG5nXCIpO1xufVxuXG46cm9vdCB7XG4gIC0tbG9naW4tdzogNjAwcHg7XG4gIC0tbG9naW4taGVhZGVyLWhlaWdodDogMTMwcHg7XG4gIC0tbWVtYmVyQkc6IDU1dmg7XG4gIC0tY3VydmVIOiAxODBweDtcbn1cblxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIHtcbiAgaGVpZ2h0OiB2YXIoLS1tZW1iZXJCRyk7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZmxleC1ncm93OiAxO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIC5iZ0ltZyxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0sXG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAwO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwidG9wIHJpZ2h0XCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwJTtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgbGVmdFwiXSxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLmJnSW1nW2RhdGEtYmctcG9zPWNlbnRlcl0sXG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1jZW50ZXJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0sXG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cImNlbnRlciByaWdodFwiXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdLFxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLmJnSW1nW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSAxMDAlO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSByaWdodFwiXSxcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwiYm90dG9tIHJpZ2h0XCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIHZpZGVvIHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB2aWRlb1tkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW9bZGF0YS1iZy1wb3M9XCJ0b3AgbWlkZGxlXCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW9bZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDAlO1xufVxuI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIHZpZGVvW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW9bZGF0YS1iZy1wb3M9Y2VudGVyXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG59XG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW9bZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB2aWRlb1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB2aWRlb1tkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcbn1cbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB2aWRlb1tkYXRhLWJnLXBvcz1cImJvdHRvbSByaWdodFwiXSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcbn1cblxuLm1lbWJlcnNoaXBCdWZmZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgcGFkZGluZy10b3A6IDBweDtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpKTtcbn1cblxuI2JhY2tncm91bmRQbGF5QnRuIHtcbiAgdG9wOiAxMHB4O1xuICBib3R0b206IGF1dG87XG4gIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4gLnRleHQge1xuICBib3JkZXI6IDA7XG4gIGNsaXAtcGF0aDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI2JhY2tncm91bmRQbGF5QnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2ViZXItbWlkbmlnaHQpO1xufVxuLmllICNiYWNrZ3JvdW5kUGxheUJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5mb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0td2ViZXItbWlkbmlnaHQpO1xufVxuI2JhY2tncm91bmRQbGF5QnRuOmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13ZWJlci1taWRuaWdodCk7XG59XG5cbi5sb2dpblRlYXNlclZpZGVvIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBsZWZ0OiA1MHB4O1xuICByaWdodDogNjgwcHg7XG4gIHotaW5kZXg6IDk5O1xufVxuLmxvZ2luVGVhc2VyVmlkZW8gLnZpZGVvSG9sZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIHBhZGRpbmc6IDU2LjI1JSAwIDA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspIHVybChcIi9pbWFnZXMvbG9hZC1zY3JlZW4uanBnXCIpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5sb2dpblRlYXNlclZpZGVvIC52aWRlb0hvbGRlcltkYXRhLXZpbWVvLWluaXRpYWxpemVkXSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcbn1cbi5sb2dpblRlYXNlclZpZGVvIC52aWRlb0hvbGRlciAucGxheWVyLFxuLmxvZ2luVGVhc2VyVmlkZW8gLnZpZGVvSG9sZGVyIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXI6IDA7XG59XG5cbmhlYWRlciB7XG4gIHdpZHRoOiAxMDB2dztcbiAgdG9wOiBjYWxjKHZhcigtLWN1cnZlSCkgLyAyICogLTEpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zbGF0ZTogMCAtMzBweDtcbn1cbmhlYWRlciAubG9nb1dyYXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgbWF4LXdpZHRoOiAxOThweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuaGVhZGVyIC5sb2dvV3JhcCAubG9nbyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyIC5vcmllbnRhdGlvblRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbWJlcnNoaXBGb290ZXIge1xuICBiYWNrZ3JvdW5kOiAjMmQxNTQxO1xuICBmb250LWZhbWlseTogdmFyKC0tc2Vjb25kYXJ5LWZvbnQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubWVtYmVyc2hpcEZvb3RlciBoMSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4ubmF2Q3VydmUge1xuICB3aWR0aDogMTIwdnc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaGVpZ2h0OiB2YXIoLS1jdXJ2ZUgpO1xuICBiYWNrZ3JvdW5kOiAjNzA1NjllO1xuICB0b3A6IC0xMDBweDtcbiAgbGVmdDogLTEwdnc7XG4gIGJvcmRlci1yYWRpdXM6IDUwJSA1MCUgMCAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5uYXZDdXJ2ZTpiZWZvcmUsIC5uYXZDdXJ2ZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMHB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4ubmF2Q3VydmU6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcbiAgdG9wOiAxNXB4O1xufVxuXG4jbWVtYmVyc2hpcCB7XG4gIC0tZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIC0tZm9jdXMtc2hhZG93LWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIHdpZHRoOiAxMDB2dztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA1O1xuICBvdmVyZmxvdy14OiBjbGlwO1xufVxuI21lbWJlcnNoaXAgLm1lbWJlcnNoaXBDb250YWluZXIge1xuICB3aWR0aDogMTAwdnc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogNDVweCAwcHggMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcbiAgbWluLWhlaWdodDogNDAwcHg7XG4gIHotaW5kZXg6IDU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYig3MywgMzcsIDEwMSkgNDYlLCByZ2IoMTEyLCA4NiwgMTU4KSAxMDAlKTtcbn1cbiNtZW1iZXJzaGlwIC50aXRsZUFyZWEge1xuICBtYXJnaW46IDAgYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1sb3ZlbHktbGlsYWMpO1xuICBwYWRkaW5nOiAwcHggMTVweCAxNXB4O1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG59XG4jbWVtYmVyc2hpcCAudGl0bGVBcmVhIGgxLCAjbWVtYmVyc2hpcCAudGl0bGVBcmVhIGgyLCAjbWVtYmVyc2hpcCAudGl0bGVBcmVhIGgzIHtcbiAgZm9udC1zaXplOiAxLjhlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jbWVtYmVyc2hpcCAudGl0bGVBcmVhIHAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4jbWVtYmVyc2hpcCAudGl0bGVBcmVhLmFjY291bnRQcm9maWxlciBoMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuI21lbWJlcnNoaXAgLmVycm9yTWVzc2FnZSxcbiNtZW1iZXJzaGlwIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdyb25nKTtcbiAgY29sb3I6IHZhcigtLXdyb25nLWNvbnRyYXN0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgbWFyZ2luOiAycHggYXV0byAxMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQpIGNhbGMoMC40ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbn1cbiNtZW1iZXJzaGlwIC5sb2dpbk5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0KSBjYWxjKDAuMyAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuI21lbWJlcnNoaXAgLmxvZ2luTmF2IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDVweDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uaWUgI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jbWVtYmVyc2hpcCAubG9naW5OYXYgYTpmb2N1cyB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cbiNtZW1iZXJzaGlwIC5sb2dpbk5hdiA+ICoge1xuICBtYXJnaW46IDAgNXB4O1xufVxuI21lbWJlcnNoaXAgLnNzb01lc3NhZ2Uge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmFwZS1qdWljZSk7XG4gIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMC44NWVtO1xufVxuI21lbWJlcnNoaXAgLnNzb01lc3NhZ2UgcCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIHBhZGRpbmc6IDAgMHB4IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5mb3Jnb3RQYXNzd29yZCBwIHtcbiAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5Ac3VwcG9ydHMgKGFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kLWRhcmspIGNhbGMoMC43ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5IElqQWdNQ0F6TVRZdU16Z2dNalV3TGpZaVBqeHdZWFJvSUdROUlrMDNNQzQwSURJeE9TNDRZelF1TlRVZ05DNDQgTnlBNUxqSXlJRGt1TmpjZ01UUXVNVElnTVRRdU1Ua2dNeTQzTlNBekxqUTNJRGN1TnpFZ05pNDROU0F4TVM0NSBNeUE1TGpjMElEVXVOU0F6TGpjNElERXhMamt5SURjdU1EZ2dNVGd1TnpnZ05pNDROU0EyTGpZMkxTNHlNeUF4IE1pNDNOeTB6TGpjeklERTNMamszTFRjdU5qSWdPQzQyTFRZdU5ESWdNVFl1TmpjdE1UVXVNVGNnTWpNdU9EUXQgTWpNdU1UUk1NekExTGpZNElEVTBMalk1WXpjdU1pMDRJREV4TGpjNUxURTRMakkxSURFd0xqUTNMVEk1TGpFMyBMVEV1TURRdE9DNDFPUzAxTGpjeExURTJMalUxTFRFekxqQXhMVEl4TGpJNUxUVXVOalV0TXk0Mk55MHhNaTR5IE5pMDBMams0TFRFNExqa3RNeTQ0TWkwNExqa2dNUzQxTmkweE5pNDFOQ0EzTGpJeUxUSXlMalE0SURFekxqYzQgTFRRNExqTTBJRFV6TGpNeUxUazJMalU1SURFd05pNDNNUzB4TkRRdU9EVWdNVFl3TGpFeGJDMHpMakU1SURNdSBOVE10TmpBdU5DMDJOaTQyTTJNdE9DNDBNaTA1TGpJNUxURTVMamN0TVRNdU9UUXRNekV1T1RJdE9TNDFOeTAwIExqY3lJREV1TmprdE9DNDVPU0EwTGpVNExURXlMalExSURndU1Ua3RNeTQ0TmlBMExqQTBMVFl1TnpnZ09TNHcgTmkwNExqRXpJREUwTGpRNUxUSXVNekVnT1M0eU55NHpJREU0TGpBM0lEWXVOaklnTWpVdU1UTnNOakl1T1RVZyBOekF1TXpWYUlpQnpkSGxzWlQwaVptbHNiQzF5ZFd4bE9tVjJaVzV2WkdRaUx6NDhMM04yWno0S1wiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogNjAlO1xuICAgIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXSB7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdW2Rpc2FibGVkXTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1iYXNpYykgY2FsYygwLjggKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICB9XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1jaGVja2JveF0gfiBsYWJlbCxcbiNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXSB+IGxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1ZW07XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICBmb250LXNpemU6IDEuMWVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQHN1cHBvcnRzIChhcHBlYXJhbmNlOiBub25lKSB7XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDFlbTtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgIGJvcmRlci1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kLWRhcmspIGNhbGMoMC43ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICB3aWR0aDogMC40NWVtO1xuICAgIGhlaWdodDogMC40NWVtO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXVtkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPXJhZGlvXVtkaXNhYmxlZF06YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWJhc2ljKSBtaW4obCArIGwgKiAwLjc1LCAxKSBjIGgpO1xuICB9XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAgLnN0eWxlZEZpZWxkc2V0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAgLnN0eWxlZEZpZWxkc2V0IGxlZ2VuZCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmZvcm1XcmFwSW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuc3RhdHVzTWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJsYWNrKTtcbiAgY29sb3I6IHZhcigtLWJsYWNrLWNvbnRyYXN0KTtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAxMHB4IGF1dG87XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmhvcnpEaXZpZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHdpZHRoOiA1MHB4O1xuICBtYXgtd2lkdGg6IDUwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmhvcnpEaXZpZGVyIC5vciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1pbmxpbmU6IDE1cHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHRyYW5zbGF0ZTogMCAwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmxvZ2luV3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgcGFkZGluZzogMjBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAubG9naW5XcmFwcGVyIC5maWVsZFdyYXBwZXIge1xuICBtaW4td2lkdGg6IDI4MHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5sb2dpbldyYXBwZXIgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5sb2dpbldyYXBwZXIgaDMge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5lbXBsb3llZUxvZ2luIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDMwcHggMjBweDtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuZW1wbG95ZWVMb2dpbiBoMyB7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuZW1wbG95ZWVMb2dpbiBhIHtcbiAgcGFkZGluZzogOHB4IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tbGlnaHQtY29udHJhc3QpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmVtcGxveWVlTG9naW4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuZW1wbG95ZWVMb2dpbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xufVxuLmllICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuZW1wbG95ZWVMb2dpbiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5lbXBsb3llZUxvZ2luIGEuZm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuZW1wbG95ZWVMb2dpbiBhOmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2Uge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgcGFkZGluZy1yaWdodDogMHB4O1xuICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gIC0tZ3JhcGhpYzogMTcwcHg7XG4gIC0tZ3Vlc3QtZ3JhcGhpYzogMTIwcHg7XG4gIC0tYm9yZGVyOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAyNXB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiA4NjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAwcHggMCAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAwcHggc29saWQgI2EyNzViMztcbiAgcGFkZGluZzogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZ3JhcGhpYyk7XG4gIG1pbi1oZWlnaHQ6IDEyNXB4O1xuICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4ycywgdHJhbnNsYXRlIDAuMnMsIHNjYWxlIDAuMnM7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIHNjYWxlOiAwIDAuMjU7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWNpcmNsZSk7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctc21vb3RoLXNtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC50ZXh0SG9sZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgZ2FwOiA4cHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYSAudGV4dCB7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgdHJhbnNpdGlvbjogY29sb3IgMzAwbXM7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1zZWNvbmRhcnktZm9udCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYSAuZGVzY3JpcHRpb24ge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAwLjhlbTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC5ncmFwaGljSG9sZGVyIHtcbiAgbWluLXdpZHRoOiB2YXIoLS1ncmFwaGljKTtcbiAgd2lkdGg6IHZhcigtLWdyYXBoaWMpO1xuICBhc3BlY3QtcmF0aW86IDE3MC8xOTY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMztcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAtNXB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC5ncmFwaGljSG9sZGVyIC5pbWFnZSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlcik7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IGNhbGModmFyKC0tYm9yZGVyKSAqIDMuNSk7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEgLmljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYXNwZWN0LXJhdGlvOiAxLzE7XG4gIHdpZHRoOiA3NXB4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6ICM4MTRkOWQ7XG4gIGNvbG9yOiAjZDNjMmRmO1xuICBib3JkZXI6IDZweCBzb2xpZCAjMmQxNTQxO1xuICBmb250LXNpemU6IDIuNWVtO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICB0b3A6IC0zNXB4O1xuICByaWdodDogLTIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5lbnJvbGxlZUxvZ2luQnRuIHtcbiAgYmFja2dyb3VuZDogIzJkMTU0MTtcbiAgYm9yZGVyOiA1cHggc29saWQgI2EyNzViMztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAuZ3JhcGhpY0hvbGRlciB7XG4gIHRyYW5zbGF0ZTogLTI1cHggMHB4O1xuICByb3RhdGU6IC01ZGVnO1xuICBib3R0b206IC0xOHB4O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5lbnJvbGxlZUxvZ2luQnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ3JhcGUtanVpY2UpIGNhbGMoMC41ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgICBzY2FsZTogMS4xO1xuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBib3gtc2hhZG93OiAwIDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5lbnJvbGxlZUxvZ2luQnRuOmhvdmVyIC5ncmFwaGljSG9sZGVyIHtcbiAgICByb3RhdGU6IC0yZGVnO1xuICAgIHNjYWxlOiAxLjE7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bjpob3ZlciAuaWNvbiB7XG4gICAgYmFja2dyb3VuZDogIzJkMTU0MTtcbiAgICByb3RhdGU6IDNkZWc7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ3JhcGUtanVpY2UpIGNhbGMoMC41ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgc2NhbGU6IDEuMTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwIDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG46aG92ZXIgLmdyYXBoaWNIb2xkZXIge1xuICByb3RhdGU6IC0yZGVnO1xuICBzY2FsZTogMS4xO1xufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bjpob3ZlciAuaWNvbiB7XG4gIGJhY2tncm91bmQ6ICMyZDE1NDE7XG4gIHJvdGF0ZTogM2RlZztcbn1cbi5pZSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5lbnJvbGxlZUxvZ2luQnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWdyYXBlLWp1aWNlKSBjYWxjKDAuNSAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIHNjYWxlOiAxLjE7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogMCA4cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bjpob3ZlciAuZ3JhcGhpY0hvbGRlciB7XG4gIHJvdGF0ZTogLTJkZWc7XG4gIHNjYWxlOiAxLjE7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bjpob3ZlciAuaWNvbiB7XG4gIGJhY2tncm91bmQ6ICMyZDE1NDE7XG4gIHJvdGF0ZTogM2RlZztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG4uZm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ncmFwZS1qdWljZSkgY2FsYygwLjUgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICBzY2FsZTogMS4xO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bi5mb2N1cy12aXNpYmxlIC5ncmFwaGljSG9sZGVyIHtcbiAgcm90YXRlOiAtMmRlZztcbiAgc2NhbGU6IDEuMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG4uZm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGJhY2tncm91bmQ6ICMyZDE1NDE7XG4gIHJvdGF0ZTogM2RlZztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG46Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ncmFwZS1qdWljZSkgY2FsYygwLjUgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICBzY2FsZTogMS4xO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0bjpmb2N1cy12aXNpYmxlIC5ncmFwaGljSG9sZGVyIHtcbiAgcm90YXRlOiAtMmRlZztcbiAgc2NhbGU6IDEuMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG46Zm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGJhY2tncm91bmQ6ICMyZDE1NDE7XG4gIHJvdGF0ZTogM2RlZztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4ge1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHBhZGRpbmctbGVmdDogdmFyKC0tZ3Vlc3QtZ3JhcGhpYyk7XG4gIGdhcDogMTBweDtcbiAgbWluLWhlaWdodDogMTAwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC50ZXh0IHtcbiAgZm9udC1zaXplOiAyZW07XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC5ncmFwaGljSG9sZGVyIHtcbiAgbWluLXdpZHRoOiB2YXIoLS1ndWVzdC1ncmFwaGljKTtcbiAgd2lkdGg6IHZhcigtLWd1ZXN0LWdyYXBoaWMpO1xuICB0cmFuc2xhdGU6IC0yMHB4IDEwcHg7XG4gIHJvdGF0ZTogNWRlZztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4gLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ3JhcGUtanVpY2UpIGNhbGMoMC41ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgICBzY2FsZTogMS4xO1xuICAgIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG46aG92ZXIgLmdyYXBoaWNIb2xkZXIge1xuICAgIHJvdGF0ZTogLTJkZWc7XG4gICAgc2NhbGU6IDEuMTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ncmFwZS1qdWljZSkgY2FsYygwLjUgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICBzY2FsZTogMS4xO1xuICBib3gtc2hhZG93OiAwIDhweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG46aG92ZXIgLmdyYXBoaWNIb2xkZXIge1xuICByb3RhdGU6IC0yZGVnO1xuICBzY2FsZTogMS4xO1xufVxuLmllICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG46aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ3JhcGUtanVpY2UpIGNhbGMoMC41ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgc2NhbGU6IDEuMTtcbiAgYm94LXNoYWRvdzogMCA4cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0bjpob3ZlciAuZ3JhcGhpY0hvbGRlciB7XG4gIHJvdGF0ZTogLTJkZWc7XG4gIHNjYWxlOiAxLjE7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuLmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ3JhcGUtanVpY2UpIGNhbGMoMC41ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgc2NhbGU6IDEuMTtcbiAgYm94LXNoYWRvdzogMCA4cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuLmZvY3VzLXZpc2libGUgLmdyYXBoaWNIb2xkZXIge1xuICByb3RhdGU6IC0yZGVnO1xuICBzY2FsZTogMS4xO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0bjpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWdyYXBlLWp1aWNlKSBjYWxjKDAuNSAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIHNjYWxlOiAxLjE7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0bjpmb2N1cy12aXNpYmxlIC5ncmFwaGljSG9sZGVyIHtcbiAgcm90YXRlOiAtMmRlZztcbiAgc2NhbGU6IDEuMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIge1xuICBtYXJnaW4tdG9wOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucHJvZmlsZVNldHRpbmdzRXhwbGFpbmVyLFxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucHJvZmlsZUVycm9yV3JhcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLmVycm9yTWVzc2FnZSBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLmluc3RydWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAuYWNjb3JkaW9uV3JhcHBlciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnN0eWxlZEZpZWxkc2V0IHtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgcGFkZGluZy1ib3R0b206IDE4cHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5zdHlsZWRGaWVsZHNldCAuY29udHJvbFdyYXBwZXIge1xuICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5zdHlsZWRGaWVsZHNldCAuY29udHJvbFdyYXBwZXI6bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnN0eWxlZEZpZWxkc2V0LnBob25lIC5maWVsZFdyYXBwZXIge1xuICBtYXJnaW46IDEwcHggMCAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnN0eWxlZEZpZWxkc2V0LnBob25lIC5jb250cm9sV3JhcHBlciAuY29udHJvbCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIHAucHJvZmlsZVNlbGVjdEV4cGxhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgbWFyZ2luOiAwIGF1dG8gMThweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgcC5wcm9maWxlU2VsZWN0RXhwbGFpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogN3B4IGNhbGMoMTBweCAvIDIpIDAgY2FsYygxMHB4IC8gMik7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICBib3R0b206IC02cHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5idXR0b25Ib2xkZXIge1xuICBtYXJnaW46IDIwcHggMCAyMHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0biB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICB0cmFuc2l0aW9uOiAyMDBtcztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgcGFkZGluZzogMnB4O1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5yZXNldEFjY291bnRUeXBlQnRuOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5yZXNldEFjY291bnRUeXBlQnRuLmZvY3VzLXZpc2libGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0bjpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLmFjY29yZGlvbk1vZHVsZSAuYWNjb3JkaW9uVGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5hY2NvcmRpb25Nb2R1bGUgLmFjY29yZGlvblRpdGxlIC5pY29uIHtcbiAgY29sb3I6IHZhcigtLWJhc2ljKTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIC5maWVsZFdyYXBwZXIge1xuICBtYXJnaW46IDAgMTBweCAwIDA7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24gYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOGVtIDEuM2VtO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b24gLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5pZSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24gYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbi5mb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbltkaXNhYmxlZF0sICNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b24ge1xuICBib3JkZXItY29sb3I6IHZhcigtLWxpZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjhlbSAxLjNlbTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25BcHAgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25BcHA6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25BcHA6Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcFtkaXNhYmxlZF0sICNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcFthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwIHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uRW1haWwsXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNPVFBCdXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCA1cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25FbWFpbFtkYXRhLXdhaXQtYS1mZXc9dHJ1ZV0sXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNPVFBCdXR0b25bZGF0YS13YWl0LWEtZmV3PXRydWVdIHtcbiAgb3BhY2l0eTogMC42O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG59XG4jbWVtYmVyc2hpcCAuYnV0dG9uSG9sZGVyIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAwLjhlbSAxLjNlbTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0LWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0td2ViZXItbWlkbmlnaHQpO1xufVxuLmllICNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0td2ViZXItbWlkbmlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciBidXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS13ZWJlci1taWRuaWdodCk7XG59XG4jbWVtYmVyc2hpcCAuYnV0dG9uSG9sZGVyIGJ1dHRvbltkaXNhYmxlZF0sICNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4jbWVtYmVyc2hpcCAuYnV0dG9uSG9sZGVyIGJ1dHRvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiNtZW1iZXJzaGlwIC5zdHlsZWRGaWVsZHNldCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4jbWVtYmVyc2hpcCAuc3R5bGVkRmllbGRzZXQgLmdyb3VwTGVnZW5kIHtcbiAgcGFkZGluZzogNHB4IDJweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZm9udC1zaXplOiAwLjllbTtcbn1cblxuLnNpbXBsZURpYWxvZyAuY2xvc2VEaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC44ZW0gMS4zZW07XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnNpbXBsZURpYWxvZyAuY2xvc2VEaWFsb2cgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLnNpbXBsZURpYWxvZyAuY2xvc2VEaWFsb2c6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIC5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLmllIC5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLnNpbXBsZURpYWxvZyAuY2xvc2VEaWFsb2cuZm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nOmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZ1tkaXNhYmxlZF0sIC5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZyAuaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNyZXNldERhdGEgYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOGVtIDEuM2VtO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNyZXNldERhdGEgYnV0dG9uIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNyZXNldERhdGEgYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAjcmVzZXREYXRhIGJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5pZSAjcmVzZXREYXRhIGJ1dHRvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbiNyZXNldERhdGEgYnV0dG9uLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3gtc2hhZG93OiAwIDAgMCA1cHggdmFyKC0tYnJhbmQtZGFyayk7XG59XG4jcmVzZXREYXRhIGJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI3Jlc2V0RGF0YSBidXR0b25bZGlzYWJsZWRdLCAjcmVzZXREYXRhIGJ1dHRvblthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTI4MHB4KSB7XG4gIC5sb2dpblRlYXNlclZpZGVvIHtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHJpZ2h0OiA2NTBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDEwODBweCkge1xuICAubG9naW5UZWFzZXJWaWRlbyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDZweCAxNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIHtcbiAgICAtLWd1ZXN0LWdyYXBoaWM6IDExMHB4O1xuICAgIG1heC13aWR0aDogODUwcHg7XG4gICAgZ2FwOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC1oZWlnaHQ6IDY1MHB4KSB7XG4gIGhlYWRlciAubG9nb1dyYXAge1xuICAgIG1heC13aWR0aDogMTUwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLm1lbWJlcnNoaXBDb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogOTIwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tbG9naW4tdzogNTUwcHg7XG4gIH1cbiAgLm1lbWJlcnNoaXBCdWZmZXIge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gICAgLS1ncmFwaGljOiAxNTBweDtcbiAgICAtLWd1ZXN0LWdyYXBoaWM6IDEwMHB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4gLmdyYXBoaWNIb2xkZXIge1xuICAgIHRyYW5zbGF0ZTogLTEwcHggLTVweDtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC50ZXh0IHtcbiAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgfVxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcge1xuICAgIGhlaWdodDogNTB2aDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLmJnSW1nLFxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgLnNlY3Rpb25CZyxcbiAgI2JhY2tncm91bmQubWVtYmVyc2hpcEJnIHZpZGVvIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4MjVweCkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDMwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0biB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWd1ZXN0LWdyYXBoaWMpO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4gLnRleHRIb2xkZXIge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4gLmdyYXBoaWNIb2xkZXIge1xuICAgIHRyYW5zbGF0ZTogMjBweCAxMHB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5mb3JtV3JhcElubmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgZ2FwOiAxMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgI3Jlc2V0RGF0YSBidXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuICBib2R5OmFmdGVyIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbiAgaGVhZGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgI21lbWJlcnNoaXAge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gICAgZ2FwOiAzMHB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4ge1xuICAgIC0tYm9yZGVyOiA1cHg7XG4gICAgbWluLWhlaWdodDogODVweDtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjYTI3NWIzO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyAudGV4dEhvbGRlciB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ3MHB4KSB7XG4gIGhlYWRlciAubG9nb1dyYXAge1xuICAgIG1heC13aWR0aDogMTcwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLm1lbWJlcnNoaXBDb250YWluZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC50aXRsZUFyZWEgcCB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gIH1cbiAgI21lbWJlcnNoaXAgLnRpdGxlQXJlYSBoMSwgI21lbWJlcnNoaXAgLnRpdGxlQXJlYSBoMiwgI21lbWJlcnNoaXAgLnRpdGxlQXJlYSBoMyB7XG4gICAgZm9udC1zaXplOiAxLjVlbTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMge1xuICAgIC0tZ3JhcGhpYzogMTQwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biB7XG4gICAgbWluLWhlaWdodDogMTEwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAuZ3JhcGhpY0hvbGRlciB7XG4gICAgdHJhbnNsYXRlOiAtMjBweCAwO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC5pY29uIHtcbiAgICB3aWR0aDogNjVweDtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDM5MHB4KSB7XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIHBhZGRpbmctdG9wOiAwcHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIHtcbiAgICAtLWdyYXBoaWM6IDExNXB4O1xuICAgIC0tZ3Vlc3QtZ3JhcGhpYzo4NXB4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG4ge1xuICAgIC0tYm9yZGVyOiA2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAuZ3JhcGhpY0hvbGRlciB7XG4gICAgdHJhbnNsYXRlOiAtMTBweCAtNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG4gLmljb24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAudGV4dCB7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAudGV4dEhvbGRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmd1ZXN0TG9naW5CdG4ge1xuICAgIHBhZGRpbmctbGVmdDogMjNweDtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC5ncmFwaGljc0hvbGRlciB7XG4gICAgdHJhbnNsYXRlOiAyMHB4IDVweDtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC50ZXh0IHtcbiAgICBmb250LXNpemU6IDEuNTVlbTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC50ZXh0SG9sZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbipbc3R5bGUqPVwiZm9udC13ZWlnaHQ6IGJvbGRcIl0ge1xuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi5ydGUge1xuICBjbGVhcjogYm90aDtcbn1cbi5ydGUgaDQsXG4ucnRlIGg1IHtcbiAgbWFyZ2luOiAwLjhlbSAwIDAuNWVtO1xufVxuLnJ0ZSA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4ucnRlID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLnJ0ZSBhLmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggYmxhY2sgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuLnJ0ZSBhOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggYmxhY2sgIWltcG9ydGFudDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuLnJ0ZSBhOmhhcyhpbWcpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnJ0ZSBhOmhhcyhpbWcpIC5pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDJweDtcbiAgcmlnaHQ6IDNweDtcbiAgcGFkZGluZzogNnB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcbiAgdHJhbnNpdGlvbjogYWxsIDIwMG1zO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAucnRlIGE6aGFzKGltZyk6aG92ZXIgLmljb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAucnRlIGE6aGFzKGltZyk6aG92ZXIgLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG4uaWUgLnJ0ZSBhOmhhcyhpbWcpOmhvdmVyIC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xufVxuLnJ0ZSBhOmhhcyhpbWcpLmZvY3VzLXZpc2libGUgLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG4ucnRlIGE6aGFzKGltZyk6Zm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbi5ydGUgaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gODBweCk7XG4gIG1heC1oZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gODBweCkgLyAxLjc3NzgpOyAvKiAxNjo5ICovXG59XG4ucnRlIGltZyB7XG4gIG1hcmdpbjogMTBweDtcbn1cbi5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiByaWdodFwiXSB7XG4gIG1hcmdpbjogMCAwIDIwcHggMjBweDtcbn1cbi5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiBsZWZ0XCJdIHtcbiAgbWFyZ2luOiAwIDIwcHggMjBweCAwcHg7XG59XG4ucnRlIGltZ1tzdHlsZSo9XCJmbG9hdDogcmlnaHRcIl0sIC5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiBsZWZ0XCJdIHtcbiAgbWF4LXdpZHRoOiA2MCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0XCJdLCAucnRlIGltZ1tzdHlsZSo9XCJmbG9hdDogbGVmdFwiXSB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1MjBweCksIChtYXgtd2lkdGg6IDEwODBweCkgYW5kIChtaW4td2lkdGg6IDgyNnB4KSB7XG4gIC5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiByaWdodFwiXSwgLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IGxlZnRcIl0ge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvIDhweDtcbiAgfVxufVxuLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKSB7XG4gIG1hcmdpbjogMjBweCAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzKSArIDVweCAtIHZhcigtLWJvcmRlcikpO1xuICBib3JkZXI6IHZhcigtLWJvcmRlcikgc29saWQgdmFyKC0tZ3JleSk7XG4gIHBhZGRpbmc6IDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKSBpbWcge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDBweCAwcHg7XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpW3N0eWxlKj1cInRleHQtYWxpZ246IHJpZ2h0XCJdIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW46IDAgMCAyMHB4IDIwcHg7XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpW3N0eWxlKj1cInRleHQtYWxpZ246IGxlZnRcIl0ge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDIwcHggMjBweCAwcHg7XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpW3N0eWxlKj1cInRleHQtYWxpZ246IGxlZnRcIl0sIC5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xuICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogNjAlO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDY3MHB4KSB7XG4gIC5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSwgLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiByaWdodFwiXSB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1MjBweCksIChtYXgtd2lkdGg6IDEwODBweCkgYW5kIChtaW4td2lkdGg6IDgyNnB4KSB7XG4gIC5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSwgLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiByaWdodFwiXSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gOHB4O1xuICB9XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpIGZpZ2NhcHRpb24ge1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAwcHggMHB4IHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5LWNvbnRyYXN0KTtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG59XG4ucnRlIG9sW3N0eWxlPVwibGlzdC1zdHlsZS10eXBlOiB1cHBlci1hbHBoYTtcIl0gPiBsaTpiZWZvcmUsIC5ydGUgb2xbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWFscGhhO1wiXSA+IGxpOmJlZm9yZSwgLnJ0ZSBvbFtzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogbG93ZXItZ3JlZWs7XCJdID4gbGk6YmVmb3JlLCAucnRlIG9sW3N0eWxlPVwibGlzdC1zdHlsZS10eXBlOiB1cHBlci1yb21hbjtcIl0gPiBsaTpiZWZvcmUsIC5ydGUgb2xbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLXJvbWFuO1wiXSA+IGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIge1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWxpZ2h0KSAzMCUsIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1saWdodCkgY2FsYygwICogMTAwJSksIHRyYW5zcGFyZW50KSksIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0KSBjYWxjKDAgKiAxMDAlKSwgdHJhbnNwYXJlbnQpLCB2YXIoLS1saWdodCkgNzAlKSAwIDEwMCUsIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDAlIDUwJSwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJsYWNrKSBjYWxjKDAuMiAqIDEwMCUpLCB0cmFuc3BhcmVudCksIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ibGFjaykgY2FsYygwICogMTAwJSksIHRyYW5zcGFyZW50KSksIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDEwMCUgNTAlLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmxhY2spIGNhbGMoMC4yICogMTAwJSksIHRyYW5zcGFyZW50KSwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJsYWNrKSBjYWxjKDAgKiAxMDAlKSwgdHJhbnNwYXJlbnQpKSAwIDEwMCU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgYmFja2dyb3VuZC1zaXplOiA0MHB4IDEwMCUsIDQwcHggMTAwJSwgMTRweCAxMDAlLCAxNHB4IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMTAwJSwgMCAwLCAxMDAlO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGxvY2FsLCBsb2NhbCwgc2Nyb2xsLCBzY3JvbGw7XG4gIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSB7XG4gIG1pbi13aWR0aDogNTAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgbWFyZ2luOiAyNXB4IDA7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgdGFibGUgY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDRweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogN3B4O1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQtYnJpZ2h0KSBjYWxjKDAuMTcgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIHRhYmxlIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kLWJyaWdodCkgY2FsYygwLjA2ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDdweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogYmxhY2s7XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgdGFibGUgdGQge1xuICBwYWRkaW5nOiA1cHggN3B4O1xuICBmb250LXNpemU6IDAuOTVlbTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSBhIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciAubW9iaWxlU2Nyb2xsTWVzc2FnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBwYWRkaW5nOiA1cHggOHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIC5tb2JpbGVTY3JvbGxNZXNzYWdlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxMDAlO1xuICBsZWZ0OiBjYWxjKDVweCArIHZhcigtLXJhZGl1cykpO1xuICB3aWR0aDogMHB4O1xuICBoZWlnaHQ6IDBweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwIDZweCA4cHggNXB4O1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWJyYW5kLWRhcmspIHRyYW5zcGFyZW50O1xufVxuXG5AY29udGFpbmVyIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5ydGUgLnRhYmxlV3JhcHBlciAubW9iaWxlU2Nyb2xsTWVzc2FnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjcwcHgpIHtcbiAgLnJ0ZSAudGFibGVXcmFwcGVyIC5tb2JpbGVTY3JvbGxNZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbkBrZXlmcmFtZXMgdHdpbmtsZTEge1xuICAwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpO1xuICB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyB0d2lua2xlMiB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMmRlZyk7XG4gIH1cbiAgNTUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKDNkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHR3aW5rbGUzIHtcbiAgMCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDJkZWcpO1xuICB9XG4gIDU1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtNGRlZyk7XG4gIH1cbn1cbi5ydGUsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xufVxuLnJ0ZSBoMywgLnJ0ZSBoNCwgLnJ0ZSBoNSwgLnJ0ZSBoNixcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgaDMsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGg0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoNSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgaDYge1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbn1cbi5ydGUgcCwgLnJ0ZSBsaSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcCxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgbGkge1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuLnJ0ZSBoMy5oZWFkaW5nLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoMy5oZWFkaW5nIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDIwcHggMCAxNXB4O1xuICBmb250LXNpemU6IDJlbTtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgY29sb3I6IHZhcigtLXByaW1hcnkpO1xuICBsaW5lLWhlaWdodDogMS4wMjVlbTtcbn1cbi5ydGUgLmhlYWRpbmdMaXN0LFxuLnJ0ZSAuc3ViaGVhZGluZ0xpc3QsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5oZWFkaW5nTGlzdCxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgLnN1YmhlYWRpbmdMaXN0IHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDAuNzVlbSAwIDAuNGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtO1xuICBib3JkZXI6IDVweCBzb2xpZCB2YXIoLS1hY2NlbnQpO1xuICBib3JkZXItd2lkdGg6IDJweCAwIDAgMnB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4IDAgMCAwO1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxMHB4IDAgNXB4IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgY2xlYXI6IGJvdGg7XG59XG4ucnRlIGgzLmhlYWRpbmdMaXN0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoMy5oZWFkaW5nTGlzdCB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG4ucnRlIGg0LnN1YmhlYWRpbmdMaXN0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoNC5zdWJoZWFkaW5nTGlzdCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbG92ZWx5LWxpbGFjKTtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cbi5ydGUgaDQuc3ViaGVhZGluZyxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgaDQuc3ViaGVhZGluZyB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgbWFyZ2luOiAyMHB4IDAgOHB4O1xuICBmb250LXNpemU6IDEuNDVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBmb250LWZhbWlseTogdmFyKC0tc2Vjb25kYXJ5LWZvbnQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCkge1xuICAtLXN0YXI6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5ydGUgcDpoYXMoLmxhcmdlVGV4dCk6OmJlZm9yZSwgLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KTo6YWZ0ZXIsXG4ucnRlIHA6aGFzKC5sYXJnZVRleHQpIHNwYW46OmJlZm9yZSwgLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KSBzcGFuOjphZnRlcixcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCk6OmJlZm9yZSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCk6OmFmdGVyLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBwOmhhcygubGFyZ2VUZXh0KSBzcGFuOjpiZWZvcmUsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHA6aGFzKC5sYXJnZVRleHQpIHNwYW46OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBhc3BlY3QtcmF0aW86IDcwLzY5O1xuICB3aWR0aDogdmFyKC0tc3Rhcik7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KTo6YmVmb3JlLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBwOmhhcygubGFyZ2VUZXh0KTo6YmVmb3JlIHtcbiAgLS1zdGFyOiAxOHB4O1xuICBsZWZ0OiAwJTtcbiAgdG9wOiAxcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvc3Rhci10aGluLnN2Z1wiKTtcbiAgYW5pbWF0aW9uOiB0d2lua2xlMSAyLjRzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICBhbmltYXRpb24tZGVsYXk6IDBzO1xufVxuLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KTo6YWZ0ZXIsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHA6aGFzKC5sYXJnZVRleHQpOjphZnRlciB7XG4gIGxlZnQ6IDI3cHg7XG4gIHRvcDogLTE0cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvc3Rhci10aGljay5zdmdcIik7XG4gIGFuaW1hdGlvbjogdHdpbmtsZTIgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1kZWxheTogLTAuOHM7XG59XG4ucnRlIHA6aGFzKC5sYXJnZVRleHQpIHNwYW46OmJlZm9yZSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCkgc3Bhbjo6YmVmb3JlIHtcbiAgbGVmdDogMTBweDtcbiAgdG9wOiAzM3B4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL3N0YXItdGhpY2suc3ZnXCIpO1xuICBhbmltYXRpb246IHR3aW5rbGUzIDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjZzO1xufVxuQGNvbnRhaW5lciBzbGlkZUNvcHkgKG1heC13aWR0aDogNjM1cHgpIHtcbiAgLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KTo6YmVmb3JlLCAucnRlIHA6aGFzKC5sYXJnZVRleHQpOjphZnRlcixcbiAgLnJ0ZSBwOmhhcygubGFyZ2VUZXh0KSBzcGFuOjpiZWZvcmUsIC5ydGUgcDpoYXMoLmxhcmdlVGV4dCkgc3Bhbjo6YWZ0ZXIsXG4gICNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCk6OmJlZm9yZSxcbiAgI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBwOmhhcygubGFyZ2VUZXh0KTo6YWZ0ZXIsXG4gICNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCkgc3Bhbjo6YmVmb3JlLFxuICAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHA6aGFzKC5sYXJnZVRleHQpIHNwYW46OmFmdGVyIHtcbiAgICB0cmFuc2xhdGU6IC03cHggMDtcbiAgfVxuICAucnRlIHA6aGFzKC5sYXJnZVRleHQpOjpiZWZvcmUsXG4gICNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgcDpoYXMoLmxhcmdlVGV4dCk6OmJlZm9yZSB7XG4gICAgLS1zdGFyOiAxNnB4O1xuICB9XG4gIC5ydGUgcDpoYXMoLmxhcmdlVGV4dCk6OmFmdGVyLFxuICAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHA6aGFzKC5sYXJnZVRleHQpOjphZnRlciB7XG4gICAgbGVmdDogMjBweDtcbiAgfVxuICAucnRlIHA6aGFzKC5sYXJnZVRleHQpIHNwYW46OmJlZm9yZSxcbiAgI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBwOmhhcygubGFyZ2VUZXh0KSBzcGFuOjpiZWZvcmUge1xuICAgIHRvcDogMjhweDtcbiAgfVxufVxuLnJ0ZSAubGFyZ2VUZXh0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGFyZ2VUZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMS40ZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiA1cHggMTBweCAwcHggNDNweDtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XG59XG4ucnRlIC5oaWdobGlnaHQsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQtYnJpZ2h0KSBjYWxjKDAuMiAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG59XG4ucnRlIC5saW5rQnV0dG9uIGEsXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgLmxpbmtCdXR0b24gYSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgYTpoYXMoLmxpbmtCdXR0b24pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuOGVtIDEuM2VtO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ydGUgLmxpbmtCdXR0b24gYSAuaWNvbixcbi5ydGUgYTpoYXMoLmxpbmtCdXR0b24pIC5pY29uLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhIC5pY29uLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBhOmhhcygubGlua0J1dHRvbikgLmljb24ge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLnJ0ZSAubGlua0J1dHRvbiBhOmhvdmVyLFxuICAucnRlIGE6aGFzKC5saW5rQnV0dG9uKTpob3ZlcixcbiAgI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhOmhvdmVyLFxuICAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGE6aGFzKC5saW5rQnV0dG9uKTpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gLnJ0ZSAubGlua0J1dHRvbiBhOmhvdmVyLFxuW2RhdGEtYnJvd3Nlcj1pZV0gLnJ0ZSBhOmhhcygubGlua0J1dHRvbik6aG92ZXIsXG5bZGF0YS1icm93c2VyPWllXSAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5saW5rQnV0dG9uIGE6aG92ZXIsXG5bZGF0YS1icm93c2VyPWllXSAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGE6aGFzKC5saW5rQnV0dG9uKTpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDVweCB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5pZSAucnRlIC5saW5rQnV0dG9uIGE6aG92ZXIsXG4uaWUgLnJ0ZSBhOmhhcygubGlua0J1dHRvbik6aG92ZXIsXG4uaWUgI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhOmhvdmVyLFxuLmllICNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgYTpoYXMoLmxpbmtCdXR0b24pOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLnJ0ZSAubGlua0J1dHRvbiBhLmZvY3VzLXZpc2libGUsXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKS5mb2N1cy12aXNpYmxlLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhLmZvY3VzLXZpc2libGUsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGE6aGFzKC5saW5rQnV0dG9uKS5mb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLnJ0ZSAubGlua0J1dHRvbiBhOmZvY3VzLXZpc2libGUsXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKTpmb2N1cy12aXNpYmxlLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhOmZvY3VzLXZpc2libGUsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGE6aGFzKC5saW5rQnV0dG9uKTpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm94LXNoYWRvdzogMCAwIDAgNXB4IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLnJ0ZSAubGlua0J1dHRvbiBhW2Rpc2FibGVkXSwgLnJ0ZSAubGlua0J1dHRvbiBhW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0sXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKVtkaXNhYmxlZF0sXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKVthcmlhLWRpc2FibGVkPXRydWVdLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhW2Rpc2FibGVkXSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgLmxpbmtCdXR0b24gYVthcmlhLWRpc2FibGVkPXRydWVdLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBhOmhhcygubGlua0J1dHRvbilbZGlzYWJsZWRdLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBhOmhhcygubGlua0J1dHRvbilbYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5ydGUgLmxpbmtCdXR0b24gYSxcbi5ydGUgYTpoYXMoLmxpbmtCdXR0b24pLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGlua0J1dHRvbiBhLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBhOmhhcygubGlua0J1dHRvbikge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG59XG4ucnRlIC5saW5rQnV0dG9uIGEgLmljb24sXG4ucnRlIGE6aGFzKC5saW5rQnV0dG9uKSAuaWNvbixcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgLmxpbmtCdXR0b24gYSAuaWNvbixcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgYTpoYXMoLmxpbmtCdXR0b24pIC5pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5ydGUgdWwsIC5ydGUgb2wsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHVsLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xufVxuLnJ0ZSB1bCxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgdWwge1xuICBwYWRkaW5nOiAwO1xufVxuLnJ0ZSB1bCA+IGxpLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCB1bCA+IGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5ydGUgdWwgPiBsaTo6bWFya2VyLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCB1bCA+IGxpOjptYXJrZXIge1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgY29sb3I6IHZhcigtLWFjY2VudCk7XG59XG4ucnRlIG9sLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBvbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogY291bnRlcjtcbn1cbi5ydGUgb2wgPiBsaSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgb2wgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IGNvdW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ucnRlIG9sID4gbGk6YmVmb3JlLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBvbCA+IGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGNvdW50ZXIoY291bnRlcikgXCIuIFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiBjYWxjKDEwMCUgKyA4cHgpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnJ0ZSBhLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBhIHtcbiAgY29sb3I6IHZhcigtLWxpbmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saW5rLWNvbnRyYXN0KTtcbn1cblxuLmNhbGxvdXRTdWJ0bGUge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAzNXB4IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0LWNvbnRyYXN0KTtcbiAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDcwcHgpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY2FsbG91dFN1YnRsZSAqIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG59XG4uY2FsbG91dFN1YnRsZSAuYWNjZW50SWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogM3B4O1xuICB0b3A6IDBweDtcbiAgZm9udC1zaXplOiA0ZW07XG4gIGNvbG9yOiB2YXIoLS1sb3ZlbHktbGlsYWMpO1xuICB6LWluZGV4OiA1O1xufVxuLmNhbGxvdXRTdWJ0bGUgLnJ0ZSB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coOHB4IDVweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcbiAgY29sb3I6IHZhcigtLXdhbGRvcy1kZW4pO1xuICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG4gIHBhZGRpbmc6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMjVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbG92ZWx5LWxpbGFjKTtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgbWluLWhlaWdodDogNDVweDtcbn1cblxuLmNhbGxvdXRCb2xkIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1hcmdpbjogMzVweCBhdXRvO1xuICBwYWRkaW5nOiAyMHB4IDM1cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdhbGRvcy1kZW4pO1xuICBjb2xvcjogdmFyKC0td2FsZG9zLWRlbi1jb250cmFzdCk7XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA1MHB4KTtcbn1cbi5jYWxsb3V0Qm9sZCAqIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uY2FsbG91dEJvbGQgLmFjY2VudEljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG4gIGNvbG9yOiB2YXIoLS1iZWUtYmFsbSk7XG4gIHotaW5kZXg6IDU7XG59XG4uY2FsbG91dEJvbGQgLmFjY2VudEljb24udG9wIHtcbiAgdG9wOiAtMTBweDtcbiAgbGVmdDogLTEwcHg7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICByb3RhdGU6IDcwZGVnO1xufVxuLmNhbGxvdXRCb2xkIC5hY2NlbnRJY29uLmJvdHRvbSB7XG4gIGJvdHRvbTogLTEwcHg7XG4gIHJpZ2h0OiAtOHB4O1xuICBzY2FsZTogLTE7XG4gIGZvbnQtc2l6ZTogMi41ZW07XG59XG4uY2FsbG91dEJvbGQgLnJ0ZSB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcbn1cbi5jYWxsb3V0Qm9sZCBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2FsZG9zLWRlbik7XG4gIGNvbG9yOiB2YXIoLS13YWxkb3MtZGVuLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLXdhbGRvcy1kZW4tY29udHJhc3QpO1xufVxuQGNvbnRhaW5lciBzbGlkZUNvcHkgKG1heC13aWR0aDogNjM1cHgpIHtcbiAgLmNhbGxvdXRCb2xkIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xuICAgIHBhZGRpbmc6IDE1cHggMjVweCAxOHB4O1xuICB9XG4gIC5jYWxsb3V0Qm9sZCAuYWNjZW50SWNvbi50b3Age1xuICAgIHRvcDogLTlweDtcbiAgICBsZWZ0OiAtOHB4O1xuICAgIGZvbnQtc2l6ZTogMS44ZW07XG4gICAgcm90YXRlOiA4MGRlZztcbiAgfVxuICAuY2FsbG91dEJvbGQgLmFjY2VudEljb24uYm90dG9tIHtcbiAgICBmb250LXNpemU6IDIuMmVtO1xuICB9XG4gIC5jYWxsb3V0U3VidGxlIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICB9XG4gIC5jYWxsb3V0U3VidGxlIC5ydGUge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgfVxuICAuY2FsbG91dFN1YnRsZSAuYWNjZW50SWNvbiB7XG4gICAgZm9udC1zaXplOiAzZW07XG4gIH1cbiAgLnJ0ZSAubGFyZ2VUZXh0LCAjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5sYXJnZVRleHQge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICBmb250LXNpemU6IDEuNGVtO1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICB9XG59XG5AY29udGFpbmVyIHNsaWRlQ29weSAobWF4LXdpZHRoOiA0MjBweCkge1xuICAuY2FsbG91dFN1YnRsZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIC5mb3JtQXJlYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSAuZm9ybUFyZWEgLnJ0ZSB7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2UgLmZvcm1BcmVhIC5pY29uIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtZ3JvdzogMDtcbiAgd2lkdGg6IDc1cHg7XG4gIGhlaWdodDogNzVweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogM2VtO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2NzBweCkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2Uge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIC5mb3JtQXJlYSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSAuZm9ybUFyZWEgLmljb24ge1xuICAgIHdpZHRoOiA1NXB4O1xuICAgIGhlaWdodDogNTVweDtcbiAgICBmb250LXNpemU6IDIuMjVlbTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cbi5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIC50aXRsZUFyZWEge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLm1lbWJlcnNoaXBQYWdlIC5lcnJvclBhZ2UgLmljb24ge1xuICBmb250LXNpemU6IDVlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIC5ydGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtZGFyaykgbWF4KGwgLSBsICogMC4xNSwgMCkgYyBoKTtcbiAgcGFkZGluZzogNTBweCAyMHB4IDQwcHggMjBweDtcbiAgbWFyZ2luLXRvcDogLTYwcHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbn1cbi5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIC5ydGUgaDMuaGVhZGluZyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogODI1cHgpIHtcbiAgLm1lbWJlcnNoaXBQYWdlIC5lcnJvclBhZ2UgLmljb24ge1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIGJvcmRlci13aWR0aDogMnB4O1xuICB9XG59XG5AbGF5ZXIgYmFzZSB7XG4gIGRldGFpbHMge1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICBkZXRhaWxzID4gc3VtbWFyeTo6bWFya2VyLFxuICBkZXRhaWxzID4gc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYWNjb3JkaW9uTW9kdWxlIC5hY2NvcmRpb25UaXRsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbiAgLmFjY29yZGlvbk1vZHVsZVtkYXRhLWludGVyYWN0aW9uLW1hbmRhdG9yeT10cnVlXTpub3QoLmludGVyYWN0ZWRXaXRoKSAuaWNvbi1tYW5kYXRvcnkge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFjY29yZGlvbk1vZHVsZVtkYXRhLWludGVyYWN0aW9uLW1hbmRhdG9yeT10cnVlXTpub3QoLmludGVyYWN0ZWRXaXRoKSAuaW50ZXJhY3Rpb25Ob3RpZmljYXRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGNsaXAtcGF0aDogcmVjdCgwIDAgMCAwKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICB9XG4gIC5hY2NvcmRpb25Nb2R1bGUgKyAucnRlIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICB9XG59XG51bDpoYXMoLmFjY29yZGlvbk1vZHVsZSkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG51bDpoYXMoLmFjY29yZGlvbk1vZHVsZSkgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxudWw6aGFzKC5hY2NvcmRpb25Nb2R1bGUpICsgLnJ0ZSB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59XG5cbi5hY2NvcmRpb25TZXQge1xuICAtLXJhZGl1czogMTVweDtcbiAgLS1ib3JkZXJDOiB2YXIoLS1zb2Z0LWxhdmVuZGFyKTtcbn1cbi5hY2NvcmRpb25TZXQgLmFjY29yZGlvbkNvbnRhaW5lcjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG59XG4uYWNjb3JkaW9uU2V0IC5hY2NvcmRpb25Db250YWluZXI6Zmlyc3QtY2hpbGQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDAgMDtcbn1cbi5hY2NvcmRpb25TZXQgLmFjY29yZGlvbkNvbnRhaW5lcjpsYXN0LWNoaWxkIC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZSB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbn1cbi5hY2NvcmRpb25TZXQgLmFjY29yZGlvbkNvbnRhaW5lcjpsYXN0LWNoaWxkIC5hY2NvcmRpb25XcmFwcGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xufVxuLmFjY29yZGlvblNldCAuYWNjb3JkaW9uQ29udGFpbmVyOm9ubHktY2hpbGQge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xufVxuLmFjY29yZGlvblNldCAuYWNjb3JkaW9uQ29udGFpbmVyOm9ubHktY2hpbGQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbn1cbi5hY2NvcmRpb25TZXQgLmFjY29yZGlvbkNvbnRhaW5lcjpvbmx5LWNoaWxkIC5hY2NvcmRpb25XcmFwcGVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uOmZvY3VzLXdpdGhpbiB7XG4gIHotaW5kZXg6IDU7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uW29wZW5dIC5hY2NvcmRpb25UaXRsZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDVweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcbn1cbi5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb25bb3Blbl0gLmFjY29yZGlvblRpdGxlIC5pY29uLWFycm93LWRvd24ge1xuICByb3RhdGU6IDE4MGRlZztcbn1cbi5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb25bZGF0YS1pbnRlcmFjdGlvbi1tYW5kYXRvcnk9dHJ1ZV06bm90KC5pbnRlcmFjdGVkV2l0aCkgLmljb24tbWFuZGF0b3J5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNXB4O1xuICB0b3A6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHBhZGRpbmc6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAxcHggMXB4IDhweCAwcHggY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJsYWNrKSBjYWxjKDAuMyAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUge1xuICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiA2NXB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA3cHggMTVweCA3cHggNDBweDtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYm9yZGVyQyk7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tc25vdy1kcmlmdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUgLmljb24tYXJyb3ctZG93biB7XG4gIGNvbG9yOiB2YXIoLS1ncmFwZS1qdWljZSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDEycHg7XG4gIHRyYW5zbGF0ZTogMCAtNTAlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IDAuMnMgcm90YXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZSAuaWNvbi1hcnJvdy1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiTVwiO1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUgLnRleHQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBsaW5lLWhlaWdodDogMS4zNWVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2xhdGUgMC4ycztcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0td2ViZXItbWlkbmlnaHQtY29udHJhc3QpO1xuICAgIGNvbG9yOiB2YXIoLS1zbm93LWRyaWZ0KTtcbiAgfVxuICAuYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpob3ZlciAuaWNvbi1hcnJvdy1kb3duIHtcbiAgICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbnRyYXN0LWNvbnRyYXN0KTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZWJlci1taWRuaWdodCk7XG4gIGNvbG9yOiB2YXIoLS13ZWJlci1taWRuaWdodC1jb250cmFzdCk7XG4gIGNvbG9yOiB2YXIoLS1zbm93LWRyaWZ0KTtcbn1cbltkYXRhLWJyb3dzZXI9aWVdIC5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlOmhvdmVyIC5pY29uLWFycm93LWRvd24ge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbnRyYXN0LWNvbnRyYXN0KTtcbn1cbi5pZSAuYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0LWNvbnRyYXN0KTtcbiAgY29sb3I6IHZhcigtLXNub3ctZHJpZnQpO1xufVxuLmllIC5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlOmhvdmVyIC5pY29uLWFycm93LWRvd24ge1xuICBjb2xvcjogdmFyKC0tc2Vjb25kYXJ5LWNvbnRyYXN0LWNvbnRyYXN0KTtcbn1cbi5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlLmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13ZWJlci1taWRuaWdodCk7XG4gIGNvbG9yOiB2YXIoLS13ZWJlci1taWRuaWdodC1jb250cmFzdCk7XG4gIGNvbG9yOiB2YXIoLS1zbm93LWRyaWZ0KTtcbn1cbi5hY2NvcmRpb25TZXQgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlLmZvY3VzLXZpc2libGUgLmljb24tYXJyb3ctZG93biB7XG4gIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnktY29udHJhc3QtY29udHJhc3QpO1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcbiAgY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0LWNvbnRyYXN0KTtcbiAgY29sb3I6IHZhcigtLXNub3ctZHJpZnQpO1xufVxuLmFjY29yZGlvblNldCAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGU6Zm9jdXMtdmlzaWJsZSAuaWNvbi1hcnJvdy1kb3duIHtcbiAgY29sb3I6IHZhcigtLXNlY29uZGFyeS1jb250cmFzdC1jb250cmFzdCk7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25XcmFwcGVyIHtcbiAgcGFkZGluZzogMjVweDtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYm9yZGVyQyk7XG4gIGJvcmRlci10b3Atd2lkdGg6IDBweDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMHB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25XcmFwcGVyIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG59XG4uYWNjb3JkaW9uU2V0IC5wcmltYXJ5QWNjb3JkaW9uICsgLnJ0ZSB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59IiwiQHVzZSBcInNhc3M6bWV0YVwiO1xyXG5AdXNlIFwic2FzczptYXRoXCI7XHJcbkB1c2UgXCJzYXNzOnN0cmluZ1wiO1xyXG5AdXNlIFwic2Fzczpjb2xvclwiO1xyXG5AdXNlIFwic2FzczpsaXN0XCI7XHJcbkB1c2UgXCJzYXNzOm1hcFwiO1xyXG5cclxuLyotLS1URVhUIEFORCBGT05ULS0tKi9cclxuXHJcbi8vLyBDcmVhdGUgYSB0ZXh0LXNoYWRvdyB3aXRoIGNsZWFyZXIgcHJvcGVydGllcy5cclxuLy8vIEBwYXJhbSB7Kn0gJHggWzBweF1cclxuLy8vIEBwYXJhbSB7Kn0gJHkgWzFweF1cclxuLy8vIEBwYXJhbSB7Kn0gJGJsdXIgWzBweF1cclxuLy8vIEBwYXJhbSB7Kn0gJGNvbG9yIFtyZ2JhKDAsIDAsIDAsIDAuNzUpXVxyXG5AbWl4aW4gdGV4dFNoYWRvdygkeDogMHB4LCAkeTogMXB4LCAkYmx1cjogMHB4LCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43NSkpIHtcclxuICB0ZXh0LXNoYWRvdzogJHggJHkgJGJsdXIgJGNvbG9yO1xyXG59XHJcblxyXG4vLy8gU2V0IGljb24gZm9udCBhbmQgbm9ybWFsaXplIGFsbCBwcm9wZXJ0aWVzLlxyXG4vLy8gQHBhcmFtIHsqfSAkZm9udCBbJGljb25Gb250XVxyXG5AbWl4aW4gaWNvbkZvbnQoJGZvbnQ6ICRpY29uRm9udCkge1xyXG4gIGZvbnQtZmFtaWx5OiAkZm9udCAhaW1wb3J0YW50O1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcclxuICBmb250LXZhcmlhbnQ6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgbGluZS1oZWlnaHQ6IDFlbTtcclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxufVxyXG5cclxuLyotLS1CQUNLR1JPVU5ELS0tKi9cclxuXHJcbi8vLyBTZXRzIGJhY2tncm91bmQgdG8gY292ZXIgd2l0aCA1MCUgNTAlIHBvc2l0aW9uLlxyXG5AbWl4aW4gYmFja2dyb3VuZENvdmVyIHtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDUwJTtcclxufVxyXG5cclxuLy8vIFNldHMgaGVpZ2h0IGFuZCB3aWR0aCB0byAxMDAlLlxyXG5AbWl4aW4gZmlsbFNwYWNlIHtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8vLyBDcmVhdGUgYSBib3ggc2hhZG93IHdpdGggY2xlYXJlciBwcm9wZXJ0aWVzLlxyXG4vLy8gQHBhcmFtIHsqfSAkeCBbMHB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkeSBbMHB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkYmx1ciBbMnB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkc3ByZWFkIFsycHhdXHJcbi8vLyBAcGFyYW0geyp9ICRjb2xvciBbcmdiYSgwLCAwLCAwLCAwLjIpXVxyXG5AbWl4aW4gYm94U2hhZG93KCR4OiAwcHgsICR5OiAwcHgsICRibHVyOiAycHgsICRzcHJlYWQ6IDJweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMikpIHtcclxuICBib3gtc2hhZG93OiAkeCAkeSAkYmx1ciAkc3ByZWFkICRjb2xvcjtcclxufVxyXG5cclxuLy8vIENyZWF0ZSBhIGJveCBzaGFkb3cgd2l0aCBjbGVhcmVyIHByb3BlcnRpZXMuXHJcbi8vLyBAcGFyYW0geyp9ICR4IFswcHhdXHJcbi8vLyBAcGFyYW0geyp9ICR5IFsxcHhdXHJcbi8vLyBAcGFyYW0geyp9ICRibHVyIFszcHhdXHJcbi8vLyBAcGFyYW0geyp9ICRzcHJlYWQgWzBweF1cclxuLy8vIEBwYXJhbSB7Kn0gJGNvbG9yIFtyZ2JhKDAsIDAsIDAsIDAuMildXHJcbkBtaXhpbiBzaGFkb3ctaW5zZXQoJHg6IDBweCwgJHk6IDFweCwgJGJsdXI6IDNweCwgJHNwcmVhZDogMHB4LCAkY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSkge1xyXG4gIGJveC1zaGFkb3c6IGluc2V0ICR4ICR5ICRibHVyICRzcHJlYWQgJGNvbG9yO1xyXG59XHJcblxyXG4vKi0tLVBPU0lUSU9OSU5HLS0tKi9cclxuXHJcbi8vLyBTZXRzIGVsZW1lbnQgdG8gcG9zaXRpb24gYWJzb2x1dGUgdG8gd2l0aCB0b3A6IDAgYW5kIGxlZnQ6IDA7XHJcbkBtaXhpbiBhYnNvbHV0ZSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogMDtcclxuICBsZWZ0OiAwO1xyXG59XHJcblxyXG4vLy8gU2V0cyBlbGVtZW50IHRvIHBvc2l0aW9uIGZpeGVkIHRvIHdpdGggdG9wOiAwIGFuZCBsZWZ0OiAwO1xyXG5AbWl4aW4gZml4ZWQge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuLy8vIFJlc2V0cyBwb3NpdGlvbiBwcm9wZXJ0aWVzICh0b3AsIGJvdHRvbSwgbGVmdCwgcmlnaHQpLlxyXG4vLy8gQHBhcmFtIHsqfSAkcG9zIFtyZWxhdGl2ZV0gLSBTZXRzIHRoZSBwb3NpdGlvbiBwcm9wZXJ0eS5cclxuQG1peGluIHJlc2V0UG9zKCRwb3M6IHJlbGF0aXZlKSB7XHJcbiAgcG9zaXRpb246ICRwb3M7XHJcbiAgdG9wOiBhdXRvO1xyXG4gIGJvdHRvbTogYXV0bztcclxuICBsZWZ0OiBhdXRvO1xyXG4gIHJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIGFuIGVsZW1lbnQgdXNpbmcgcG9zaXRpb24gYWJzb2x1dGUgYW5kIHRyYW5zZm9ybXMuXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHBlcmNlbnQgWzUwJV0gLSBQcm9wZXJ0eSB0b3AgcGVyY2VudGFnZS5cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdHJhbnMgWzUwJV0gLSBQcm9wZXJ0eSB0cmFuc2xhdGVZIHBlcmNlbnRhZ2UuXHJcbkBtaXhpbiB2ZXJ0Q2VudGVyKCRwZXJjZW50OiA1MCUsICR0cmFuczogNTAlKSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogJHBlcmNlbnQ7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kdHJhbnMpO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kdHJhbnMpO1xyXG59XHJcblxyXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIGFuIGVsZW1lbnQgdXNpbmcgcG9zaXRpb24gYWJzb2x1dGUgYW5kIHRyYW5zZm9ybXMuXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHBlcmNlbnQgWzUwJV0gLSBQcm9wZXJ0eSBsZWZ0IHBlcmNlbnRhZ2UuXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHRyYW5zIFs1MCVdIC0gUHJvcGVydHkgdHJhbnNsYXRlWCBwZXJjZW50YWdlLlxyXG5AbWl4aW4gaG9yekNlbnRlcigkcGVyY2VudDogNTAlLCAkdHJhbnM6IDUwJSkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBsZWZ0OiAkcGVyY2VudDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSR0cmFucyk7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSR0cmFucyk7XHJcbn1cclxuXHJcbkBtaXhpbiB2ZXJ0SG9yekNlbnRlciB7XHJcbiAgQGluY2x1ZGUgdmVydENlbnRlcjtcclxuICBAaW5jbHVkZSBob3J6Q2VudGVyO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG4vLy8gRG9lcyB3aGF0IGl0IHNheXMgb24gdGhlIHRpbi4gU2V0cyBtYXJnaW4gYW5kIHBhZGRpbmcgdG8gMC5cclxuQG1peGluIHplcm9NYXJnUGFkIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLyotLS1DT05URU5ULS0tKi9cclxuXHJcbi8vLyBVc2VkIGluc2lkZSA6OmJlZm9yZSBhbmQgOjphZnRlciBlbGVtZW50cy4gU2V0cyB3aWR0aCBhbmQgaGVpZ2h0IHRvIDEwMCUuXHJcbkBtaXhpbiBwc2V1ZG9Db250ZW50IHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLy8vIENyZWF0ZXMgYW4gOjphZnRlciBlbGVtZW50IHRvIHByZXZlbnQgZmxvYXQgb3ZlcmxhcC5cclxuQG1peGluIGNsZWFyZml4IHtcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGhlaWdodDogMDtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5cclxuLyotLS1MSVNUUy0tLSovXHJcblxyXG4vLy8gUmVtb3ZlIGxpc3Qgc3R5bGluZywgbWFyZ2luLCBhbmQgcGFkZGluZy5cclxuQG1peGluIHJlZm9ybWF0TGlzdCB7XHJcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gIEBpbmNsdWRlIHplcm9NYXJnUGFkO1xyXG5cclxuICBsaSB7XHJcbiAgICBAaW5jbHVkZSB6ZXJvTWFyZ1BhZDtcclxuICB9XHJcbn1cclxuXHJcbi8qLS0tQk9SREVSIEFSUk9XUy0tLSovXHJcbi8vLyBEcmF3IGFuIGFycm93IHVzaW5nIGNzcyBib3JkZXJzXHJcbi8vLyBAcGFyYW0ge3ZhcmlhYmxlfSAkZGlyIFt0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQsIHRvcFJpZ2h0LCBib3R0b21SaWdodCwgdG9wTGVmdCwgYm90dG9tTGVmdF1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbJGxpZ2h0XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRoZWlnaHQgWzIwcHhdXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHdpZHRoIFszMHB4XVxyXG5AbWl4aW4gY3NzQXJyb3coJGRpciwgJGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSwgJGhlaWdodDogMjBweCwgJHdpZHRoOiAyMHB4KSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cclxuICBAaWYgJGRpciA9PXRvcCB7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgY2FsYygjeyR3aWR0aH0gLyAyKSAkaGVpZ2h0IGNhbGMoI3skd2lkdGh9IC8gMik7XHJcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyID09cmlnaHQge1xyXG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKCN7JGhlaWdodH0gLyAyKSAwIGNhbGMoI3skaGVpZ2h0fSAvIDIpICR3aWR0aDtcclxuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyID09Ym90dG9tIHtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCBjYWxjKCN7JHdpZHRofSAvIDIpIDAgY2FsYygjeyR3aWR0aH0gLyAyKTtcclxuICAgIGJvcmRlci10b3AtY29sb3I6ICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXIgPT1sZWZ0IHtcclxuICAgIGJvcmRlci13aWR0aDogY2FsYygjeyRoZWlnaHR9IC8gMikgJHdpZHRoIGNhbGMoI3skaGVpZ2h0fSAvIDIpIDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXIgPT10b3BSaWdodCB7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgJGhlaWdodCAkd2lkdGggMDtcclxuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2UgaWYgJGRpciA9PWJvdHRvbVJpZ2h0IHtcclxuICAgIGJvcmRlci13aWR0aDogMCAwICRoZWlnaHQgJHdpZHRoO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2UgaWYgJGRpciA9PWJvdHRvbUxlZnQge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0IDAgMCAkd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2UgaWYgJGRpciA9PXRvcExlZnQge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAkaGVpZ2h0ICR3aWR0aCAwIDA7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgXCJVbmtub3duIGRpcmVjdGlvbiAjeyRkaXJ9LlwiO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIERyYXcgYSBkb3duIGFycm93IHVzaW5nIGNzcyBib3JkZXJzXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemUgWzhweF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkc2l6ZUxSIFskc2l6ZV1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbJGxpZ2h0XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0b3AgW2F1dG9dXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJGxlZnQgW2F1dG9dXHJcbkBtaXhpbiByaWdodEFycm93KCRzaXplOiA4cHgsICRzaXplVEI6ICRzaXplLCAkY29sb3I6ICRsaWdodCwgJHRvcDogYXV0bywgJHJpZ2h0OiBhdXRvKSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLXRvcDogJHNpemVUQiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItYm90dG9tOiAkc2l6ZVRCIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1sZWZ0OiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6ICR0b3A7XHJcbiAgcmlnaHQ6ICRyaWdodDtcclxufVxyXG5cclxuLy8vIERyYXcgYSBkb3duIGFycm93IHVzaW5nIGNzcyBib3JkZXJzXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemUgWzhweF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkc2l6ZUxSIFskc2l6ZV1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbJGxpZ2h0XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0b3AgW2F1dG9dXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJGxlZnQgW2F1dG9dXHJcbkBtaXhpbiBsZWZ0QXJyb3coJHNpemU6IDhweCwgJHNpemVUQjogJHNpemUsICRjb2xvcjogJGxpZ2h0LCAkdG9wOiBhdXRvLCAkbGVmdDogYXV0bykge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci10b3A6ICRzaXplVEIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogJHNpemVUQiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItbGVmdDogMDtcclxuICBib3JkZXItcmlnaHQ6ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAkdG9wO1xyXG4gIGxlZnQ6ICRsZWZ0O1xyXG59XHJcblxyXG4vLy8gRHJhdyBhIGRvd24gYXJyb3cgdXNpbmcgY3NzIGJvcmRlcnNcclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkc2l6ZSBbOHB4XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRzaXplTFIgWyRzaXplXVxyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJGNvbG9yIFskbGlnaHRdXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHRvcCBbYXV0b11cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbGVmdCBbYXV0b11cclxuQG1peGluIHRvcEFycm93KCRzaXplOiA4cHgsICRzaXplTFI6ICRzaXplLCAkY29sb3I6ICRsaWdodCwgJHRvcDogYXV0bywgJGxlZnQ6IGF1dG8pIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItbGVmdDogJHNpemVMUiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItcmlnaHQ6ICRzaXplTFIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogJHNpemUgc29saWQgJGNvbG9yO1xyXG4gIGJvcmRlci10b3A6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogJHRvcDtcclxuICBsZWZ0OiAkbGVmdDtcclxufVxyXG5cclxuLy8vIERyYXcgYSBkb3duIGFycm93IHVzaW5nIGNzcyBib3JkZXJzXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemUgWzhweF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkc2l6ZUxSIFskc2l6ZV1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbJGxpZ2h0XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0b3AgW2F1dG9dXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJGxlZnQgW2F1dG9dXHJcbkBtaXhpbiBib3R0b21BcnJvdygkc2l6ZTogOHB4LCAkc2l6ZUxSOiAkc2l6ZSwgJGNvbG9yOiAkbGlnaHQsICR0b3A6IGF1dG8sICRsZWZ0OiBhdXRvKSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLWxlZnQ6ICRzaXplTFIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkc2l6ZUxSIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci10b3A6ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICBib3JkZXItYm90dG9tOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6ICR0b3A7XHJcbiAgbGVmdDogJGxlZnQ7XHJcbn1cclxuXHJcbi8vLyBBIGtpbmQgb2YgaGFja3kgbWl4aW4gdG8gZm9yY2UgdGhlIGJyb3dzZXIgdG8gdXNlIGEgR1BVIHRvIHJlbmRlciB0aGUgZWxlbWVudC5cclxuQG1peGluIHVzZUdQVSB7XHJcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogMTAwMHB4O1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgcGVyc3BlY3RpdmU6IDEwMDBweDtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxufVxyXG5cclxuLy8vIFZpZGVvIGJhY2tncm91bmQgc2l6ZS5cclxuLy8vIEBwYXJhbSB7Kn0gJGJnSW1nIC0gVGhlIGJhY2tncm91bmQgaW1hZ2UuIEluIHRoZSBmb3JtIG9mIHVybCgvaW1hZ2UvbXktaW1hZ2UuanBnKS5cclxuQG1peGluIHZpZGVvQkcoJGJnSW1nKSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgQGluY2x1ZGUgYWJzb2x1dGU7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgdmlkZW8ge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICBib3R0b206IDA7XHJcbiAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICB6LWluZGV4OiAtMTAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogJGJnSW1nO1xyXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZENvdmVyO1xyXG4gIH1cclxufVxyXG5cclxuLyoqRm9ybXMqKi9cclxuXHJcbi8vLyBJbnB1dCBQbGFjZWhvbGRlciBzdHlsaW5nXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgW2xpZ2h0ZW4oJGJhc2ljLCA2MCUpXSAtIFRoZSBjb2xvciBvZiB0aGUgcGxhY2Vob2xkZXIgdGV4dC5cclxuLy8vIEBwYXJhbSB7Kn0gJHN0eWxlIFtpdGFsaWNdIC0gRm9udCBzdHlsZS5cclxuLy8vIEBwYXJhbSB7Kn0gJGZvbnQgWyRiYXNpY0ZvbnRdIC0gRm9udCBmYW1pbHkuXHJcbi8vLyBAcGFyYW0geyp9ICRzaXplIFsxZW1dIC0gRm9udCBzaXplLlxyXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpLCAkc3R5bGU6IGl0YWxpYywgJGZvbnQ6ICRiYXNpY0ZvbnQsICRzaXplOiAxZW0pIHtcclxuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgZm9udDoge1xyXG4gICAgICBzdHlsZTogJHN0eWxlO1xyXG4gICAgICBmYW1pbHk6ICRmb250O1xyXG4gICAgICBzaXplOiAkc2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAvKiBGaXJlZm94IDE4LSAqL1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICBmb250OiB7XHJcbiAgICAgIHN0eWxlOiAkc3R5bGU7XHJcbiAgICAgIGZhbWlseTogJGZvbnQ7XHJcbiAgICAgIHNpemU6ICRzaXplO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICAvKiBGaXJlZm94IDE5KyAqL1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICBmb250OiB7XHJcbiAgICAgIHN0eWxlOiAkc3R5bGU7XHJcbiAgICAgIGZhbWlseTogJGZvbnQ7XHJcbiAgICAgIHNpemU6ICRzaXplO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICRjb2xvcjtcclxuXHJcbiAgICBmb250OiB7XHJcbiAgICAgIHN0eWxlOiAkc3R5bGU7XHJcbiAgICAgIGZhbWlseTogJGZvbnQ7XHJcbiAgICAgIHNpemU6ICRzaXplO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIEJyZWFrcyBsb25nIHdvcmRzIGFuZCB1cmxzXHJcbi8vLyBAYXV0aG9yIEthcmwgUm9zc1xyXG5AbWl4aW4gd29yZEJyZWFrIHtcclxuICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcclxuXHJcbiAgLyogQWRkcyBhIGh5cGhlbiB3aGVyZSB0aGUgd29yZCBicmVha3MsIGlmIHN1cHBvcnRlZCAoTm8gQmxpbmspICovXHJcbiAgLW1zLWh5cGhlbnM6IGF1dG87XHJcbiAgLW1vei1oeXBoZW5zOiBhdXRvO1xyXG4gIC13ZWJraXQtaHlwaGVuczogYXV0bztcclxuICBoeXBoZW5zOiBhdXRvO1xyXG59XHJcblxyXG4vLy8gSGlkZXMgYW4gZWxlbWVudCBidXQgc3RpbGwgYWxsb3dzIGl0IHRvIGJlIHJlYWQgYnkgYSBzY3JlZW4gcmVhZGVyLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG5AbWl4aW4gc2NyZWVuUmVhZGVyKCkge1xyXG4gIGJvcmRlcjogMDtcclxuICBjbGlwLXBhdGg6IHJlY3QoMCAwIDAgMCk7XHJcbiAgaGVpZ2h0OiAxcHg7XHJcbiAgbWFyZ2luOiAtMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgd2lkdGg6IDFweDtcclxufVxyXG5cclxuLy8gRml4ZXMgbGVnZW5kcyBvbiBvbGRlciBicm93c2VycyBhbmQgc21hbGxlciBicm93c2Vycy5cclxuQG1peGluIGxlZ2VuZEZpeCB7XHJcbiAgLy9UaGlzIGZpeGVzIGZvciByZXNwb25zaXZlXHJcbiAgZGlzcGxheTogdGFibGU7XHJcbiAgLyogRW5hYmxlIGxpbmUtd3JhcHBpbmcgaW4gSUU4KyAqL1xyXG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgLyogRW5hYmxlIGxpbmUtd3JhcHBpbmcgaW4gb2xkIHZlcnNpb25zIG9mIHNvbWUgb3RoZXIgYnJvd3NlcnMgKi9cclxuICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLy8vIFN0eWxlIHNjcm9sbGJhcnMgd2l0aCBhbGwgYnJvd3NlciB2ZW5kb3IgcHJvcGVydGllcy5cclxuLy8vIEBhdXRob3IgS291cnRuZXkgU3RyaWNrbGFuZFxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR3aWR0aCBbNXB4XSAtIFRoZSB3aWR0aCBvZiB0aGUgc2Nyb2xsYmFyLlxyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJGNvbG9yIFsjNDQ0NDQ0XSAtIFRoZSBjb2xvciBvZiB0aGUgc2Nyb2xsIGtub2IuXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkYmdDb2xvciBbI2Y1ZjVmNV0gLSBUaGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgc2Nyb2xsYmFyLlxyXG4vLy8gQHBhcmFtIHtib29sZWFufSAkc2hhZG93IFt0cnVlXSAtIFdoZXRoZXIgdG8gZHJhdyBhIGJveCBzaGFkb3cgb24gdGhlIHNjcm9sbGJhci5cclxuQG1peGluIHNjcm9sbGJhcigkd2lkdGg6IDVweCwgJGNvbG9yOiAjNDQ0NDQ0LCAkYmdDb2xvcjogI2Y1ZjVmNSwgJHNoYWRvdzogdHJ1ZSkge1xyXG4gIC8vIE5vbnN0YW5kYXJkIHdlYmtpdCBwcm9wZXJ0aWVzLCB3b3JrcyBvbiBDaHJvbWUsIE1vZGVybiBFZGdlLCBhbmQgU2FmYXJpXHJcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgQGlmICRzaGFkb3cge1xyXG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMCA2cHggcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG4gICAgfVxyXG5cclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xyXG4gIH1cclxuXHJcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgd2lkdGg6ICR3aWR0aDtcclxuICAgIGhlaWdodDogJHdpZHRoO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnQ29sb3I7XHJcbiAgfVxyXG5cclxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgfVxyXG5cclxuICAvLyBUaGUgcHJvcGVyLCBzdGFuZGFyZCB3YXkgdG8gc3R5bGUgc2Nyb2xsYmFycy4gU3VwcG9ydGVkIGluIEZpcmVmb3gsIEVkZ2UgMTIxKywgYW5kIENocm9tZSAxMjErXHJcbiAgc2Nyb2xsYmFyLWNvbG9yOiAkY29sb3IgJGJnQ29sb3I7XHJcblxyXG4gIEBpZiAoJHdpZHRoIDwgMTVweCkge1xyXG4gICAgc2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIFNob3J0aGFuZCBmb3IgYSBmbGV4Ym94IGNvbnRhaW5lciB0aGF0IGp1c3RpZmVzIGNvbnRlbnQgYXQgdGhlIHN0YXJ0LlxyXG4vLy8gQGF1dGhvciBLb3VydG5leSBTdHJpY2tsYW5kXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpciBbcm93XSAtIFRoZSBmbGV4LWRpcmVjdGlvbiBvZiB0aGUgZWxlbWVudC5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkanVzdGlmeSBbc3BhY2UtYmV0d2Vlbl0gLSBUaGUganVzdGlmeS1jb250ZW50IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LlxyXG5AbWl4aW4gZmxleEp1c3RpZnkoJGRpcjogcm93LCAkanVzdGlmeTogc3BhY2UtYmV0d2Vlbikge1xyXG4gIC8vYWx0ZXJuYXRlIHdvdWxkIGJlIHNwYWNlLWFyb3VuZFxyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiAkanVzdGlmeTtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyO1xyXG59XHJcblxyXG4vLy8gU2hvcnRoYW5kIGZvciBhIGZsZXhib3ggY29udGFpbmVyIHRoYXQganVzdGlmZXMgY29udGVudCBpbiBjZW50ZXIuXHJcbi8vLyBAYXV0aG9yIEtvdXJ0bmV5IFN0cmlja2xhbmRcclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkZGlyIFtyb3ddIC0gVGhlIGZsZXgtZGlyZWN0aW9uIG9mIHRoZSBlbGVtZW50LlxyXG5AbWl4aW4gZmxleENlbnRlcigkZGlyOiByb3cpIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZmxleC1kaXJlY3Rpb246ICRkaXI7XHJcbn1cclxuXHJcbi8vLyBTaG9ydGhhbmQgZm9yIGEgZmxleGJveCBjb250YWluZXIgdGhhdCBqdXN0aWZlcyBjb250ZW50IGF0IHRoZSBlbmQuXHJcbi8vLyBAYXV0aG9yIEtvdXJ0bmV5IFN0cmlja2xhbmRcclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkZGlyIFtyb3ddIC0gVGhlIGZsZXgtZGlyZWN0aW9uIG9mIHRoZSBlbGVtZW50LlxyXG5AbWl4aW4gZmxleEVuZCgkZGlyOiByb3cpIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcclxufVxyXG5cclxuLy8vIFNob3J0aGFuZCBmb3IgYSBmbGV4Ym94IGNvbnRhaW5lciB0aGF0IGp1c3RpZmVzIGNvbnRlbnQgYXQgdGhlIHN0YXJ0LlxyXG4vLy8gQGF1dGhvciBLb3VydG5leSBTdHJpY2tsYW5kXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpciBbcm93XSAtIFRoZSBmbGV4LWRpcmVjdGlvbiBvZiB0aGUgZWxlbWVudC5cclxuQG1peGluIGZsZXhTdGFydCgkZGlyOiByb3cpIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyO1xyXG59XHJcblxyXG4vLy8gQ3JlYXRlcyBhIGZsZXhpYmxlIGhvcml6b250YWwgbGF5b3V0IG9mIGFic29sdXRlbHktcG9zaXRpb25lZCBjaGlsZCBlbGVtZW50cyBvZiBlcXVhbCB3aWR0aC5cclxuLy8vIFZlcnkgdXNlZnVsIGZvciBzb21ldGhpbmcgbGlrZSBhIG1haW4gbmF2IHRoYXQgdHJhbnNpdGlvbnMuIEJlY2F1c2UgZXZlcnl0aGluZyBpcyBhbHJlYWR5IGFic29sdXRlLFxyXG4vLy8geW91IGNhbiBlYXNpbHkgbW92ZSBzZWN0aW9ucyBvdXQgYW5kIGluIHVzaW5nIHRoZSB0b3AvbGVmdCBwcm9wZXJ0aWVzLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRtYXgtbnVtLW9mLWNoaWxkcmVuIFs3XSAtIElmIHRoZSBudW1iZXIgb2YgY2hpbGRyZW4gZXhjZWVkcyB0aGlzIG51bWJlciwgdGhlIGxheW91dCB3aWxsIGJyZWFrLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRvcmllbnRhdGlvbiBbdmVydGljYWxdIC0gVGhlIGRpcmVjdGlvbiBvZiB0aGUgZmxleCBjb250YWluZXIuIEVpdGhlciBcInZlcnRpY2FsXCIgb3IgXCJob3Jpem9udGFsXCIuXHJcbkBtaXhpbiBhYnNvbHV0ZUZsZXgoJG1heC1udW0tb2YtY2hpbGRyZW46IDcsICRvcmllbnRhdGlvbjogXCJ2ZXJ0aWNhbFwiLCAkZ3V0dGVyOiAwJSkge1xyXG4gIEBpZiB0eXBlLW9mKCRtYXgtbnVtLW9mLWNoaWxkcmVuKSAhPW51bWJlciB7XHJcbiAgICBAZXJyb3IgXCJJbnB1dCBgJG1heC1udW0tb2YtY2hpbGRyZW5gIG11c3QgYmUgYSBudW1iZXIuXCI7XHJcbiAgfVxyXG5cclxuICBAaWYgJG9yaWVudGF0aW9uICE9IFwiaG9yaXpvbnRhbFwiIGFuZCAkb3JpZW50YXRpb24gIT0gXCJ2ZXJ0aWNhbFwiIHtcclxuICAgIEBlcnJvciBcIklucHV0IGAkbWF4LW51bS1vZi1jaGlsZHJlbmAgbXVzdCBiZSBzZXQgdG8gZWl0aGVyIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgXCI7XHJcbiAgfVxyXG5cclxuICBAd2hpbGUgJG1heC1udW0tb2YtY2hpbGRyZW4+MSB7XHJcbiAgICAkc2l6ZTogbWF0aC5kaXYoMTAwJSwgJG1heC1udW0tb2YtY2hpbGRyZW4pO1xyXG4gICAgJGd1dHRlclNpemVPZmZzZXQ6IG1hdGguZGl2KCRndXR0ZXIsICRtYXgtbnVtLW9mLWNoaWxkcmVuKTtcclxuXHJcbiAgICAvLyBXZSBjYW4gZGV0ZWN0IHRoZSBudW1iZXIgb2YgaXRlbXMgYSBwYXJlbnQgaGFzIHB1cmVseSB3aXRoIENTUy4gQ3JhenksIGh1aCFcclxuICAgID4gKjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRtYXgtbnVtLW9mLWNoaWxkcmVufSksXHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skbWF4LW51bS1vZi1jaGlsZHJlbn0pIH4gKiB7XHJcbiAgICAgIEBpZiAoJG9yaWVudGF0aW9uPT0gXCJob3Jpem9udGFsXCIpIHtcclxuICAgICAgICB3aWR0aDogY2FsYygjeyRzaXplfSAtICN7JGd1dHRlciAtICRndXR0ZXJTaXplT2Zmc2V0fSk7XHJcbiAgICAgIH0gQGVsc2UgaWYgKCRvcmllbnRhdGlvbj09IFwidmVydGljYWxcIikge1xyXG4gICAgICAgIGhlaWdodDogY2FsYygjeyRzaXplfSAtICN7JGd1dHRlciAtICRndXR0ZXJTaXplT2Zmc2V0fSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC8vIENhbGN1bGF0ZSBhbmQgc2V0IGNoaWxkIHBvc2l0aW9uLlxyXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRtYXgtbnVtLW9mLWNoaWxkcmVuIHtcclxuICAgICAgICAmOm50aC1jaGlsZCgjeyRpfSkge1xyXG4gICAgICAgICAgQGlmICgkb3JpZW50YXRpb249PSBcImhvcml6b250YWxcIikge1xyXG4gICAgICAgICAgICBsZWZ0OiBjYWxjKCN7JHNpemUgKiAkaSAtICRzaXplfSArICN7JGd1dHRlciAtICRndXR0ZXJTaXplT2Zmc2V0ICogJGl9KTtcclxuICAgICAgICAgIH0gQGVsc2UgaWYgKCRvcmllbnRhdGlvbj09IFwidmVydGljYWxcIikge1xyXG4gICAgICAgICAgICB0b3A6ICRzaXplICogJGkgLSAkc2l6ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAkbWF4LW51bS1vZi1jaGlsZHJlbjogJG1heC1udW0tb2YtY2hpbGRyZW4gLSAxO1xyXG4gIH1cclxuXHJcbiAgPiAqIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBDcmVhdGUgYSBibHVyIGVmZmVjdCB3aXRoIGZhbGxiYWNrcyBmb3IgdW5zdXBwb3J0ZWQgYnJvd3NlcnMuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgLSBUaGUgYmFja2dyb3VuZC1jb2xvciBvZiB0aGUgZWxlbWVudC5cclxuLy8vIEBwYXJhbSB7bnVtfSAkb3BhY2l0eSBbODUlXSAtIFRoZSBsZXZlbCBvZiBvcGFjaXR5IGRlc2lyZWQuXHJcbkBtaXhpbiBmcm9zdGVkR2xhc3MoJGNvbG9yOiAkbGlnaHQsICRvcGFjaXR5OiA4NSUpIHtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgJG9wYWNpdHkpO1xyXG5cclxuICBAc3VwcG9ydHMgKGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KSkge1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG5cclxuICAgIEBpZiAoJG9wYWNpdHkgLSAyMCUgPiAwKSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAkb3BhY2l0eSAtIDIwJSk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBEZWxpdmVycyBidWxsZXRwcm9vZiBob3ZlciBzdHlsaW5nIHRoYXQgcHJldmVudHMgdG91Y2ggZXZlbnRzIGZyb20gdHJpZ2dlcmluZ1xyXG4vLy8gc2luY2UgOTklIG9mIHRoZSB0aW1lIHRoYXQncyBub3Qgd2hhdCB5b3Ugd2FudC4gSW5jbHVkZXMgZmFsbGJhY2tzIGZvciBvbGRlciBicm93c2Vycy5cclxuLy8vIFdlIHVzZWQgdG8gdXNlIGFueS1wb2ludGVyOiBmaW5lIGJ1dCBmb3Igc29tZSByZWFzb24gdGhhdCB3YXMgYWx3YXlzIHJldHVybmluZyB0cnVlXHJcbi8vLyBvbiBBbmRyb2lkIGRldmljZXMsIGV2ZW4gd2l0aCBubyBtb3VzZSBhdHRhY2hlZC4gU28gaXQncyBiYWNrIHRvIHJlZ3VsYXIgb2xkIHBvaW50ZXI6IGZpbmUuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAY29udGVudFxyXG5AbWl4aW4gaG92ZXIoKSB7XHJcbiAgQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtYnJvd3Nlcj1cImllXCJdICY6aG92ZXIge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICAuaWUgJjpob3ZlciB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBEZWxpdmVycyBidWxsZXRwcm9vZiBmb2N1cy12aXNpYmxlIHN0eWxpbmcgd2l0aCBmYWxsYmFja3MgZm9yIG9sZGVyIGJyb3dzZXJzLiBSZXF1aXJlc1xyXG4vLy8gYSBKUyBwb2x5ZmlsbCAoV0lDRyBmb2N1cy12aXNpYmxlKSBmb3Igb2xkZXIgYnJvd3NlcnMuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAY29udGVudFxyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL1dJQ0cvZm9jdXMtdmlzaWJsZVxyXG5AbWl4aW4gZm9jdXMoKSB7XHJcbiAgJi5mb2N1cy12aXNpYmxlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8vIEBtaXhpbiBob3ZlciBhbmQgQG1peGluIGZvY3VzIHN0eWxpbmcgaW4gb25lIG1peGluLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQGNvbnRlbnRcclxuQG1peGluIGhvdmVyQW5kRm9jdXMoKSB7XHJcbiAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBmb2N1cyB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBBY2Nlc3NpYmxlIGJhY2tncm91bmRzISBFbnN1cmUgeW91ciBlbGVtZW50cyBhbHdheXMgaGF2ZSBwcm9wZXIgY29udHJhc3QgYnkgc2V0dGluZyBib3RoIGJhY2tncm91bmQtY29sb3IgYW5kIGNvbG9yIHByb3BlcnRpZXMuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGJnIC0gVGhlIGJhY2tncm91bmQgdG8gdXNlIGZvciB0aGUgZWxlbWVudC5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkdGV4dERhcmsgW2RhcmtdIC0gVGV4dCBjb2xvciB0byB1c2Ugd2hlbiBlbGVtZW50J3MgYmFja2dyb3VuZCBpcyBhYm92ZSBhIGNlcnRhaW4gdGhyZXNob2xkIGluIGxpZ2h0bmVzcy4gT25seSB1c2VkIGlmICRiZyBpcyBhIHNhc3MgdmFyaWFibGUuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJHRleHRMaWdodCBbd2hpdGVdIC0gVGV4dCBjb2xvciB0byB1c2Ugd2hlbiBlbGVtZW50J3MgYmFja2dyb3VuZCBpcyBiZWxvdyBhIGNlcnRhaW4gdGhyZXNob2xkIGluIGxpZ2h0bmVzcy4gT25seSB1c2VkIGlmICRiZyBpcyBhIHNhc3MgdmFyaWFibGUuXHJcbkBtaXhpbiBiZ1dpdGhDb250cmFzdCgkYmcsICR0ZXh0RGFyazogYmxhY2ssICR0ZXh0TGlnaHQ6IHdoaXRlKSB7XHJcbiAgLy8gQ2hlY2sgaWYgcGFyYW1ldGVyIGlzIGEgY3NzIGN1c3RvbSBwcm9wZXJ0eS4gVGhlIHZhbHVlIG9mIGN1c3RvbSBwcm9wZXJ0aWVzIGFyZSBub3RcclxuICAvLyBrbm93biBhdCBjb21waWxlIHRpbWUgdGhlcmVmb3JlIHdlIGRvIG5vdCBjYWxjdWxhdGUgY29udHJhc3QgaGVyZS5cclxuICBAaWYgKHN0cmluZy5pbmRleChcIiN7JGJnfVwiLCBcIi0tXCIpKSB7XHJcbiAgICAkYmc6IHVud3JhcC1jdXN0b20tcHJvcCgkYmcpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCN7JGJnfSk7XHJcbiAgICBjb2xvcjogdmFyKCN7JGJnfSN7LWNvbnRyYXN0fSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XHJcblxyXG4gICAgJHJhdGlvV2l0aERhcms6IHdjYWctY29udHJhc3QtcmF0aW8oJGJnLCAkdGV4dERhcmspO1xyXG4gICAgJHJhdGlvV2l0aExpZ2h0OiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCRiZywgJHRleHRMaWdodCk7XHJcblxyXG4gICAgQGlmICRyYXRpb1dpdGhEYXJrIDwgMyBhbmQgJHJhdGlvV2l0aExpZ2h0IDwgMyB7XHJcbiAgICAgIEBlcnJvciBcIlRoZSBjb2xvciAjeyRiZ30gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiAzOjEuIFBsZWFzZSBjaG9vc2UgYSBkaWZmZXJlbnQgY29sb3IgY29tYmluYXRpb24uXCI7XHJcbiAgICB9IEBlbHNlIGlmICRyYXRpb1dpdGhEYXJrIDwgNC41IGFuZCAkcmF0aW9XaXRoTGlnaHQgPCA0LjUge1xyXG4gICAgICBAd2FybiBcIlRoZSBjb2xvciAjeyRiZ30gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiA0LjU6MS4gUGxlYXNlIGNvbmZpcm0gdGhhdCBhbnkgdGV4dCBpbnNpZGUgdGhpcyBlbGVtZW50IGlzIGdyZWF0ZXIgdGhhbiAxOHB4LlwiO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkcmF0aW9XaXRoRGFyayA+PSRyYXRpb1dpdGhMaWdodCB7XHJcbiAgICAgIGNvbG9yOiAkdGV4dERhcms7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgY29sb3I6ICR0ZXh0TGlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gQWNjZXNzaWJsZSB0ZXh0ISBFbnN1cmUgeW91ciBlbGVtZW50cyBhbHdheXMgaGF2ZSBwcm9wZXIgY29udHJhc3QgYnkgc2V0dGluZyBib3RoIGNvbG9yIGFuZCBiYWNrZ3JvdW5kLWNvbG9yIHByb3BlcnRpZXMuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJHRleHRDb2xvciAtIFRoZSB0ZXh0IGNvbG9yIHRvIHVzZSBmb3IgdGhlIGVsZW1lbnQuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGJnRGFyayBbZGFya10gLSBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSB3aGVuIGVsZW1lbnQncyB0ZXh0IGlzIGFib3ZlIGEgY2VydGFpbiB0aHJlc2hvbGQgaW4gbGlnaHRuZXNzLiBPbmx5IHVzZWQgaWYgJHRleHRDb2xvciBpcyBhIHNhc3MgdmFyaWFibGUuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGJnTGlnaHQgW3doaXRlXSAtIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIHdoZW4gZWxlbWVudCdzIHRleHQgaXMgYmVsb3cgYSBjZXJ0YWluIHRocmVzaG9sZCBpbiBsaWdodG5lc3MuIE9ubHkgdXNlZCBpZiAkdGV4dENvbG9yIGlzIGEgc2FzcyB2YXJpYWJsZS5cclxuQG1peGluIGNvbG9yV2l0aENvbnRyYXN0KCR0ZXh0Q29sb3IsICRiZ0Rhcms6IGJsYWNrLCAkYmdMaWdodDogd2hpdGUpIHtcclxuICAvLyBDaGVjayBpZiBwYXJhbWV0ZXIgaXMgYSBjc3MgY3VzdG9tIHByb3BlcnR5LiBUaGUgdmFsdWUgb2YgY3VzdG9tIHByb3BlcnRpZXMgYXJlIG5vdFxyXG4gIC8vIGtub3duIGF0IGNvbXBpbGUgdGltZSB0aGVyZWZvcmUgd2UgZG8gbm90IGNhbGN1bGF0ZSBjb250cmFzdCBoZXJlLlxyXG4gIEBpZiAoc3RyaW5nLmluZGV4KFwiI3skdGV4dENvbG9yfVwiLCBcIi0tXCIpKSB7XHJcbiAgICAkdGV4dENvbG9yOiB1bndyYXAtY3VzdG9tLXByb3AoJHRleHRDb2xvcik7XHJcbiAgICBjb2xvcjogdmFyKCN7JHRleHRDb2xvcn0pO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKCN7JHRleHRDb2xvcn0jey1jb250cmFzdH0pO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgY29sb3I6ICR0ZXh0Q29sb3I7XHJcblxyXG4gICAgJHJhdGlvV2l0aERhcms6IHdjYWctY29udHJhc3QtcmF0aW8oJHRleHRDb2xvciwgJGJnRGFyayk7XHJcbiAgICAkcmF0aW9XaXRoTGlnaHQ6IHdjYWctY29udHJhc3QtcmF0aW8oJHRleHRDb2xvciwgJGJnTGlnaHQpO1xyXG5cclxuICAgIEBpZiAkcmF0aW9XaXRoRGFyayA8IDMgYW5kICRyYXRpb1dpdGhMaWdodCA8IDMge1xyXG4gICAgICBAZXJyb3IgXCJUaGUgY29sb3IgI3skdGV4dENvbG9yfSBkb2VzIG5vdCBtZWV0IFdDQUcgQUEgbWluaW11bSBhY2Nlc3NpYmlsaXR5IGNvbnRyYXN0IHJhdGlvIG9mIDM6MS4gUGxlYXNlIGNob29zZSBhIGRpZmZlcmVudCBjb2xvciBjb21iaW5hdGlvbi5cIjtcclxuICAgIH0gQGVsc2UgaWYgJHJhdGlvV2l0aERhcmsgPCA0LjUgYW5kICRyYXRpb1dpdGhMaWdodCA8IDQuNSB7XHJcbiAgICAgIEB3YXJuIFwiVGhlIGNvbG9yICN7JHRleHRDb2xvcn0gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiA0LjU6MS4gUGxlYXNlIGNvbmZpcm0gdGhhdCBhbnkgdGV4dCBpbnNpZGUgdGhpcyBlbGVtZW50IGlzIGdyZWF0ZXIgdGhhbiAxOHB4LlwiO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkcmF0aW9XaXRoRGFyayA+PSRyYXRpb1dpdGhMaWdodCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0Rhcms7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnTGlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gUmV0dXJucyBhIGNvbnRyYXN0aW5nIGNvbG9yIHZhbHVlIHRvIHRoZSBnaXZlbiBjb2xvci5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkY29sb3IgLSBUaGUgY29sb3IgdG8gY29udHJhc3QgYWdhaW4uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRhcmsgW2RhcmtdIC0gQmFja2dyb3VuZCBjb2xvciB0byB1c2Ugd2hlbiAkY29sb3IgaXMgYWJvdmUgYSBjZXJ0YWluIHRocmVzaG9sZCBpbiBsaWdodG5lc3MuIE9ubHkgdXNlZCBpZiAkY29sb3IgaXMgYSBzYXNzIHZhcmlhYmxlLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRsaWdodCBbd2hpdGVdIC0gQmFja2dyb3VuZCBjb2xvciB0byB1c2Ugd2hlbiAkY29sb3IgaXMgYmVsb3cgYSBjZXJ0YWluIHRocmVzaG9sZCBpbiBsaWdodG5lc3MuIE9ubHkgdXNlZCBpZiAkY29sb3IgaXMgYSBzYXNzIHZhcmlhYmxlLlxyXG4vLy8gQHJldHVybiB7c3RyaW5nfSAtIExpZ2h0IG9yIGRhcmsgZGVwZW5kaW5nIG9uIHRoZSBjb2xvciBnaXZlbi5cclxuQGZ1bmN0aW9uIGNhbGMtY29udHJhc3QoJGNvbG9yLCAkZGFyazogYmxhY2ssICRsaWdodDogd2hpdGUpIHtcclxuICBAaWYgKHN0cmluZy5pbmRleChcIiN7JGNvbG9yfVwiLCBcIi0tXCIpKSB7XHJcbiAgICAkY29sb3I6IHVud3JhcC1jdXN0b20tcHJvcCgkY29sb3IpO1xyXG4gICAgQHJldHVybiB2YXIoI3skY29sb3J9I3stY29udHJhc3R9KTtcclxuICB9IEBlbHNlIHtcclxuICAgICRyYXRpb1dpdGhEYXJrOiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCRjb2xvciwgJGRhcmspO1xyXG4gICAgJHJhdGlvV2l0aExpZ2h0OiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCRjb2xvciwgJGxpZ2h0KTtcclxuXHJcbiAgICBAaWYgJHJhdGlvV2l0aERhcmsgPCAzIGFuZCAkcmF0aW9XaXRoTGlnaHQgPCAzIHtcclxuICAgICAgQGVycm9yIFwiVGhlIGNvbG9yICN7JGNvbG9yfSBkb2VzIG5vdCBtZWV0IFdDQUcgQUEgbWluaW11bSBhY2Nlc3NpYmlsaXR5IGNvbnRyYXN0IHJhdGlvIG9mIDM6MS4gUGxlYXNlIGNob29zZSBhIGRpZmZlcmVudCBjb2xvciBjb21iaW5hdGlvbi5cIjtcclxuICAgIH0gQGVsc2UgaWYgJHJhdGlvV2l0aERhcmsgPCA0LjUgYW5kICRyYXRpb1dpdGhMaWdodCA8IDQuNSB7XHJcbiAgICAgIEB3YXJuIFwiVGhlIGNvbG9yICN7JGNvbG9yfSBkb2VzIG5vdCBtZWV0IFdDQUcgQUEgbWluaW11bSBhY2Nlc3NpYmlsaXR5IGNvbnRyYXN0IHJhdGlvIG9mIDQuNToxLiBQbGVhc2UgY29uZmlybSB0aGF0IGFueSB0ZXh0IGluc2lkZSB0aGlzIGVsZW1lbnQgaXMgZ3JlYXRlciB0aGFuIDE4cHguXCI7XHJcbiAgICB9XHJcblxyXG4gICAgQGlmICRyYXRpb1dpdGhEYXJrID49JHJhdGlvV2l0aExpZ2h0IHtcclxuICAgICAgQHJldHVybiAkZGFyaztcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBAcmV0dXJuICRsaWdodDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB2YXItcmdiYSgkY29sb3IsICRvcGFjaXR5OiAxKSB7XHJcbiAgJG9wYWNpdHk6IHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCRvcGFjaXR5KTtcclxuICAkY29sb3I6IHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCRjb2xvcik7XHJcblxyXG4gICRwZXJjZW50YWdlOiBjYWxjKCN7JG9wYWNpdHl9ICogMTAwJSk7XHJcblxyXG4gIEByZXR1cm4gY29sb3ItbWl4KGluIHNyZ2IsICN7JGNvbG9yfSAjeyRwZXJjZW50YWdlfSwgdHJhbnNwYXJlbnQpO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gdmFyLWxpZ2h0ZW4oJGNvbG9yLCAkYWRqdXN0bWVudDogMCUpIHtcclxuICBAaWYgKGdldC11bml0KCRhZGp1c3RtZW50KSA9PSBcIiVcIikge1xyXG4gICAgJGFkanVzdG1lbnQ6IG1hdGguZGl2KCRhZGp1c3RtZW50LCAxMDAlKTtcclxuICAgICRjb2xvcjogdmFsaWRhdGUtYW5kLXdyYXAtaWYtY3VzdG9tLXByb3AoJGNvbG9yKTtcclxuXHJcbiAgICBAcmV0dXJuIG9rbGNoKGZyb20gI3skY29sb3J9IG1pbihjYWxjKGwgKyAobCAqICN7JGFkanVzdG1lbnR9KSksICN7MX0pIGMgaCk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAZXJyb3IgXCJUaGUgYWRqdXN0bWVudCAjeyRhZGp1c3RtZW50fSBtdXN0IGJlIGEgcGVyY2VudGFnZS5cIjtcclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB2YXItZGFya2VuKCRjb2xvciwgJGFkanVzdG1lbnQ6IDAlKSB7XHJcbiAgQGlmIChnZXQtdW5pdCgkYWRqdXN0bWVudCkgPT0gXCIlXCIpIHtcclxuICAgICRhZGp1c3RtZW50OiBtYXRoLmRpdigkYWRqdXN0bWVudCwgMTAwJSk7XHJcbiAgICAkY29sb3I6IHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCRjb2xvcik7XHJcblxyXG4gICAgQHJldHVybiBva2xjaChmcm9tICN7JGNvbG9yfSBtYXgoY2FsYyhsIC0gKGwgKiAjeyRhZGp1c3RtZW50fSkpLCAjezB9KSBjIGgpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yIFwiVGhlIGFkanVzdG1lbnQgI3skYWRqdXN0bWVudH0gbXVzdCBiZSBhIHBlcmNlbnRhZ2UuXCI7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gU2V0cyBiYWNrZ3JvdW5kLXBvc2l0aW9uIGNzcyBiYXNlZCBvbiBbZGF0YS1iZy1wb3M9XCJ4IHlcIl0uXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbkBtaXhpbiBiZ1BvcygpIHtcclxuICAmW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcclxuICB9XHJcblxyXG4gICZbZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwJTtcclxuICB9XHJcblxyXG4gICZbZGF0YS1iZy1wb3M9XCJjZW50ZXIgbGVmdFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyXCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIHJpZ2h0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDEwMCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcclxuICB9XHJcblxyXG4gICZbZGF0YS1iZy1wb3M9XCJib3R0b20gcmlnaHRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIFRyaWdnZXJzIHN0eWxpbmcgYmFzZWQgb24gd2hldGhlciBhIGdpdmVuIGRpYWxvZyBpcyBhY3RpdmUgb3Igbm90LiBDYW4gYmUgdXNlZCBuZXN0ZWQgb3Igc3RhbmRhbG9uZS5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkaWQgLSBUaGUgaWQgb2YgYSBkaWFsb2cuXHJcbi8vLyBAY29udGVudCAtIG9wdGlvbmFsXHJcbkBtaXhpbiBhY3RpdmVEaWFsb2coJGlkKSB7XHJcbiAgQGlmICYge1xyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cIiN7JGlkfVwiXSAmIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiI3skaWR9XCJdIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gVHJpZ2dlcnMgc3R5bGluZyBiYXNlZCBvbiB3aGV0aGVyIGEgZ2l2ZW4gem9uZSBpcyBhY3RpdmUgb3Igbm90LiBDYW4gYmUgdXNlZCBuZXN0ZWQgb3Igc3RhbmRhbG9uZS5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkaWQgLSBUaGUgaWQgb2YgYSB6b25lLlxyXG4vLy8gQGNvbnRlbnQgLSBvcHRpb25hbFxyXG5AbWl4aW4gYWN0aXZlWm9uZSgkaWQpIHtcclxuICBAaWYgJiB7XHJcbiAgICBbZGF0YS1hY3RpdmUtem9uZT1cIiN7JGlkfVwiXSAmIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBbZGF0YS1hY3RpdmUtem9uZT1cIiN7JGlkfVwiXSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIFJldHVybnMgYXNwZWN0LXJhdGlvIHdpdGggc3VwcG9ydCBmb3Igb2xkZXIgYnJvd3NlcnMgdXNpbmcgcGFkZGluZy1ib3R0b20gcGVyY2VudGFnZSB0cmljay5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7bnVtfSAkaCAtIFRoZSBob3Jpem9udGFsIGFzcGVjdCByYXRpbyBvZiB0aGUgZWxlbWVudC5cclxuLy8vIEBwYXJhbSB7bnVtfSAkdiAtIFRoZSB2ZXJ0aWNhbCBhc3BlY3QgcmF0aW8gb2YgdGhlIGVsZW1lbnQuXHJcbkBtaXhpbiBhc3BlY3RSYXRpbygkaCwgJHYpIHtcclxuICBAc3VwcG9ydHMgKGFzcGVjdC1yYXRpbzogMSAvIDEpIHtcclxuICAgIGFzcGVjdC1yYXRpbzogJGggI3tcIi9cIn0gJHY7XHJcbiAgfVxyXG5cclxuICBAc3VwcG9ydHMgbm90IChhc3BlY3QtcmF0aW86IDEgLyAxKSB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiBtYXRoLmRpdigkdiwgJGgpICogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBUcmlnZ2VycyBzdHlsaW5nIGJhc2VkIG9uIHdoZXRoZXIgYW55IGRpc2NvdmVyeSB0b29sIGRpYWxvZ3MgYXJlIGFjdGl2ZS4gQ2FuIGJlIHVzZWQgbmVzdGVkIG9yIHN0YW5kYWxvbmUuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAY29udGVudCAtIG9wdGlvbmFsXHJcbkBtaXhpbiBkaXNjb3ZlcnlUb29sc0FjdGl2ZSgpIHtcclxuICBAaWYgJiB7XHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiY2hlY2tsaXN0XCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxXCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZ2xvc3NhcnlcIl0gJixcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJhY2hpZXZlbWVudHNcIl0gJixcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJyZXNvdXJjZXNcIl0gJixcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJmYXFDb25maXJtUXVlc3Rpb25NZXNzYWdlXCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxUXVlc3Rpb25TdWJtaXR0ZWRNZXNzYWdlXCJdICYge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJjaGVja2xpc3RcIl0sXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxXCJdLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImdsb3NzYXJ5XCJdLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImFjaGlldmVtZW50c1wiXSxcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJyZXNvdXJjZXNcIl0sXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxQ29uZmlybVF1ZXN0aW9uTWVzc2FnZVwiXSxcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJmYXFRdWVzdGlvblN1Ym1pdHRlZE1lc3NhZ2VcIl0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCRjb2xvcjEsICRjb2xvcjIpIHtcclxuICAkbDE6IHdjYWctbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcclxuICAkbDI6IHdjYWctbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcclxuICAkcmF0aW86IG1hdGguZGl2KCRsMSwgJGwyKTtcclxuXHJcbiAgQGlmICRsMiA+JGwxIHtcclxuICAgICRyYXRpbzogbWF0aC5kaXYoMSwgJHJhdGlvKTtcclxuICB9XHJcblxyXG4gIEByZXR1cm4gJHJhdGlvO1xyXG59XHJcblxyXG4vLy8gUmV0dXJucyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgIGFzIGEgZmxvYXQgKGJldHdlZW4gMCBhbmQgMSlcclxuLy8vIDEgaXMgcHVyZSB3aGl0ZSwgMCBpcyBwdXJlIGJsYWNrXHJcbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvclxyXG4vLy8gQHJldHVybiB7TnVtYmVyfVxyXG4vLy8gQGxpbmsgaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZiBSZWZlcmVuY2VcclxuQGZ1bmN0aW9uIHdjYWctbHVtaW5hbmNlKCRjb2xvcikge1xyXG4gICRyZ2I6IChcclxuICAgIFwiclwiOiBjb2xvci5jaGFubmVsKCRjb2xvciwgXCJyZWRcIiwgJHNwYWNlOiByZ2IpLFxyXG4gICAgXCJnXCI6IGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcImdyZWVuXCIsICRzcGFjZTogcmdiKSxcclxuICAgIFwiYlwiOiBjb2xvci5jaGFubmVsKCRjb2xvciwgXCJibHVlXCIsICRzcGFjZTogcmdiKVxyXG4gICk7XHJcblxyXG4gIEBlYWNoICRjaGFubmVsLCAkdmFsdWUgaW4gJHJnYiB7XHJcbiAgICAkdmFsdWU6IG1hdGguZGl2KCR2YWx1ZSwgMjU1KTtcclxuXHJcbiAgICBAaWYgJHZhbHVlIDwgMC4wMzkyOCB7XHJcbiAgICAgICR2YWx1ZTogbWF0aC5kaXYoJHZhbHVlLCAxMi45Mik7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJHZhbHVlOiBtYXRoLmRpdigkdmFsdWUgKyAwLjA1NSwgMS4wNTUpO1xyXG4gICAgICAkdmFsdWU6IG1hdGgucG93KCR2YWx1ZSwgMi40KTtcclxuICAgIH1cclxuXHJcbiAgICAkcmdiOiBtYXAubWVyZ2UoXHJcbiAgICAgICRyZ2IsXHJcbiAgICAgIChcclxuICAgICAgICAkY2hhbm5lbDogJHZhbHVlXHJcbiAgICAgIClcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuIChtYXAuZ2V0KCRyZ2IsIFwiclwiKSAqIDAuMjEyNikgKyAobWFwLmdldCgkcmdiLCBcImdcIikgKiAwLjcxNTIpICsgKG1hcC5nZXQoJHJnYiwgXCJiXCIpICogMC4wNzIyKTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCRwcm9wKSB7XHJcbiAgQGlmIChzdHJpbmcuaW5kZXgoI3skcHJvcH0sIFwidmFyKFwiKSkge1xyXG4gICAgJHVud3JhcHBlZDogc3RyaW5nLnNsaWNlKCN7JHByb3B9LCAkc3RhcnQtYXQ6IHN0cmluZy5pbmRleCgjeyRwcm9wfSwgXCJ2YXIoXCIpICsgNCwgJGVuZC1hdDogc3RyaW5nLmxlbmd0aCgjeyRwcm9wfSkgLSAxKTtcclxuICAgIEByZXR1cm4gdmFsaWRhdGUtYW5kLXdyYXAtaWYtY3VzdG9tLXByb3AoJHVud3JhcHBlZCk7XHJcbiAgfSBAZWxzZSBpZiAoc3RyaW5nLmluZGV4KFwiI3skcHJvcH1cIiwgXCItLVwiKSkge1xyXG4gICAgQHJldHVybiB2YXIoI3skcHJvcH0pO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQHJldHVybiAkcHJvcDtcclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB1bndyYXAtY3VzdG9tLXByb3AoJHByb3ApIHtcclxuICBAaWYgKHN0cmluZy5pbmRleCgjeyRwcm9wfSwgXCJ2YXIoXCIpKSB7XHJcbiAgICAkdW53cmFwcGVkOiBzdHJpbmcuc2xpY2UoI3skcHJvcH0sICRzdGFydC1hdDogc3RyaW5nLmluZGV4KCN7JHByb3B9LCBcInZhcihcIikgKyA0LCAkZW5kLWF0OiBzdHJpbmcubGVuZ3RoKCN7JHByb3B9KSAtIDEpO1xyXG5cclxuICAgIEBpZiAoc3RyaW5nLmluZGV4KCR1bndyYXBwZWQsIFwidmFyKFwiKSkge1xyXG4gICAgICBAcmV0dXJuIHVud3JhcC1jdXN0b20tcHJvcCgkdW53cmFwcGVkKTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICBAcmV0dXJuICR1bndyYXBwZWQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAcmV0dXJuICRwcm9wO1xyXG4gIH1cclxufVxyXG5cclxuQGZ1bmN0aW9uIHN0ci1sYXN0LWluZGV4KCRzdHJpbmcsICRzdWJzdHJpbmcpIHtcclxuICAkbGFzdC1pbmRleDogbnVsbDtcclxuICAkbGVuZ3RoOiBzdHJpbmcubGVuZ3RoKCRzdHJpbmcpO1xyXG4gICRzdWItbGVuZ3RoOiBzdHJpbmcubGVuZ3RoKCRzdWJzdHJpbmcpO1xyXG5cclxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICgkbGVuZ3RoIC0gJHN1Yi1sZW5ndGggKyAxKSB7XHJcbiAgICBAaWYgc3RyaW5nLnNsaWNlKCRzdHJpbmcsICRpLCAkaSArICRzdWItbGVuZ3RoIC0gMSkgPT0kc3Vic3RyaW5nIHtcclxuICAgICAgJGxhc3QtaW5kZXg6ICRpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQHJldHVybiAkbGFzdC1pbmRleDtcclxufVxyXG5cclxuQGZ1bmN0aW9uIGdldC11bml0KCR2YWx1ZSkge1xyXG4gIEByZXR1cm4gc3RyaW5nLnNsaWNlKCR2YWx1ZSAqIDAgKyBcIlwiLCAyLCAtMSk7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzbGljZS1saXN0KCRsaXN0LCAkc3RhcnQsICRlbmQ6IG51bGwpIHtcclxuICAkZW5kOiBpZigkZW5kID09IG51bGwsIGxpc3QubGVuZ3RoKCRsaXN0KSwgJGVuZCk7XHJcbiAgJHJlc3VsdDogKCk7XHJcbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xyXG4gICAgJHJlc3VsdDogbGlzdC5hcHBlbmQoJHJlc3VsdCwgbGlzdC5udGgoJGxpc3QsICRpKSk7XHJcbiAgfVxyXG4gIEByZXR1cm4gJHJlc3VsdDtcclxufVxyXG5cclxuLyoqIERFRkFVTFQgT1ZFUlJJREVTICoqL1xyXG5cclxuLy8vIFJlbW92ZSBhbGwgZGVmYXVsdCBzdHlsZXMgZnJvbSBidXR0b25zXHJcbi8vLyBAYXV0aG9yIEtvdXJ0bmV5IFN0cmlja2xhbmRcclxuQG1peGluIHJlc2V0QnV0dG9uKCkge1xyXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlcjogMHB4O1xyXG4gIGJveC1zaGFkb3c6IG5vbmU7XHJcbiAgb3V0bGluZTogMHB4O1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG4gIHRleHQtYWxpZ246IHVuc2V0O1xyXG4gIGFsaWduLWl0ZW1zOiB1bnNldDtcclxuICBwYWRkaW5nOiAwcHg7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIGNvbG9yOiB1bnNldDtcclxufVxyXG5cclxuLy8vIEFwcGx5IHN0eWxpbmcgdG8gYSBwYXJlbnQgYmFzZWQgb24gbnVtYmVyIG9mIGNoaWxkcmVuLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRudW0gLSBUaGUgbnVtYmVyIG9mIGNoaWxkcmVuIHRvIGNoZWNrLlxyXG4vLy8gQHBhcmFtIHtib29sZWFufSAkb3JNb3JlIFtmYWxzZV0gLSBBcHBsaWVzIGlmIGVsZW1lbnQgaGFzIGFib3ZlIHRoZSBnaXZlbiBudW1iZXIgb2YgY2hpbGRyZW4uXHJcbi8vLyBAcGFyYW0ge2Jvb2xlYW59ICRvckxlc3MgW2ZhbHNlXSAtIEFwcGxpZXMgaWYgZWxlbWVudCBoYXMgYmVsb3cgdGhlIGdpdmVuIG51bWJlciBvZiBjaGlsZHJlbi5cclxuLy8vIEBsaW5rIGh0dHBzOi8vY3NzLXRpcC5jb20vbnVtYmVyLWVsZW1lbnRzLWhhcy1zZWxlY3Rvci9cclxuQG1peGluIGhhc051bWJlck9mQ2hpbGRyZW4oJG51bSwgJG9yTW9yZTogZmFsc2UsICRvckxlc3M6IGZhbHNlKSB7XHJcbiAgQGlmICgkb3JNb3JlID09dHJ1ZSBhbmQgJG9yTGVzcyA9PXRydWUpIHtcclxuICAgIEBlcnJvciBcIkFib3ZlIGFuZCBiZWxvdyBjYW5ub3QgYm90aCBiZSB0cnVlLlwiO1xyXG4gIH1cclxuXHJcbiAgQGlmICgkbnVtID09MCkge1xyXG4gICAgJjpub3QoOmhhcygqKSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIEBpZiAoJG9yTW9yZSA9PXRydWUpIHtcclxuICAgICAgJjpoYXMoPiA6bnRoLWNoaWxkKCN7JG51bX0pKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH0gQGVsc2UgaWYgKCRvckxlc3MgPT10cnVlKSB7XHJcbiAgICAgICY6aGFzKD4gOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKC1uICsgI3skbnVtfSkpIHtcclxuICAgICAgICBAY29udGVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6aGFzKD4gOmxhc3QtY2hpbGQ6bnRoLWNoaWxkKCN7JG51bX0pKSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIFRyaWdnZXIgc3R5bGluZyBiYXNlZCBvbiB3aGV0aGVyIGFueSBkaWFsb2cgaXMgb3Blbi5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuQG1peGluIGlzQW55RGlhbG9nT3BlbigpIHtcclxuICBAaWYgJiB7XHJcbiAgICBodG1sW2RhdGEtZGlhbG9nLWhpZGUtb3ZlcmZsb3c9XCJ0cnVlXCJdICYge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9IEBlbHNlIHtcclxuICAgIGh0bWxbZGF0YS1kaWFsb2ctaGlkZS1vdmVyZmxvdz1cInRydWVcIl0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5AdXNlIFwic2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJtZXRhLW1peGluc1wiIGFzICo7XHJcblxyXG5AbGF5ZXIgYmFzZSB7XHJcbiAgLmZpZWxkV3JhcHBlcixcclxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlcixcclxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcblxyXG4gICAgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0Om5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJyYWRpb1wiXSkge1xyXG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXQ6Oi1tcy1yZXZlYWwsXHJcbiAgICBpbnB1dDo6LW1zLWNsZWFyIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44NGVtO1xyXG4gICAgICBjb2xvcjogdmFyLXJnYmEoLS1iYXNpYywgMC44NSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmllbGRXcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmxvbmdhbnN3ZXIge1xyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd25XcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRyb3Bkb3duIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcblxyXG4gICAgc2VsZWN0IHtcclxuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIGZpbGw9J2JsYWNrJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMjQgMjQnIHdpZHRoPScyNCcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNyAxMGw1IDUgNS01eicvPjxwYXRoIGQ9J00wIDBoMjR2MjRIMHonIGZpbGw9J25vbmUnLz48L3N2Zz5cIik7XHJcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDI1cHggNTBweDtcclxuXHJcbiAgICAgICY6Oi1tcy1leHBhbmQge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb250cm9sV3JhcHBlcixcclxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5jb250cm9sIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICBsYWJlbCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIH1cclxuXHJcbiAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiA2cHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44NGVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS4zZW07XHJcbiAgICAgIGNvbG9yOiB2YXItcmdiYSgtLWJhc2ljLCAwLjg1KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vVGhlc2Ugc3R5bGUgaXMganVzdCB1c2VkIGZvciB0aGUgSG9uZXlwb3QgZmVhdHVyZS4gVGhlc2Ugc3R5bGVzIGtlZXAgdGhlIGZpZWxkIGZyb20gYmVpbmcgc2VlbiBieSBodW1hbnMgYW5kIHRoZXkgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIG9yIHJlbW92ZWQuXHJcbiAgLmZpZWxkV3JhcHBlci5lbnJvbGxlZU5hbWUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICB6LWluZGV4OiAtMTtcclxuICB9XHJcblxyXG4gIC5zdHlsZWRGaWVsZHNldCxcclxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodC1ncmV5KTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXItcmdiYSgtLWxpZ2h0LWdyZXksIDAuNCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgbGVnZW5kLFxyXG4gICAgLmdyb3VwTGVnZW5kIHtcclxuICAgICAgcGFkZGluZzogNXB4IDhweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgYm9yZGVyLXJhZGl1czogN3B4O1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICBjb2xvcjogdmFyKC0tZ3JhcGUtanVpY2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC5ncm91cExlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZHNldEdyaWQge1xyXG4gICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgIGdhcDogMTJweDtcclxuXHJcbiAgICAgIC5maWVsZFdyYXBwZXIsXHJcbiAgICAgIC5jb250cm9sV3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmllbGRXcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUsXHJcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQge1xyXG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XHJcblxyXG4gICAgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA4cHg7XHJcbiAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgICAgY29sb3I6IHZhcigtLWJhc2ljKTtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdCguaXRpX19zZWFyY2gtaW5wdXQpLFxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNDhweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogMjNweCA4cHggNnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNob3dIaWRlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBoZWlnaHQ6IDUzcHg7XHJcbiAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG5cclxuICAgICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmW2FyaWEtY2hlY2tlZD1cInRydWVcIl0ge1xyXG4gICAgICAgIC5pY29uOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICB3aWR0aDogM3B4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgtNDVkZWcpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcclxuICAgIH1cclxuICAgICNyZXF1aXJlbWVudHMge1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMCAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJHNsb3cgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgICAmLnZhbGlkIHtcclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1jb3JyZWN0KTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg4ZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjFlbTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0td3JvbmcpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAwLjk1ZW07XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4xZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd25XcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRyb3Bkb3duIHtcclxuICAgIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogOHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XHJcbiAgICB9XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNTJweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogMjZweCA0NXB4IDhweCA4cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmxvbmdhbnN3ZXIge1xyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNTZweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogNnB4IDhweCA2cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvcm0sXHJcbiAgLmZvcm1XcmFwIHtcclxuICAgIC5lcnJvciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDRweCAwO1xyXG4gICAgICBwYWRkaW5nOiAycHggNHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0td3JvbmcpO1xyXG4gICAgICAmOmVtcHR5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgICAuc3R5bGVkRmllbGRzZXQsXHJcbiAgICAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcblxyXG4gICAgICAuZmllbGRzZXRHcmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkeHhzKSB7XHJcbiAgICAuY29udHJvbFdyYXBwZXIge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJHRpbnkpIHtcclxuICAgIC5jb250cm9sV3JhcHBlciB7XHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmllbGRXcmFwcGVyLFxyXG4udW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlcixcclxuLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSxcclxuLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQge1xyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbFdyYXBwZXIsXHJcbi5hZGctdW1icmFjby1mb3Jtcy1jb250cm9sd3JhcHBlciB7XHJcbiAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gID4gKjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zdHlsZWRGaWVsZHNldCxcclxuLnVtYnJhY28tZm9ybXMtZmllbGRzZXQge1xyXG4gID4gOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtZm9ybXNcIjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5cclxuI3JlcXVpcmVtZW50cyB7XHJcbiAgbGkge1xyXG4gICAgJi52YWxpZCB7XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcImFcIjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcInNoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5AdXNlIFwic2hhcmVkLW1peGluc1wiIGFzICo7XHJcblxyXG5AbGF5ZXIgcmVzZXQge1xyXG4gIC8vIEJveCBzaXppbmcgcnVsZXNcclxuICAqLFxyXG4gICo6OmJlZm9yZSxcclxuICAqOjphZnRlciB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuXHJcbiAgaHRtbCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDBkdmg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBib2R5IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7IC8vIENoYW5naW5nIHRoaXMgd2lsbCBicmVhayB0aGUgdmFsdWUgb2YgLS1zY3JvbGxiYXItd2lkdGgsIHNvIHByb2NlZWQgd2l0aCBjYXV0aW9uLlxyXG4gICAgaGVpZ2h0OiAxMDBkdmg7XHJcbiAgfVxyXG5cclxuICAvLyBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoXHJcbiAgaW1nIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gTmF0dXJhbCBmbG93IGFuZCByaHl0aG0gaW4gYXJ0aWNsZXMgYnkgZGVmYXVsdFxyXG4gIGFydGljbGUgPiAqICsgKiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgfVxyXG5cclxuICAvLyBJbmhlcml0IGZvbnRzIGZvciBpbnB1dHMgYW5kIGJ1dHRvbnNcclxuICBpbnB1dCxcclxuICBidXR0b24sXHJcbiAgdGV4dGFyZWEsXHJcbiAgc2VsZWN0IHtcclxuICAgIGZvbnQ6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICBoMSxcclxuICBoMixcclxuICBoMyxcclxuICBoNCxcclxuICBoNSxcclxuICBoNiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICB9XHJcblxyXG4gIHAge1xyXG4gICAgbWFyZ2luOiAwcHggMCAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcclxuICAgICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XHJcbiAgfVxyXG5cclxuICBvbCxcclxuICB1bCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgbWFyZ2luOiAwLjRlbSAwIDAuNzVlbTtcclxuICB9XHJcblxyXG4gIGxpIHtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcclxuICB9XHJcblxyXG4gIGJ1dHRvbiB7XHJcbiAgICBhcHBlYXJhbmNlOiBub25lO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyOiAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gIH1cclxuICBpZnJhbWUge1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gIH1cclxufVxyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gIGJvZHkge1xyXG4gICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNpYy1mb250KTtcclxuICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgY29sb3I6IHZhcigtLWxpbmspO1xyXG4gICAgcGFkZGluZy1pbmxpbmU6IDJweDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7O1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMXB4O1xyXG5cclxuICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhcmdldEJsYW5rTm90aWZpZXIge1xyXG4gICAgICBAaW5jbHVkZSBzY3JlZW5SZWFkZXI7XHJcbiAgICB9XHJcbiAgICAuaWNvbi1tYWlsIHtcclxuICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tZXh0ZXJuYWwtbGluayB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBhY3RpdmVab25lKFwiaG9tZVwiKSB7XHJcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9jdXMgc3R5bGVzXHJcbio6bm90KGE6bm90KFtyb2xlPVwiYnV0dG9uXCJdKSkge1xyXG4gICY6Zm9jdXMtdmlzaWJsZSxcclxuICAmLmZvY3VzLXZpc2libGUge1xyXG4gICAgb3V0bGluZS1jb2xvcjogdmFyKC0tZm9jdXMtb3V0bGluZS1jb2xvcikgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmUtc3R5bGU6IHZhcigtLWZvY3VzLW91dGxpbmUtc3R5bGUpICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lLXdpZHRoOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXdpZHRoKSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tZm9jdXMtb3V0bGluZS1vZmZzZXQpIHZhcigtLWZvY3VzLXNoYWRvdy1jb2xvcikgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi5zb2NpYWxNZWRpYUxvZ2lucyB7XHJcbiAgYTpmb2N1cy12aXNpYmxlLFxyXG4gIGEuZm9jdXMtdmlzaWJsZSB7XHJcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS1mb2N1cy1vdXRsaW5lLWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWZvY3VzLW91dGxpbmUtb2Zmc2V0KSAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZS1zdHlsZTogdmFyKC0tZm9jdXMtb3V0bGluZS1zdHlsZSkgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmUtd2lkdGg6IHZhcigtLWZvY3VzLW91dGxpbmUtd2lkdGgpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgdmFyKC0tZm9jdXMtc2hhZG93LWNvbG9yKSAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gQW5pbWF0aW9uXHJcbmJvZHlbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPVwidHJ1ZVwiXSB7XHJcbiAgKixcclxuICAqOjpiZWZvcmUsXHJcbiAgKjo6YWZ0ZXIge1xyXG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcclxuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xyXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcbi8vIFdlJ3JlIG5vIGxvbmdlciByZWFkaW5nIHRoZSBicm93c2VyIHByZWZlcmVuY2UgYW5kIHJlbHlpbmcgc29sZWx5IG9uIHRoZSB1c2VyJ3Mgc3RvcmVkIHByZWZlcmVuY2UuXHJcbi8vIEtlZXBpbmcgdGhpcyBjb2RlIGNvbW1lbnRlZCBvdXQgZm9yIHBvc3Rlcml0eSBiZWNhdXNlIHRoZSBqYXZhc2NyaXB0IGxvZ2ljIHdhcyB0cmlja3kgYW5kIGluIGNhc2Ugd2UgbmVlZCBpdCBhZ2Fpbi5cclxuLy8gQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuLy8gICBib2R5Om5vdChbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPVwiZmFsc2VcIl0pIHtcclxuLy8gICAgICosXHJcbi8vICAgICAqOjpiZWZvcmUsXHJcbi8vICAgICAqOjphZnRlciB7XHJcbi8vICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcclxuLy8gICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xyXG4vLyAgICAgfVxyXG4vLyAgIH1cclxuLy8gfVxyXG5cclxuLy8gU2tpcCBCdXR0b25zXHJcbi5zbGlkZVNraXAsXHJcbi5ob21lU2tpcCxcclxuLm1lbWJlcnNoaXBTa2lwIHtcclxuICBAaW5jbHVkZSBzY3JlZW5SZWFkZXI7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBAaW5jbHVkZSBmb2N1cyB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDEwcHg7XHJcbiAgICBsZWZ0OiAxMHB4O1xyXG4gICAgei1pbmRleDogOTk5OTk5OTk5OTk5OTk5O1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgY2xpcC1wYXRoOiBpbml0aWFsO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1icmlnaHQpO1xyXG4gIH1cclxufVxyXG5cclxuLmhvbWVTa2lwIHtcclxuICBAaW5jbHVkZSBhY3RpdmVab25lKFwiaG9tZVwiKSB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICB9XHJcbn1cclxuXHJcbi5zbGlkZVNraXAge1xyXG4gIEBpbmNsdWRlIGFjdGl2ZVpvbmUoXCJzbGlkZXNcIikge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4ubWVtYmVyc2hpcFNraXAge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5cclxuXHJcblxyXG5Aa2V5ZnJhbWVzIGF0dGVudGlvbldpZ2dsZSB7XHJcbiAgLyogaWRsZSAqL1xyXG4gIDAlLFxyXG4gIDg4JSxcclxuICAxMDAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gIH1cclxuXHJcbiAgLyogcXVpY2sgd2lnZ2xlIGJ1cnN0ICovXHJcbiAgOTAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKTtcclxuICB9XHJcblxyXG4gIDkyJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcclxuICB9XHJcblxyXG4gIDk0JSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMmRlZyk7XHJcbiAgfVxyXG5cclxuICA5NiUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMmRlZyk7XHJcbiAgfVxyXG5cclxuICA5OCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGF0dGVudGlvbldpZ2dsZUJvdW5jeSB7XHJcbiAgMCUsXHJcbiAgODglLFxyXG4gIDEwMCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZykgc2NhbGUoMSk7XHJcbiAgfVxyXG5cclxuICA5MCUge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTRkZWcpIHNjYWxlKDEuMDMpO1xyXG4gIH1cclxuXHJcbiAgOTIlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDRkZWcpIHNjYWxlKDEuMDMpO1xyXG4gIH1cclxuXHJcbiAgOTQlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zZGVnKSBzY2FsZSgxLjAyKTtcclxuICB9XHJcblxyXG4gIDk2JSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKSBzY2FsZSgxLjAyKTtcclxuICB9XHJcblxyXG4gIDk4JSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKSBzY2FsZSgxKTtcclxuICB9XHJcbn0iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1nbG9iYWxcIjtcclxuXHJcbmh0bWwge1xyXG4gIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZTtcclxufVxyXG5cclxuLy8gTUVESUEgUVVFUklFUyAmIEJST1dTRVItU1BFQ0lGSUMgQURKVVNUTUVOVFMgQkVMT1cgLy9cclxuLy8gLnN2Z0NsaXBQYXRoc0hvbGRlcntcclxuLy8gICBoZWlnaHQ6IDBweDtcclxuLy8gICB3aWR0aDogMHB4O1xyXG4vLyBvdmVyZmxvdzogaGlkZGVuO1xyXG4vLyB9IiwiQHVzZSBcInNoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5cclxud2lsbGlzLXpvbmUge1xyXG4gIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG5baW5lcnRdIHtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG53aWxsaXMtZGlhbG9nOm5vdChbZGF0YS1vcGVuPVwidHJ1ZVwiXSkge1xyXG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gSGlkZSBodG1sIHNjcm9sbGJhciB3aGVuIHRoZXJlJ3MgYW4gYWN0aXZlIGRpYWxvZy5cclxuaHRtbFtkYXRhLWRpYWxvZy1oaWRlLW92ZXJmbG93PVwidHJ1ZVwiXSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbGF5ZXIgYmFzZSB7XHJcbiAgLmRpYWxvZ0JhY2tkcm9wIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwdnc7XHJcbiAgICBoZWlnaHQ6IDEwMGR2aDtcclxuICAgIEBzdXBwb3J0cyAoaGVpZ2h0OiAxMDBkdmgpIHtcclxuICAgICAgaGVpZ2h0OiAxMDBkdmg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNsaWRlICYge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7IC8vQXBwbGllZCB0aGlzIGJlY2F1c2Ugb2YgaXNzdWVzIHJlc3BvbnNpdmxleSB3aXRoIGRpYWxvZ3Mgd2l0aGluIHRoZSBzbGlkZXMgYXQgc21hbGxlciBzY3JlZW4gc2l6ZXMuIElmIGl0IG1lc3NlcyB0aGluZ3MgdXAsIHdlIGNhbiByZW1vdmUuIC0gS1NcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5kaWFsb2dJbm5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgfVxyXG5cclxuICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPVwibW9kYWxcIl0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG5cclxuICAgIGRpdltyb2xlPVwiZGlhbG9nXCJdIHtcclxuICAgICAgd2lkdGg6IDU4MHB4O1xyXG4gICAgICBtYXJnaW46IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmRpYWxvZ0lubmVyIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1cImxhcmdlTW9kYWxcIl0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG5cclxuICAgIGRpdltyb2xlPVwiZGlhbG9nXCJdIHtcclxuICAgICAgd2lkdGg6IDgwMHB4O1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xyXG4gICAgICBtYXJnaW46IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLmRpYWxvZ0lubmVyIHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1cInNoYWRlXCJdIHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgICAgLmRpYWxvZ0xhYmVsIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGlhbG9nQ29udGVudCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmRpYWxvZ0FjdGlvbnMge1xyXG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZGlhbG9nSW5uZXIge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1cInNpZGViYXJcIl0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG5cclxuICAgICZbZGF0YS1kaWFsb2ctc3R5bGU9XCJzaWRlYmFyTGVmdFwiXSB7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtZGlhbG9nLXN0eWxlPVwic2lkZWJhclJpZ2h0XCJdIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuICAgIH1cclxuXHJcbiAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgIHdpZHRoOiA0NDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtkYXRhLWRpYWxvZy1zdHlsZV49XCJmdWxsXCJdIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcclxuICAgIFtkYXRhLWRpYWxvZy1zdHlsZV49XCJzaWRlYmFyXCJdIHtcclxuICAgICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1pbi13aWR0aDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIFtkYXRhLWRpYWxvZy1zdHlsZT1cIm1vZGFsXCJdIHtcclxuICAgICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBBbmltYXRpb25zXHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPVwiZ2xhY2lhbFwiXSB7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZ2xhY2lhbDtcclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1cInZlcnlTbG93XCJdIHtcclxuICBhbmltYXRpb24tZHVyYXRpb246ICR2ZXJ5U2xvdztcclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1cInNsb3dcIl0ge1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJHNsb3c7XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9XCJtZWRpdW1cIl0ge1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJG1lZGl1bTtcclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1cImZhc3RcIl0ge1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJGZhc3Q7XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9XCJ2ZXJ5RmFzdFwiXSB7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmVyeUZhc3Q7XHJcbn1cclxuXHJcbi5kaWFsb2dCYWNrZHJvcCB7XHJcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuICBhbmltYXRpb24tZHVyYXRpb246ICR2ZXJ5RmFzdDtcclxuXHJcbiAgJi5pbiB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG4gIH1cclxuXHJcbiAgJi5vdXQge1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZU91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZVRvcEluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVUb3BJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVUb3BJbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlVG9wT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVUb3BPdXRcIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlVG9wT3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVCb3R0b21JbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVCb3R0b21JblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVCb3R0b21JbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlQm90dG9tT3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZUJvdHRvbU91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVCb3R0b21PdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZVJpZ2h0SW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJmYWRlUmlnaHRJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVSaWdodEluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVSaWdodE91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVSaWdodE91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVSaWdodE91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlTGVmdEluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVMZWZ0SW5cIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlTGVmdEluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVMZWZ0T3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVMZWZ0T3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUxlZnRPdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVUb3BJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlVG9wSW5cIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZVRvcEluO1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc20pIHtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbUluO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVRvcE91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlVG9wT3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVUb3BPdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVCb3R0b21JbiB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVCb3R0b21JblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlQm90dG9tSW47XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVCb3R0b21PdXQge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNTAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlQm90dG9tT3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVCb3R0b21PdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVSaWdodEluIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJzbGlkZVJpZ2h0SW5cIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZVJpZ2h0SW47XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVSaWdodE91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVSaWdodE91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlUmlnaHRPdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVMZWZ0SW4ge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJzbGlkZUxlZnRJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlTGVmdEluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlTGVmdE91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlTGVmdE91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlTGVmdE91dDtcclxufVxyXG4iLCIvLyBXaWR0aHNcclxuJHRlZW55OiAzODBweDtcclxuJHRpbnk6IDQ1MHB4O1xyXG4keHhzOiA1MjBweDtcclxuJHhzOiA2NTBweDtcclxuJHNtOiA4MDBweDtcclxuJHR3ZWVuOiA5MDBweDtcclxuJG1kOiAxMDUwcHg7XHJcbiRtaWQ6IDExODBweDtcclxuJGxnOiAxMjgwcHg7XHJcbiR4bDogMTQyNXB4O1xyXG4keHhsOiAxNjAwcHg7XHJcblxyXG4kbGdIOiA4MDBweDtcclxuJHNtSDogNjIwcHg7XHJcbiR4c0g6IDU3MHB4O1xyXG5cclxuLy8gV2lkdGhzXHJcbiR0ZWVueTogMzkwcHg7XHJcbiRtaW5pOiA0MjBweDtcclxuJHRpbnk6IDQ3MHB4O1xyXG4keHhzOiA1MjBweDtcclxuJHhzOiA2NzBweDtcclxuJHNtOiA4MjVweDtcclxuJHR3ZWVuOiA5MjBweDtcclxuJG1kOiAxMDgwcHg7XHJcbiRtZWg6IDExODBweDtcclxuJGxnOiAxMjgwcHg7XHJcbiRtaWQ6IDE0MDBweDtcclxuJHhsOiAxNTI1cHg7XHJcbiR4eGw6IDE2MDBweDtcclxuXHJcblxyXG4kcnNwOiA5MjBweDtcclxuXHJcblxyXG4keGxIOiAxMDAwcHg7XHJcbiRsZ0g6IDgyNXB4O1xyXG4kbWRIOiA3MDBweDtcclxuJHNtSDogNjIwcHg7XHJcbiR4c0g6IDUwMHB4O1xyXG5cclxuLy8gQ29udGFpbmVyIFdpZHRoc1xyXG4keHNDb250YWluZXI6IDQwMHB4O1xyXG4kc21Db250YWluZXI6IDUwMHB4O1xyXG4kbWRDb250YWluZXI6IDc3MHB4O1xyXG4kbGdDb250YWluZXI6IDEwMDBweDtcclxuJHhsQ29udGFpbmVyOiAxMjAwcHg7XHJcblxyXG4vLyBBbmltYXRpb24gU3BlZWRzIC0gdGhlc2UgYWxzbyBuZWVkIHRvIGJlIGNoYW5nZWQgaW4gYW5pbWF0aW9uLnRzIGlmIG1vZGlmaWVkXHJcbiR2ZXJ5RmFzdDogMjAwbXM7XHJcbiRmYXN0OiAzMDBtcztcclxuJG1lZGl1bTogNTAwbXM7XHJcbiRzbG93OiA4MDBtcztcclxuJHZlcnlTbG93OiAxMDAwbXM7XHJcbiRnbGFjaWFsOiAzMDAwbXM7XHJcbiIsIkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5AdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLWRpYWxvZ3NcIjtcclxuXHJcbi5kaWFsb2dCYWNrZHJvcCB7XHJcbiAgYmFja2dyb3VuZDogdmFyLXJnYmEoLS13ZWJlci1taWRuaWdodCwgMC44KTtcclxuICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWRhcmstZ3JleSkgdmFyKC0tbGlnaHQtZ3JleSk7XHJcbn1cclxuLmNsb3NlRGlhbG9ne1xyXG4gIEBpbmNsdWRlIGJ1dHRvbigpO1xyXG59XHJcblxyXG4uZGlhbG9nQ29udGVudCB7XHJcbiAgbWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi5kaWFsb2dBY3Rpb25zLmdlbmVyYXRlZCB7XHJcbiAgYnV0dG9uLmNsb3NlRGlhbG9nIHtcclxuICAgIC5pY29uOmJlZm9yZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICBjb250ZW50OiBcImJcIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuYnV0dG9uLmNsb3NlRGlhbG9nIHtcclxuICAuaWNvbjpiZWZvcmUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgIGNvbnRlbnQ6IFwiYlwiO1xyXG4gIH1cclxufVxyXG5cclxuLmRpYWxvZ0xhYmVsIGgyIHtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG59XHJcblxyXG5bZGF0YS1kaWFsb2ctc3R5bGU9XCJtb2RhbFwiXSB7XHJcbiAgcGFkZGluZzogMjBweDtcclxuICAuc2FmYXJpICYge1xyXG4gICAgcGFkZGluZzogMjBweCAyMHB4IDE1MHB4O1xyXG4gIH1cclxuICAuZGlhbG9nSW5uZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLXNub3ctZHJpZnQpOyAgXHJcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA1cHggdmFyKC0tYmVlLWJhbG0pLCAwIDAgMCA4cHggdmFyKC0tc29mdC1sYXZlbmRhcik7XHJcblxyXG4gIH1cclxuICBidXR0b24uY2xvc2VEaWFsb2cge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gIC5pY29uOmJlZm9yZSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xyXG4gICAgY29udGVudDogXCJiXCI7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxufVxyXG59XHJcblxyXG5bZGF0YS1kaWFsb2ctc3R5bGU9XCJsYXJnZU1vZGFsXCJdIHtcclxuICAuc2FmYXJpICYge1xyXG4gICAgcGFkZGluZzogMjBweCAyMHB4IDE1MHB4O1xyXG4gIH1cclxuICAuZGlhbG9nSW5uZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLXB1cnBsZS1jbG91ZCk7XHJcbiAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMTNweCB2YXIoLS1zb2Z0LWxhdmVuZGFyKSwgMCAwIDAgMTZweCB2YXIoLS1ncmFwZS1qdWljZSk7XHJcbiAgfVxyXG5cclxuICAuZGlhbG9nTGFiZWwge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgaDIge1xyXG4gICAgICBAaW5jbHVkZSB6ZXJvTWFyZ1BhZDtcclxuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWRpYWxvZy1zdHlsZT1cInNoYWRlXCJdIHtcclxuICAuZGlhbG9nSW5uZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSA7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHVycGxlLWNsb3VkKTtcclxuICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcblxyXG4gICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tcHVycGxlLWNsb3VkKSk7XHJcbiAgICAgYm94LXNoYWRvdzogMCAwIDAgOHB4IHZhcigtLWdyYXBlLWp1aWNlKTtcclxuICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgIC5kaWFsb2dMYWJlbCB7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuICAgIC5kaWFsb2dBY3Rpb25zIHtcclxuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBnYXA6IDdweDtcclxuICAgIH1cclxuICAgIC5jbG9zZURpYWxvZyB7XHJcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbih2YXIoLS1icmFuZC1icmlnaHQpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWRpYWxvZy1zdHlsZV49XCJzaWRlYmFyXCJdIHtcclxuICAuZGlhbG9nSW5uZXIge1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxuICB9XHJcbiAgJltkYXRhLWRpYWxvZy1zdHlsZT1cInNpZGViYXJMZWZ0XCJdIHtcclxuICAgIC5kaWFsb2dJbm5lciB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDA7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtZGlhbG9nLXN0eWxlPVwic2lkZWJhclJpZ2h0XCJdIHtcclxuICAgIC5kaWFsb2dJbm5lciB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cykgMCAwIHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5bZGF0YS1kaWFsb2ctc3R5bGVePVwiZnVsbFwiXSB7XHJcbiAgLmRpYWxvZ0lubmVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uc2ltcGxlRGlhbG9nIHtcclxuICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0KTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG59XHJcblxyXG4jcmV0dXJuTWVzc2FnZSB7XHJcbiAgLmNsb3NlRGlhbG9nIHtcclxuICAgIC5pY29uIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkeHMpIHtcclxuICBbZGF0YS1kaWFsb2ctc3R5bGVePVwic2lkZWJhclwiXSB7XHJcbiAgICAmW2RhdGEtZGlhbG9nLXN0eWxlPVwic2lkZWJhckxlZnRcIl0ge1xyXG4gICAgICAuZGlhbG9nSW5uZXIge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtZGlhbG9nLXN0eWxlPVwic2lkZWJhclJpZ2h0XCJdIHtcclxuICAgICAgLmRpYWxvZ0lubmVyIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBbZGF0YS1kaWFsb2ctc3R5bGU9XCJtb2RhbFwiXSB7XHJcbiAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgICYucmVwb3J0TmVlZGVkIHtcclxuICAgICAgICAvL1VuaXF1ZSBzdHlsaW5nIGZvciB0aGUgUmVwb3J0IGEgQmFycmllciBmZWF0dXJlLiAtIERGVFxyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkBmb3J3YXJkIFwiLi4vX2dsb2JhbC9zaGFyZWQtbWl4aW5zXCI7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1taXhpbnNcIiBhcyAqO1xyXG5AdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5AdXNlIFwic2FzczpzdHJpbmdcIjtcclxuXHJcbkBtaXhpbiB0d2lua2xlQ2x1c3RlcigpIHtcclxuICAtLXN0YXI6IDEycHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIsXHJcbiAgc3Bhbjo6YmVmb3JlLHNwYW46OmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgYXNwZWN0LXJhdGlvOiA3MCAvIDY5O1xyXG4gICAgIHdpZHRoOiB2YXIoLS1zdGFyKTtcclxuICAgIC8vIGhlaWdodDogJHNpemU7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xyXG4gICAgLy8gQG1lZGlhIChtYXgtd2lkdGg6ICRsZyl7XHJcbiAgICAvLyAgIHRyYW5zbGF0ZTogLTdweCAwO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgLy8gc3RhciAxXHJcbiAgJjo6YmVmb3JlIHtcclxuICAgIC0tc3RhcjogMThweDtcclxuICAgIGxlZnQ6IDAlO1xyXG4gICAgdG9wOiAxcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc3Rhci10aGluLnN2ZycpO1xyXG4gICAgYW5pbWF0aW9uOiB0d2lua2xlMSAyLjRzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwcztcclxuXHJcbiAgICAvLyBAbWVkaWEgKG1heC13aWR0aDogJGxnKXtcclxuICAgIC8vICAgLS1zdGFyOiAxNnB4O1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgLy8gc3RhciAyXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgbGVmdDogMjdweDtcclxuICAgIHRvcDogLTE0cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvc3Rhci10aGljay5zdmcnKTtcclxuICAgIGFuaW1hdGlvbjogdHdpbmtsZTIgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICBhbmltYXRpb24tZGVsYXk6IC0wLjhzO1xyXG4gICAgLy8gQG1lZGlhIChtYXgtd2lkdGg6ICRsZyl7XHJcbiAgICAvLyAgIGxlZnQ6IDIwcHg7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICAvLyBzdGFyIDMgKHVzZXMgaW5uZXIgc3BhbilcclxuICBzcGFuOjpiZWZvcmUge1xyXG4gICAgbGVmdDogMTBweDtcclxuICAgIHRvcDogMzNweDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9zdGFyLXRoaWNrLnN2ZycpO1xyXG4gICAgYW5pbWF0aW9uOiB0d2lua2xlMyAycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcclxuICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjZzO1xyXG4gICAgLy8gIEBtZWRpYSAobWF4LXdpZHRoOiAkbGcpe1xyXG4gICAgLy8gICB0b3A6IDI4cHg7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICAvLyBzdGFyIDMgKHVzZXMgaW5uZXIgc3BhbilcclxuICBzcGFuOjphZnRlciB7XHJcbiAgICAvLyBsZWZ0OiAwO1xyXG4gICAgLy8gdG9wOjBweDtcclxuICAgIC8vIGhlaWdodDogNTlweDtcclxuICAgIC8vIHdpZHRoOiAzNnB4O1xyXG4gICAgLy8gYmFja2dyb3VuZDogdmFyKC0tc25vdy1kcmlmdCk7XHJcbiAgfVxyXG4gIEBjb250YWluZXIgc2xpZGVDb3B5IChtYXgtd2lkdGg6IDYzNXB4KXtcclxuICAgICY6OmJlZm9yZSxcclxuICAgICY6OmFmdGVyLFxyXG4gICAgc3Bhbjo6YmVmb3JlLHNwYW46OmFmdGVyIHtcclxuICAgICAgdHJhbnNsYXRlOiAtN3B4IDA7XHJcbiAgICB9XHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAtLXN0YXI6IDE2cHg7XHJcbiAgICB9XHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICB9XHJcbiAgICBzcGFuOjpiZWZvcmUge1xyXG4gICAgICB0b3A6IDI4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuQG1peGluIGJnUG9zKCkge1xyXG4gICZbZGF0YS1iZy1wb3M9XCJ0b3AgbGVmdFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAwJTtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XHJcbiAgfVxyXG4gICZbZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAwJTtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cImNlbnRlciBsZWZ0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cImNlbnRlclwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIHJpZ2h0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIGxlZnRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgMTAwJTtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgfVxyXG4gICZbZGF0YS1iZy1wb3M9XCJib3R0b20gcmlnaHRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSAxMDAlO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIGJ1dHRvbigkY29sb3I6IHZhcigtLWJyYW5kLWRhcmspLCAkaG92ZXJDb2xvcjogdmFyKC0taG92ZXIpKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMC44ZW0gMS4zZW07XHJcbiAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIC8vIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgLy8gYm9yZGVyLWNvbG9yOiB2YXItZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICBsaW5lLWhlaWdodDogMS4xZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xyXG4gIGxldHRlci1zcGFjaW5nOiAuMDI1ZW07XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBvdXRsaW5lLW9mZnNldDogMDtcclxuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XHJcbiAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoJGNvbG9yKTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cclxuICAuaWNvbiB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRob3ZlckNvbG9yKTtcclxuICAgIC8vIGJvcmRlci1jb2xvcjogdmFyLWxpZ2h0ZW4oJGhvdmVyQ29sb3IsIDIwJSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDVweCAkY29sb3I7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBGb3IgYnV0dG9ucyB0aGF0IGZlYXR1cmUgYm90aCBhbiBpY29uIGFuZCB0ZXh0LiBVc3VhbGx5IHNlZW4gaW4gZGlhbG9ncy5cclxuLy8vIEBwYXJhbSB7bnVtfSAkc2l6ZSAtIFRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSBidXR0b24uIERvZXMgbm90IGFwcGx5IHdoZW4gYnV0dG9uIG9ubHkgY29udGFpbnMgdGV4dC5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSBbdG9vbFRpcF0gLSBQb3NzaWJsZSB2YWx1ZXM6IHRvb2xUaXAsIGljb24sIHRleHQuXHJcbkBtaXhpbiBhY3Rpb25CdXR0b24oJGNvbG9yOiB2YXIoLS1wdXJwbGUtY2xvdWQpLCAkaG92ZXJDb2xvcjogdmFyKC0taG92ZXIpLCAkc2l6ZTogNTBweCwgJHR5cGU6IHRvb2xUaXApIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyOiA1cHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1jaXJjbGUpO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgkY29sb3IpO1xyXG4gIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICBAaWYgJHR5cGUgPT0gdG9vbFRpcCB7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgIC5pY29uIHtcclxuICAgICAgLy8gZm9udC1zaXplOiBjYWxjKCN7JHNpemV9ICogMC40KTtcclxuICAgICAgLy9mb250LXNpemU6ICN7JHNpemV9O1xyXG4gICAgfVxyXG4gICAgLnRleHQge1xyXG4gICAgICBAaW5jbHVkZSB0b29sVGlwO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgIC50ZXh0IHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHNjYWxlOiAxO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkdHlwZSA9PSBpY29uIHtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBmb250LXNpemU6IGNhbGMoI3skc2l6ZX0gKiAwLjQpO1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgfVxyXG4gICAgLnRleHQge1xyXG4gICAgICBAaW5jbHVkZSBzY3JlZW5SZWFkZXI7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkdHlwZSA9PSB0ZXh0IHtcclxuICAgIHBhZGRpbmc6IDAuNWVtIDFlbTtcclxuICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdyk7XHJcbiAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgkaG92ZXJDb2xvcik7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gb3BlbkFsbFRvZ2dsZUJ1dHRvbigkaW5uZXItc2l6ZTogMjBweCkge1xyXG4gIC8vIFRoZXNlIHBhcmFtZXRlciBjYWxjdWxhdGlvbnMgZW5zdXJlIHRoYXQgY2hhbmdpbmcgdGhlICRpbm5lci1zaXplIHZhbHVlIGtlZXBzIHRoZSB0b2dnbGUgYnV0dG9uJ3Mgc3BhY2luZyBiZXR3ZWVuIGl0cyBlbGVtZW50cyBjb25zaXN0ZW50LlxyXG4gICR0b2dnbGUtaGVpZ2h0OiAkaW5uZXItc2l6ZSArIDZweDtcclxuICAkdG9nZ2xlLXdpZHRoOiAkaW5uZXItc2l6ZSAqIDIuMjU7XHJcbiAgJHRvZ2dsZS1yYWRpdXM6IG1hdGguZGl2KCR0b2dnbGUtaGVpZ2h0LCAyKTsgLy8gVGhpcyBkaXZpc2lvbiBlbnN1cmVzIHRoZSBwaWxsIHNoYXBlLiBZb3UgY2FuIGFkanVzdCB0aGlzIHRvIHlvdXIgcHJvamVjdCdzIG5lZWRzIGJ5IHJlcGxhY2luZyB3aXRoIGEgcGl4ZWwgdmFsdWUuXHJcbiAgJHBhZGRpbmc6ICgkaW5uZXItc2l6ZSAqIDAuNikgKCRpbm5lci1zaXplICogMC43NSkgKCRpbm5lci1zaXplICogMC42KSAoJHRvZ2dsZS13aWR0aCArICRpbm5lci1zaXplICogMC41ICsgMTBweCk7XHJcblxyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAyMHB4IGF1dG8gMTVweDtcclxuICBwYWRkaW5nOiAkcGFkZGluZztcclxuICBmb250LXNpemU6IDFlbTtcclxuICBmb250LXdlaWdodDogODAwO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyZXkpO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0LWdyZXkpO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICB0cmFuc2l0aW9uOiAkZmFzdDtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblxyXG4gIC5idG4ge1xyXG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIGxlZnQ6ICRpbm5lci1zaXplICogMC41O1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgaGVpZ2h0OiAkdG9nZ2xlLWhlaWdodDtcclxuICAgIHdpZHRoOiAkdG9nZ2xlLXdpZHRoO1xyXG4gICAgYm9yZGVyLXJhZGl1czogJHRvZ2dsZS1yYWRpdXM7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0KTtcclxuXHJcbiAgICAuaW5uZXIge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAjeyRpbm5lci1zaXplICsgM3B4fSk7XHJcbiAgICAgIGhlaWdodDogJGlubmVyLXNpemU7XHJcbiAgICAgIHdpZHRoOiAkaW5uZXItc2l6ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogbWF0aC5kaXYoJGlubmVyLXNpemUsIDIpOyAvL1RoaXMgZGl2aXNpb24gZW5zdXJlcyB0aGUgdG9nZ2xlJ3MgaW5uZXIgaXMgcm91bmQuIFlvdSBjYW4gYWRqdXN0IHRoaXMgdG8geW91ciBwcm9qZWN0J3MgbmVlZHMgYnkgcmVwbGFjaW5nIHdpdGggYSBwaXhlbCB2YWx1ZS5cclxuICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICAgIHRyYW5zaXRpb246IHJpZ2h0ICRmYXN0O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJlthcmlhLXByZXNzZWQ9XCJ0cnVlXCJdIHtcclxuICAgIC50b2dnbGUge1xyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIHJpZ2h0OiA0cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgIC50b2dnbGUge1xyXG4gICAgICAuaW5uZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG4ge1xyXG4gICAgICBjb2xvcjogY2FsYy1jb250cmFzdCgtLWJyYW5kLWJyaWdodCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gSGlkZXMgdGV4dCBhbmQgcHJlcHMgZm9yIGhvdmVyLiBCZWNhdXNlIHRoaXMgbWl4aW4gaXMgdXN1YWxseSBiZWluZyB1c2VkIGluIGEgYnV0dG9uLFxyXG4vLy8gdGhlIGhvdmVyIHN0eWxlIG5lZWRzIHRvIGJlIG1hbnVsbHkgc2V0IGluIHdoYXRldmVyIHBhcmVudCB0aGlzIG1peGluIGlzIGJlaW5nIHVzZWQgaW4uXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGVcclxuLy8vICAgYnV0dG9uIHtcclxuLy8vICAgICAudGV4dCB7XHJcbi8vLyAgICAgICBAaW5jbHVkZSB0b29sVGlwKCRkaXI6IHRvcCwgJGNvbG9yOiB2YXIoLS1ibHVlKSwgJG9mZnNldDogMTBweCk7XHJcbi8vLyAgICAgfVxyXG4vLy8gICAgIEBpbmNsdWRlIGhvdmVyV2l0aEZvY3VzIHtcclxuLy8vICAgICAgIC50ZXh0IHtcclxuLy8vICAgICAgICAgLy8gQnkgZGVmYXVsdCB0aGVzZSBhcmUgdGhlIHR3byBwcm9wZXJ0aWVzIHRoYXQgbmVlZCB0byBiZSBvdmVyd3JpdHRlbi5cclxuLy8vICAgICAgICAgb3BhY2l0eTogMTtcclxuLy8vICAgICAgICAgc2NhbGU6IDE7XHJcbi8vLyAgICAgICB9XHJcbi8vLyAgICAgfVxyXG4vLy8gICB9XHJcbi8vL1xyXG4vLy8gQHRvZG8gQWRkIGEgdG9vbFRpcFNob3cgbWl4aW4gdGhhdCBvdmVycmlkZXMgYWxsIHRoZSBwcm9wZXJ0aWVzIGxpc3RlZCBpbiB0b29sVGlwLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRkaXIgW3RvcCB8IHRvcC1sZWZ0IHwgdG9wLXJpZ2h0XSBbYm90dG9tIHwgYm90dG9tLWxlZnQgfCBib3R0b20tcmlnaHRdIFtsZWZ0IHwgcmlnaHRdXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgW3ZhcigtLWxpZ2h0KV0gLSBUaGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdGhlIHRvb2wgdGlwLlxyXG4vLy8gQHBhcmFtIHtib29sZWFufSAkYXJyb3cgW3RydWVdIC0gRHJhd3MgYSB0cmlhbmdsZSB0aGF0IHBvaW50cyB0b3dhcmRzIHRoZSBwYXJlbnQuXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJG9mZnNldCBbNXB4XSAtIFRoZSBhbW91bnQgdGhlIGFycm93IHNob3VsZCBiZSBzaGlmdGVkIGlmIHRpcCBpc24ndCBjZW50ZXJlZC5cclxuLy8vIEBzaW5jZSBGdWd1IDguMFxyXG5AbWl4aW4gdG9vbFRpcCgkZGlyOiBib3R0b20sICRjb2xvcjogdmFyKC0tYWNjZW50KSwgJGFycm93OiB0cnVlLCAkb2Zmc2V0OiA4cHgpIHtcclxuICAkZGlzdGFuY2U6IDJweDtcclxuICAkYm9yZGVyV2lkdGg6IDJweDtcclxuICAkYm9yZGVyQ29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAkYXJyb3dTaXplOiAxMHB4O1xyXG4gICRib3JkZXJBcnJvd1NpemU6ICRhcnJvd1NpemUgKyAoJGJvcmRlcldpZHRoICogMik7XHJcbiAgJGNvbG9yOiB2YWxpZGF0ZS1hbmQtd3JhcC1pZi1jdXN0b20tcHJvcCgkY29sb3IpO1xyXG5cclxuICAkYm94VHJhbnNsYXRpb246IDAgLTUwJTtcclxuICAkYXJyb3dUcmFuc2xhdGlvbjogMCAtNTAlO1xyXG4gICRhbGlnbjogY2VudGVyO1xyXG4gICRzaWRlOiBib3R0b207XHJcbiAgQGlmIHN0cmluZy5pbmRleCgkZGlyLCBcImJvdHRvbVwiKSBvciBzdHJpbmcuaW5kZXgoJGRpciwgXCJ0b3BcIikge1xyXG4gICAgQGlmIHN0cmluZy5pbmRleCgkZGlyLCBcImJvdHRvbVwiKSB7XHJcbiAgICAgICRzaWRlOiBib3R0b207XHJcbiAgICB9IEBlbHNlIGlmIHN0cmluZy5pbmRleCgkZGlyLCBcInRvcFwiKSB7XHJcbiAgICAgICRzaWRlOiB0b3A7XHJcbiAgICB9XHJcbiAgICBAaWYgc3RyaW5nLmluZGV4KCRkaXIsIFwibGVmdFwiKSB7XHJcbiAgICAgICRhbGlnbjogbGVmdDtcclxuICAgIH0gQGVsc2UgaWYgc3RyaW5nLmluZGV4KCRkaXIsIFwicmlnaHRcIikge1xyXG4gICAgICAkYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgc3RyaW5nLmluZGV4KCRkaXIsIFwibGVmdFwiKSB7XHJcbiAgICAkc2lkZTogbGVmdDtcclxuICB9IEBlbHNlIGlmIHN0cmluZy5pbmRleCgkZGlyLCBcInJpZ2h0XCIpIHtcclxuICAgICRzaWRlOiByaWdodDtcclxuICB9XHJcblxyXG4gIEBpZiAkc2lkZSA9PSBib3R0b20gb3IgJHNpZGUgPT0gdG9wIHtcclxuICAgICRib3hUcmFuc2xhdGlvbjogLTUwJSAwO1xyXG4gICAgJGFycm93VHJhbnNsYXRpb246IC01MCUgMDtcclxuICB9XHJcblxyXG4gICRvcmlnaW5YOiA1MCU7XHJcbiAgQGlmICRzaWRlID09IGxlZnQge1xyXG4gICAgJG9yaWdpblg6IDEwMCU7XHJcbiAgfVxyXG4gIEBpZiAkc2lkZSA9PSByaWdodCB7XHJcbiAgICAkb3JpZ2luWDogMCU7XHJcbiAgfVxyXG5cclxuICAkb3JpZ2luWTogNTAlO1xyXG4gIEBpZiAkc2lkZSA9PSBib3R0b20ge1xyXG4gICAgJG9yaWdpblk6IDAlO1xyXG4gIH1cclxuICBAaWYgJHNpZGUgPT0gdG9wIHtcclxuICAgICRvcmlnaW5ZOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJGJveFN0YXJ0UG9zOiA1MCU7XHJcbiAgJGFycm93UG9zOiA1MCU7XHJcbiAgQGlmICRhbGlnbiAhPSBjZW50ZXIge1xyXG4gICAgJGJveFN0YXJ0UG9zOiAwcHg7XHJcbiAgICAkYm94VHJhbnNsYXRpb246IDAgMDtcclxuICAgICRhcnJvd1RyYW5zbGF0aW9uOiAwIDA7XHJcbiAgfVxyXG5cclxuICBAaWYgJGFsaWduID09IGxlZnQge1xyXG4gICAgJG9yaWdpblg6IGNhbGMoJG9mZnNldCAtIHZhcigtLXJhZGl1cykpO1xyXG4gIH1cclxuICBAaWYgJGFsaWduID09IHJpZ2h0IHtcclxuICAgICRvcmlnaW5YOiBjYWxjKDEwMCUgLSAkb2Zmc2V0IC0gdmFyKC0tcmFkaXVzKSk7XHJcbiAgfVxyXG5cclxuICAvLyBBYnN0cmFjdCBvdXQgdGhlIHN0YXJ0aW5nIGF4aXMgYW5kIHBvc2l0aW9ucyBvZiB0aGUgdG9vbHRpcCBib3ggYW5kIGFycm93IHRvIGtlZXAgdGhpbmdzIHNhbmUuXHJcbiAgJGJveERpc3RhbmNlUHJvcDogXCJcIjtcclxuICAkYm94U3RhcnRQcm9wOiBcIlwiO1xyXG4gICRhcnJvd1Bvc1Byb3A6IFwiXCI7XHJcblxyXG4gIEBpZiAkc2lkZSA9PSBib3R0b20ge1xyXG4gICAgJGJveERpc3RhbmNlUHJvcDogdG9wO1xyXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IHJpZ2h0O1xyXG4gICAgICAkYXJyb3dQb3NQcm9wOiByaWdodDtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkYm94U3RhcnRQcm9wOiBsZWZ0O1xyXG4gICAgICAkYXJyb3dQb3NQcm9wOiBsZWZ0O1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJHNpZGUgPT0gdG9wIHtcclxuICAgICRib3hEaXN0YW5jZVByb3A6IGJvdHRvbTtcclxuICAgIEBpZiAkYWxpZ24gPT0gcmlnaHQge1xyXG4gICAgICAkYm94U3RhcnRQcm9wOiByaWdodDtcclxuICAgICAgJGFycm93UG9zUHJvcDogcmlnaHQ7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGJveFN0YXJ0UHJvcDogbGVmdDtcclxuICAgICAgJGFycm93UG9zUHJvcDogbGVmdDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRzaWRlID09IGxlZnQge1xyXG4gICAgJGJveERpc3RhbmNlUHJvcDogcmlnaHQ7XHJcbiAgICBAaWYgJGFsaWduID09IHJpZ2h0IHtcclxuICAgICAgJGJveFN0YXJ0UHJvcDogYm90dG9tO1xyXG4gICAgICAkYXJyb3dQb3NQcm9wOiBib3R0b207XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGJveFN0YXJ0UHJvcDogdG9wO1xyXG4gICAgICAkYXJyb3dQb3NQcm9wOiB0b3A7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkc2lkZSA9PSByaWdodCB7XHJcbiAgICAkYm94RGlzdGFuY2VQcm9wOiBsZWZ0O1xyXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IGJvdHRvbTtcclxuICAgICAgJGFycm93UG9zUHJvcDogYm90dG9tO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IHRvcDtcclxuICAgICAgJGFycm93UG9zUHJvcDogdG9wO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3skYm94RGlzdGFuY2VQcm9wfTogY2FsYygxMDAlICsgI3skZGlzdGFuY2V9KTtcclxuICAjeyRib3hTdGFydFByb3B9OiAkYm94U3RhcnRQb3M7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHNjYWxlOiAwLjE7XHJcbiAgYm9yZGVyOiAkYm9yZGVyV2lkdGggc29saWQgJGJvcmRlckNvbG9yO1xyXG4gIHBhZGRpbmc6IDJweCA3cHggNHB4IDdweDtcclxuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gIG9wYWNpdHk6IDA7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXNlY29uZGFyeS1mb250KTtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteHMpO1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRjb2xvcik7XHJcbiAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLWJvdW5jZSk7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpblggJG9yaWdpblk7XHJcbiAgdHJhbnNsYXRlOiAkYm94VHJhbnNsYXRpb247XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG4gIEBpZiAkYXJyb3cgPT0gdHJ1ZSB7XHJcbiAgICAvLyBCb3JkZXIgVHJpYW5nbGVcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJG1lZGl1bSB2YXIoLS10aW1pbmctYm91bmNlKTtcclxuICAgICAgdHJhbnNsYXRlOiAkYXJyb3dUcmFuc2xhdGlvbjtcclxuICAgICAgd2lkdGg6ICRhcnJvd1NpemU7XHJcbiAgICAgIGhlaWdodDogJGFycm93U2l6ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlckNvbG9yO1xyXG4gICAgICBAaWYgJGFsaWduID09IFwiY2VudGVyXCIge1xyXG4gICAgICAgICN7JGFycm93UG9zUHJvcH06IDUwJTtcclxuICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgI3skYXJyb3dQb3NQcm9wfTogY2FsYygkb2Zmc2V0ICsgdmFyKC0tcmFkaXVzKSk7XHJcbiAgICAgIH1cclxuICAgICAgQGlmICRzaWRlID09IGJvdHRvbSB7XHJcbiAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAkYm9yZGVyQXJyb3dTaXplO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgMCUsIDAlIDEwMCUsIDEwMCUgMTAwJSk7XHJcbiAgICAgIH0gQGVsc2UgaWYgJHNpZGUgPT0gdG9wIHtcclxuICAgICAgICB0b3A6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6ICRib3JkZXJBcnJvd1NpemU7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAxMDAlLCAwJSAwJSwgMTAwJSAwJSk7XHJcbiAgICAgIH0gQGVsc2UgaWYgJHNpZGUgPT0gbGVmdCB7XHJcbiAgICAgICAgbGVmdDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6ICRib3JkZXJBcnJvd1NpemU7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDEwMCUgNTAlLCAwJSAxMDAlLCAwJSAwJSk7XHJcbiAgICAgIH0gQGVsc2UgaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgICAgIHJpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogJGJvcmRlckFycm93U2l6ZTtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgNTAlLCAxMDAlIDAlLCAxMDAlIDEwMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAvLyBBY3R1YWwgVHJpYW5nbGVcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkbWVkaXVtIHZhcigtLXRpbWluZy1ib3VuY2UpO1xyXG4gICAgICB0cmFuc2xhdGU6ICRhcnJvd1RyYW5zbGF0aW9uO1xyXG4gICAgICB3aWR0aDogJGFycm93U2l6ZTtcclxuICAgICAgaGVpZ2h0OiAkYXJyb3dTaXplO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgIEBpZiAkYWxpZ24gPT0gY2VudGVyIHtcclxuICAgICAgICAjeyRhcnJvd1Bvc1Byb3B9OiA1MCU7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICN7JGFycm93UG9zUHJvcH06IGNhbGMoJG9mZnNldCArIHZhcigtLXJhZGl1cykgKyAkYm9yZGVyV2lkdGgpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpZiAkc2lkZSA9PSBib3R0b20ge1xyXG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gI3skYm9yZGVyV2lkdGh9KTtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IHRvcCB7XHJcbiAgICAgICAgdG9wOiBjYWxjKDEwMCUgLSAjeyRib3JkZXJXaWR0aH0pO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgMTAwJSwgMCUgMCUsIDEwMCUgMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IGxlZnQge1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtICN7JGJvcmRlcldpZHRofSk7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDEwMCUgNTAlLCAwJSAxMDAlLCAwJSAwJSk7XHJcbiAgICAgIH0gQGVsc2UgaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgLSAjeyRib3JkZXJXaWR0aH0pO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigwJSA1MCUsIDEwMCUgMCUsIDEwMCUgMTAwJSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBjaGVja2JveCgkc2l6ZTogMWVtLCAkYm9yZGVyQ29sb3I6IHZhcigtLWJhc2ljKSwgJHNlbGVjdGVkQ29sb3I6IHZhcigtLWJyYW5kLWRhcmspLCAkc2VsZWN0ZWRCb3JkZXI6IHZhcigtLWJyYW5kLWRhcmspKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbjogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gIEBzdXBwb3J0cyAoYXBwZWFyYW5jZTogbm9uZSkge1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIGhlaWdodDogJHNpemU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6ICRzaXplO1xyXG4gICAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhci1yZ2JhKCRib3JkZXJDb2xvciwgMC43KTtcclxuXHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB3aWR0aDogJHNpemU7XHJcbiAgICAgIGhlaWdodDogJHNpemU7XHJcblxyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuXHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGNhbGMtY29udHJhc3QoJHNlbGVjdGVkQ29sb3IpO1xyXG4gICAgICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzkgSWpBZ01DQXpNVFl1TXpnZ01qVXdMallpUGp4d1lYUm9JR1E5SWswM01DNDBJREl4T1M0NFl6UXVOVFVnTkM0NCBOeUE1TGpJeUlEa3VOamNnTVRRdU1USWdNVFF1TVRrZ015NDNOU0F6TGpRM0lEY3VOekVnTmk0NE5TQXhNUzQ1IE15QTVMamMwSURVdU5TQXpMamM0SURFeExqa3lJRGN1TURnZ01UZ3VOemdnTmk0NE5TQTJMalkyTFM0eU15QXggTWk0M055MHpMamN6SURFM0xqazNMVGN1TmpJZ09DNDJMVFl1TkRJZ01UWXVOamN0TVRVdU1UY2dNak11T0RRdCBNak11TVRSTU16QTFMalk0SURVMExqWTVZemN1TWkwNElERXhMamM1TFRFNExqSTFJREV3TGpRM0xUSTVMakUzIExURXVNRFF0T0M0MU9TMDFMamN4TFRFMkxqVTFMVEV6TGpBeExUSXhMakk1TFRVdU5qVXRNeTQyTnkweE1pNHkgTmkwMExqazRMVEU0TGprdE15NDRNaTA0TGprZ01TNDFOaTB4Tmk0MU5DQTNMakl5TFRJeUxqUTRJREV6TGpjNCBMVFE0TGpNMElEVXpMak15TFRrMkxqVTVJREV3Tmk0M01TMHhORFF1T0RVZ01UWXdMakV4YkMwekxqRTVJRE11IE5UTXROakF1TkMwMk5pNDJNMk10T0M0ME1pMDVMakk1TFRFNUxqY3RNVE11T1RRdE16RXVPVEl0T1M0MU55MDAgTGpjeUlERXVOamt0T0M0NU9TQTBMalU0TFRFeUxqUTFJRGd1TVRrdE15NDROaUEwTGpBMExUWXVOemdnT1M0dyBOaTA0TGpFeklERTBMalE1TFRJdU16RWdPUzR5Tnk0eklERTRMakEzSURZdU5qSWdNalV1TVROc05qSXVPVFVnIE56QXVNelZhSWlCemRIbHNaVDBpWm1sc2JDMXlkV3hsT21WMlpXNXZaR1FpTHo0OEwzTjJaejRLXCIpO1xyXG4gICAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBtYXNrLXNpemU6IDYwJTtcclxuICAgICAgbWFzay1wb3NpdGlvbjogNTAlIDUwJTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICR2ZXJ5RmFzdDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmNoZWNrZWQge1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2VsZWN0ZWRCb3JkZXI7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdGVkQ29sb3I7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2Rpc2FibGVkXSB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMztcclxuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXItcmdiYSgtLWJhc2ljLCAwLjgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmFkaW8oJHNpemU6IDFlbSwgJGJvcmRlckNvbG9yOiB2YXIoLS1iYXNpYyksICRzZWxlY3RlZENvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSwgJHNlbGVjdGVkQm9yZGVyOiAkc2VsZWN0ZWRDb2xvcikge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gIEBzdXBwb3J0cyAoYXBwZWFyYW5jZTogbm9uZSkge1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIGhlaWdodDogJHNpemU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6ICRzaXplO1xyXG4gICAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXItcmdiYSgkYm9yZGVyQ29sb3IsIDAuNyk7XHJcblxyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG5cclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gICAgfVxyXG5cclxuICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRzZWxlY3RlZEJvcmRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWRDb2xvcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjYWxjLWNvbnRyYXN0KCRzZWxlY3RlZENvbG9yKTtcclxuICAgICAgICB3aWR0aDogJHNpemUgKiAwLjQ1O1xyXG4gICAgICAgIGhlaWdodDogJHNpemUgKiAwLjQ1O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltkaXNhYmxlZF0ge1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyLWxpZ2h0ZW4odmFyKC0tYmFzaWMpLCA3NSUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc3dpdGNoKCRzaXplOiAxLjI1ZW0sICRjb2xvcjogdmFyKC0tYmFzaWMpLCAkc2VsZWN0ZWRDb2xvcjogdmFyKC0tYnJhbmQtZGFyaykpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgQHN1cHBvcnRzIChhcHBlYXJhbmNlOiBub25lKSB7XHJcbiAgICAka25vYlNpemU6IGNhbGMoI3skc2l6ZX0gLSA4cHgpO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHdpZHRoOiAxLjI1ZW0gKiAyO1xyXG4gICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGZhc3Q7XHJcblxyXG4gICAgLyogVGhlIHRvZ2dsZSBrbm9iICovXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICBsZWZ0OiAycHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgd2lkdGg6ICRrbm9iU2l6ZTtcclxuICAgICAgaGVpZ2h0OiAka25vYlNpemU7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICRmYXN0O1xyXG4gICAgfVxyXG5cclxuICAgIC8qIENoYW5nZSBjb2xvciBhbmQgcG9zaXRpb24gd2hlbiBjaGVja2VkICovXHJcbiAgICAmOmNoZWNrZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWRDb2xvcjtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlbGVjdGVkQ29sb3I7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtICN7JGtub2JTaXplfSAtIDJweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogY2FsYy1jb250cmFzdCgkc2VsZWN0ZWRDb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBEcm9wIHRoZSBvcGFjaXR5IG9mIHRoZSB0b2dnbGUga25vYiB3aGVuIHRoZSBpbnB1dCBpcyBkaXNhYmxlZCAqL1xyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgIG9wYWNpdHk6IDAuNDtcclxuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdWJ0bGVHcmFkaWVudCgkY29sb3IsICRkZWc6IDEyOGRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkY29sb3IgNDAlLCB2YXItZGFya2VuKCRjb2xvciwgNSUpIDEwMCUpO1xyXG59XHJcblxyXG5AbWl4aW4gcmVzZXRCdXR0b24oKSB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwcHg7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBvdXRsaW5lOiAwcHg7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogdW5zZXQ7XHJcbiAgYWxpZ24taXRlbXM6IHVuc2V0O1xyXG4gIHBhZGRpbmc6IDBweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgY29sb3I6IHVuc2V0O1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uQURBKCRjb2xvcjogdmFyKC0tYnJhbmQtZGFyayksICRob3ZlckNvbG9yOiB2YXIoLS1hZGEtaG92ZXIpKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDAuNmVtIDEuMmVtO1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xyXG5cclxuICBsaW5lLWhlaWdodDogMS4xZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xyXG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRjb2xvcik7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgJltkaXNhYmxlZF0sXHJcbiAgJlthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXSB7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICY6bm90KFtkaXNhYmxlZF0pOm5vdChbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0pIHtcclxuICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoJGhvdmVyQ29sb3IpO1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwic2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJzaGFyZWQtbWl4aW5zXCIgYXMgKjtcclxuXHJcbi8vIEtFWUZSQU1FIEFOSU1BVElPTlMgRk9SIFpPT00gU0xJREVTSE9XIC8vXHJcbkBrZXlmcmFtZXMgem9vbUluIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICB9XHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gIH1cclxufVxyXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZmFkZUluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZmFkZU91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gICNiYWNrZ3JvdW5kIHtcclxuICAgIFtkYXRhLXNsaWRlc2hvdz1cInpvb21TbGlkZXNob3dcIl0ge1xyXG4gICAgICAmLnJldHVyblBhdXNlIHtcclxuICAgICAgICAuYmdJbWdXcmFwcGVyOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5iZ0ltZ1dyYXBwZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjg1cztcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcblxyXG4gICAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnByZXYge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbU91dDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmJnSW1nIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMHM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcblxyXG4gICAgICAgIC8vYmFja2dyb3VuZCBwb3N0aW9uIChYLFkpXHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImNlbnRlclwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImNlbnRlciByaWdodFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDEwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgMTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDkwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgOTAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy9lc3RhYmxpc2hpbmcgdGhlIG9yaWdpbiBvZiB0aGUgem9vbSBhbmltYXRpb24gd2hpY2hcclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwiY2VudGVyXCJdIHtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1hbmltYXRpb249XCJ0b3AgcmlnaHRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwidG9wIGxlZnRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1hbmltYXRpb249XCJib3R0b20gcmlnaHRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwiYm90dG9tIGxlZnRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnBhdXNlZCB7XHJcbiAgICAgICAgLmJnSW1nV3JhcHBlci50cmFucyB7XHJcbiAgICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZ0ltZyxcclxuICAgIC5zZWN0aW9uQmcge1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICBAaW5jbHVkZSBiZ1BvcygpO1xyXG4gICAgfVxyXG4gICAgdmlkZW8ge1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jYmFja2dyb3VuZCB7XHJcbiAgW2RhdGEtaXMtbG9hZGluZz1cInRydWVcIl0gJiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuI2JhY2tncm91bmRQbGF5QnRuIHtcclxuICBAaW5jbHVkZSBkaXNjb3ZlcnlUb29sc0FjdGl2ZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYWN0aXZlRGlhbG9nKFwidXRpbGl0eU1lbnVcIikge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGFjdGl2ZVpvbmUoXCJzbGlkZXNcIikge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIFtkYXRhLWlzLWxvYWRpbmc9XCJ0cnVlXCJdICYge1xyXG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmljb24tcGxheSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAmLnBhdXNlIHtcclxuICAgIC5pY29uLXBsYXkge1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIH1cclxuICAgIC5pY29uLXBhdXNlIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLWJhY2tncm91bmRcIjtcclxuQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5cclxuLy9LRVlGUkFNRSBBTklNQVRJT05TIEZPUiBaT09NIFNMSURFU0hPVy8vXHJcbjpyb290e1xyXG4gIC0tbXRuLXN0YWdnZXI6IDcycHg7XHJcbiAgLS1tb3VudGFpbi13aWR0aDogNzAwcHg7XHJcbi0tdG9wLWg6IDQwMHB4O1xyXG59XHJcblxyXG5ib2R5OmhhcygjbWFpbk5hdiBsaS5zZWN0aW9uW2RhdGEtc3RhdGU9XCJhY3RpdmVcIl0gYnV0dG9uOmhvdmVyKXtcclxuICAubWFzY290SG9sZGVyLm1hc2NvdDIge1xyXG4gICAgaW1nIHtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHNjYWxlOiAxO1xyXG4gICAgfVxyXG4gICAgLnF1b3Rle1xyXG4gICAgICB0b3A6IC0yNXB4O1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxufSBcclxuYm9keVtkYXRhLW9yaWVudGF0aW9uLWNvbXBsZXRlPXRydWVde1xyXG4gIC5tYXNjb3RIb2xkZXIubWFzY290MXtcclxuaW1nIHtcclxuICAgICAgdG9wOiAwcHg7XHJcbiAgICAgIHNjYWxlOiAxO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAycztcclxuICAgIH1cclxuXHJcbiAgICAuY29uZ3JhdHNNc2d7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAyLjVzO1xyXG4gICAgfVxyXG4gICBcclxuICB9XHJcbn1cclxuXHJcbiBbZGF0YS1pcy1sb2FkaW5nPVwidHJ1ZVwiXSwgLnV0aWxpdHlNb2RlLCAubWVudU91dCB7IFxyXG4gIC5tYXNjb3RIb2xkZXIubWFzY290MXtcclxuICAgIHNjYWxlOiAwO1xyXG4gICAgaW1ne1xyXG4gICAgICB0b3A6IDEwMCU7XHJcbiAgICB9XHJcbiAgICAuY29uZ3JhdHNNc2cge1xyXG4gICAgICB0b3A6IC04MHB4O1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gIFxyXG4gIH1cclxuICAgIH1cclxuXHJcbi51dGlsaXR5TW9kZXtcclxuICAgIEBpbmNsdWRlIGFjdGl2ZVpvbmUoXCJob21lXCIpIHtcclxuICAgICAgI2JhY2tncm91bmR7XHJcbiAgICAgICAgLmJhY2tncm91bmRNZWRpYXtcclxuICAgICAgICAgIGJvdHRvbTogLTEwMCU7XHJcbiAgICAgICAgICB0cmFuc2xhdGU6IDc1JSAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubW91bnRhaW5XcmFwe1xyXG4gICAgICAgICAgc2NhbGU6IDEuNTtcclxuICAgICAgICAgIC0tZ2FwMTogMTAlO1xyXG4gICAgICAgICAgLS1nYXAyOiAzMiU7XHJcbiAgICAgICAgICAvLyB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xyXG4gICAgIFxyXG4gICAgICAgICAgJi50b3B7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IC05NXB4O1xyXG4gICAgcmlnaHQ6IC0zNXB4O1xyXG4gICAgc2NhbGU6IDEuMztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICYubWlkZGxle1xyXG4gICAgICAgICAgICAgIHNjYWxlOiAxLjg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmLmJhY2t7XHJcbiAgICAgICAgICAgICAgcmlnaHQ6IDk1cHg7XHJcbiAgICBzY2FsZTogMjtcclxuICAgIGJvdHRvbTogLTQwcHg7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxufVxyXG4gIFxyXG4ubWFzY290SG9sZGVye1xyXG4gIGFzcGVjdC1yYXRpbzogMTg3IC8gMzI4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICByaWdodDogMjAlO1xyXG4gIHdpZHRoOiAxMzVweDtcclxuICB0b3A6MTAlO1xyXG4gIHJvdGF0ZTogNWRlZztcclxuIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IC0xcHggOHB4IHZhci1yZ2JhKC0tYmFzaWMsLjMpKTtcclxuICYubWFzY290MntcclxuICAuaW5TZWN0aW9uICZ7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgfVxyXG4gfVxyXG4gJi5tYXNjb3Qxe1xyXG4gIGFzcGVjdC1yYXRpbzogMjQwIC8gMzU1O1xyXG4gIHJpZ2h0OiAzOCU7XHJcbiAgd2lkdGg6IDE2MHB4O1xyXG4gIHRvcDogOCU7XHJcbiAgcm90YXRlOiA4ZGVnO1xyXG4gIHRyYW5zaXRpb246IHNjYWxlIC43cztcclxuICBcclxuIH1cclxuICBpbWd7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDBweDtcclxuICAgIHRvcDogMTAwJTtcclxuICAgIHNjYWxlOiAwO1xyXG4gICAgcm90YXRlOiAwZGVnO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGNlbnRlcjtcclxuICAgIHRyYW5zaXRpb246IHRvcCAuNDVzIGVhc2Utb3V0LCBzY2FsZSAuNDVzIDtcclxuICB9XHJcbiAgLmNvbmdyYXRzTXNne1xyXG4gICAgLS1ib3JkZXItY29sb3I6IHZhcigtLXdlYmVyLW1pZG5pZ2h0KTtcclxuICAgIC0tYm9yZGVyOiAycHg7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDhweDtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICByaWdodDogMTAwJTtcclxuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcclxuICBcclxuICAgIHdpZHRoOiAyMzBweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6IHZhcigtLXdhbGRvcy1kZW4pO1xyXG4gICAgZm9udC1zaXplOiAuOGVtO1xyXG4gICAgdHJhbnNpdGlvbjogdG9wIC40NXMgZWFzZS1vdXQsb3BhY2l0eSAuMnMgO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgIHBhZGRpbmc6IDEwcHg7IFxyXG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXIpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XHJcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICBcclxuICAgICY6YWZ0ZXJ7XHJcbiAgICAgIC0tc2l6ZTogMThweDtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICByaWdodDogLTlweDtcclxuICAgIGJvdHRvbTogMTJweDtcclxuICAgIHdpZHRoOiB2YXIoLS1zaXplKTtcclxuICAgIGhlaWdodDogdmFyKC0tc2l6ZSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XHJcbiAgICBib3JkZXItcmlnaHQ6IHZhcigtLWJvcmRlcikgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlcikgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yKTtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKC00MGRlZyk7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xyXG4gICAgc2NhbGU6IDE7XHJcbiAgICB9XHJcbiAgICBoM3tcclxuICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICBnYXA6IDVweDtcclxuICAgIH1cclxuICAgIHNwYW57XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAmLmxpbmUxe1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgfVxyXG4gICAgICAmLmxpbmUye1xyXG4gICAgICAgIFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgIFxyXG4gIH1cclxufVxyXG4uaGVhZGVyTW91bnRhaW5ze1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogLTcycHg7XHJcbiAgbGVmdDogLTIyMHB4O1xyXG4gIGxlZnQ6IC0xMiU7XHJcbiAgd2lkdGg6IDEwMHZ3O1xyXG4gIGhlaWdodDogOTAwcHg7XHJcbiAgc2NhbGU6IC0xO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIHotaW5kZXg6IDUwO1xyXG4gIC5tb3VudGFpbldyYXB7XHJcbiAgICAgLS1nYXAxOiAyMHB4O1xyXG4gICAgLS1nYXAyOiA1NnB4O1xyXG4gICB0cmFuc2xhdGU6IDgwJSAzMDBweDtcclxuICAgIC5ib3JkZXJ7XHJcbiAgICAgIHdpZHRoOiAxNTAlO1xyXG4gICAgICBsZWZ0OiAtMTMwJTtcclxuICAgIH1cclxuICAgICYuYmFja3tcclxuICAgICAgLm1vdW50YWlue1xyXG4gICAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5pblNlY3Rpb24gJntcclxuICAgICAubW91bnRhaW5XcmFwe1xyXG4gICAgICB0cmFuc2xhdGU6IDgwJSAyMHB4O1xyXG4gICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5tb3VudGFpbldyYXB7XHJcbiAgICAtLWdhcDE6IDklO1xyXG4gICAgLS1nYXAyOiAxOCU7XHJcbiAgICBhc3BlY3QtcmF0aW86IDE0MTkgLyA4MDM7XHJcbiAgQGluY2x1ZGUgZmlsbFNwYWNlO1xyXG4gICAgbWF4LWhlaWdodDogOTglO1xyXG4gICAgIG1heC13aWR0aDogODUlO1xyXG4gICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMHB4O1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDJzLCByaWdodCAxcywgdHJhbnNsYXRlIDEuNXMgZWFzZS1pbi1vdXQsIHNjYWxlIDIuMnM7XHJcbiAgICAmLnRvcHtcclxuICAgICAgLS1NY29sb3I6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuNjVzO1xyXG4gICAgfVxyXG4gICAgJi5taWRkbGV7XHJcbiAgICAgIC0tTWNvbG9yOiB2YXIoLS1wdXJwbGUtcnVzaCk7XHJcbiAgICAgIGJvdHRvbTogdmFyKC0tZ2FwMSk7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC41NXM7XHJcbiAgICB9XHJcbiAgICAmLmJhY2t7XHJcbiAgICAgIC0tTWNvbG9yOiB2YXIoLS1sb3ZlbHktbGlsYWMpO1xyXG4gICAgICBib3R0b206IHZhcigtLWdhcDIpOyBcclxuICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjM1cztcclxuICAgIH1cclxuICAgIC5ib3JkZXJ7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICB3aWR0aDogMTQwJTtcclxuICAgICAgbGVmdDogLTExMCU7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLU1jb2xvcik7XHJcbiAgICAgIGhlaWdodDogMTIuNDElO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgLm1vdW50YWlue1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tTWNvbG9yKTtcclxuICAgIGNsaXAtcGF0aDogdXJsKCNtb3VudGFpbkZyYW1lRXh0KTtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHJpZ2h0OiAwcHg7XHJcbiAgICBib3R0b206IDBweDtcclxuICAgIEBpbmNsdWRlIGZpbGxTcGFjZTtcclxuICAgIHRyYW5zaXRpb246IGJvdHRvbSAxcywgcmlnaHQgMXM7XHJcbiAgfVxyXG4gIH1cclxuXHJcbiNiYWNrZ3JvdW5kIHtcclxuXHJcbiAgLS1pbm5lci1oOiA4NTBweDtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgYm90dG9tOiAwcHg7XHJcbiAgbGVmdDogMjBweDtcclxuICB3aWR0aDogMTAwdnc7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICBvcGFjaXR5OiAxO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIHRyYW5zaXRpb246IGFsbCAxcyAuMzVzLCBvcGFjaXR5IC41cztcclxuICAuc2xpZGVTZXR1cCAme1xyXG4gICAgaGVpZ2h0OnZhcigtLWlubmVyLWgpO1xyXG4gIH1cclxuICAubW91bnRhaW5XcmFwe1xyXG4gICAgW2RhdGEtaXMtbG9hZGluZz1cInRydWVcIl0gJiB7XHJcbiAgICAgdHJhbnNsYXRlOiA3OCUgMTUwcHg7XHJcbiAgICAgICAtLWdhcDE6IDE1JTtcclxuICAgICAgLS1nYXAyOjIyJTtcclxuICB9XHJcblxyXG4gICAgLnNsaWRlU2V0dXAgJntcclxuICAgICAgdHJhbnNsYXRlOiA3OCUgNTBweDtcclxuICAgICAgIC0tZ2FwMTogNSU7XHJcbiAgICAgIC0tZ2FwMjo4JTtcclxuICAgICAgJi5iYWNre1xyXG4gICAgICAgICAgdHJhbnNsYXRlOiA4NSUgNTBweDtcclxuICAgICAgfVxyXG4gICAgICAgJi5taWRkbGV7XHJcbiAgICAgICAgdHJhbnNsYXRlOiA4NSUgOTBweDtcclxuICAgICAgfVxyXG4gICAgICAmLnRvcHtcclxuICAgICAgICB0cmFuc2xhdGU6IDkwJSA5MHB4O1xyXG4gICAgICB9XHJcbiAgICAgXHJcbiAgICB9XHJcbiAgICAmLnRvcHtcclxuICAgICAgLm1vdW50YWlue1xyXG4gICAgICAgIHJpZ2h0OiAtMzBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5taWRkbGV7XHJcbiAgICAgIC5tb3VudGFpbntcclxuICAgICAgICByaWdodDogLTE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iYWNrZ3JvdW5kTWVkaWF7XHJcbiAgICAgY2xpcC1wYXRoOiB1cmwoI21vdW50YWluTWVkaWFFeHQpO1xyXG4gICAgIGFzcGVjdC1yYXRpbzogMTMzOCAvIDcyNztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMHB4O1xyXG4gICAgcmlnaHQ6IC0xNXB4O1xyXG4gICAgQGluY2x1ZGUgZmlsbFNwYWNlO1xyXG4gICAgdHJhbnNpdGlvbjogYm90dG9tIDEuNXMgZWFzZS1pbi1vdXQsIHRyYW5zbGF0ZSAxLjVzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IC4zcztcclxuICAgIFxyXG4gICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDg1cHgpO1xyXG4gICAgIG1heC13aWR0aDogODAlO1xyXG4gICAgIHotaW5kZXg6IDU7XHJcbi5maXJlZm94ICZ7XHJcbiAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBpc29sYXRpb246IGlzb2xhdGU7XHJcbiAgICBjb250YWluOiBwYWludDtcclxufVxyXG4udXRpbGl0eU1vZGUgJiwgLnNlYXJjaE1vZGUgJiwgLnRvb2xzTW9kZSAme1xyXG4gICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIGJvdHRvbTogLTEwMCU7XHJcblxyXG4gICAgIH1cclxuICAgICAudXRpbGl0eU1vZGUubWVudU91dCAmLCAuc2VhcmNoTW9kZS5tZW51T3V0ICYsIC50b29sc01vZGUubWVudU91dCAme1xyXG4gICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIGJvdHRvbTogLTEwMCU7XHJcbiAgICAgIFxyXG4gICAgIH1cclxuXHJcbiAgICBcclxuICAgICAubWVudU91dCAme1xyXG4gICAgICBib3R0b206IC0xMDAlO1xyXG4gICAgICB0cmFuc2xhdGU6IDc1JSAwO1xyXG4gICAgIH1cclxuICAgICAubWVudUluICZ7XHJcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDFzO1xyXG4gICAgIH1cclxuICAgICAgICBbZGF0YS1pcy1sb2FkaW5nPVwidHJ1ZVwiXSAmIHtcclxuICAgICAgICBib3R0b206IC0xMDAlO1xyXG4gICAgICB0cmFuc2xhdGU6IDc1JSAwO1xyXG4gICAgICAgdHJhbnNpdGlvbi1kZWxheTogMXM7XHJcbiAgICAgICAgfVxyXG5cclxuICB9XHJcblxyXG4gIC5jb3Zlci1zbGlkZXIsXHJcbiAgdmlkZW8sXHJcbiAgLm1haW5CZ0ltZyB7XHJcbiAgICB6LWluZGV4OiAyO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICAuZmlyZWZveCAme1xyXG4gICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGNsaXAtcGF0aDogaW5oZXJpdDtcclxuICAgIH1cclxuICB9XHJcbiAgLnNlY3Rpb25CZ0hvbGRlciB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICAubWVudU91dCAmIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICAgICZbZGF0YS1zZWN0aW9uLWJnLW9ubHk9XCJ0cnVlXCJdIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xyXG4gICAgICAuaW5TZWN0aW9uICYge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5iZ0ltZyxcclxuICAuc2VjdGlvbkJnIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG4gIHZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgQGluY2x1ZGUgYWN0aXZlWm9uZShcInNsaWRlc1wiKSB7XHJcbiAgICBcclxuICB9XHJcbn1cclxuXHJcbiNiYWNrZ3JvdW5kUGxheUJ0biB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGJvdHRvbTogMTVweDtcclxuICBsZWZ0OiAxNXB4O1xyXG5cclxuICB6LWluZGV4OiAxNTA7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHdpZHRoOiAzMHB4O1xyXG4gIGhlaWdodDogMzBweDtcclxuICBwYWRkaW5nOiAwO1xyXG4gY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdHJhbnNpdGlvbjogYWxsICR2ZXJ5RmFzdDtcclxuYm9yZGVyLXJhZGl1czogNXB4O1xyXG5cclxuXHJcblxyXG4gIC50ZXh0IHtcclxuICAgIEBpbmNsdWRlIHRvb2xUaXAobGVmdCwgJG9mZnNldDogNXB4KTtcclxuICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgfVxyXG5cclxuICAuaWNvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgei1pbmRleDogNDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1ob3Zlcik7XHJcbiAgICAudGV4dCB7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIHNjYWxlOiAxO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChvcmllbnRhdGlvbjogcG9ydHJhaXQpe1xyXG4gIEBtZWRpYSAobWluLWhlaWdodDogMTA1MHB4KXtcclxuICBib2R5e1xyXG4gICAgLS10b3AtaDogNjAwcHg7XHJcbiAgfVxyXG4gIH1cclxuICBcclxufVxyXG4vLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5AbWVkaWEgKG1heC13aWR0aDogJHJzcCksIChvcmllbnRhdGlvbjogcG9ydHJhaXQpLCAobWF4LWhlaWdodDogJHhzSCl7XHJcbi8vICA6cm9vdHtcclxuLy8gLS1tb3VudGFpbi13aWR0aDogODAwcHg7XHJcbi8vIC0tdG9wLWg6IDQwMHB4O1xyXG4vLyAgfSBcclxuICBib2R5e1xyXG4gICAgLS10b3AtaDogNjAwcHg7XHJcbiAgICAtLW1vdW50YWluLXdpZHRoOiA4NTBweDtcclxuICAgIEBtZWRpYSAobWF4LWhlaWdodDogJHhsSCl7XHJcbiAgICAtLXRvcC1oOiA0NTBweDtcclxuICAgIC0tbW91bnRhaW4td2lkdGg6IDc3MHB4O1xyXG4gICAgfVxyXG4gICAgIEBtZWRpYSAobWF4LWhlaWdodDogJGxnSCl7XHJcbiAgICAtLXRvcC1oOiAzNTBweDtcclxuICAgIC0tbW91bnRhaW4td2lkdGg6IDcwMHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR4cyl7XHJcbiAgICAgICAtLW1vdW50YWluLXdpZHRoOiA2MjBweDtcclxuICAgICAgIC0tdG9wLWg6IDM1MHB4O1xyXG4gICAgfVxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0aW55KXtcclxuICAgICAgIC0tbW91bnRhaW4td2lkdGg6IDU1MHB4O1xyXG4gICAgICAgLS10b3AtaDogMjkwcHg7XHJcbiAgICB9XHJcbiAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR0ZWVueSksIChtYXgtaGVpZ2h0OiAkeHNIKXtcclxuICAgICAgIC0tbW91bnRhaW4td2lkdGg6IDUwMHB4O1xyXG4gICAgICAgLS10b3AtaDogMjkwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyTW91bnRhaW5zIC5tb3VudGFpbldyYXAgLmJvcmRlcntcclxuICAgICB0cmFuc2l0aW9uOiBhbGwgMXMgLjM1cztcclxuICAvLyAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAjYmFja2dyb3VuZHtcclxuICAgIFxyXG4gICAgIHRvcDogMDtcclxuICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgbGVmdDogdW5zZXQ7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBwb3NpdGlvbjpmaXhlZDtcclxuICAgICAgYm90dG9tOiB1bnNldDtcclxuICAgICAgb3ZlcmZsb3c6IGNsaXA7XHJcbiAgICAgIGhlaWdodDogdmFyKC0tdG9wLWgpOyAgICBcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpOyAgICAgXHJcbiAgICAgIC5iYWNrZ3JvdW5kTWVkaWF7XHJcbiAgICAgICAgICByaWdodDogMHB4O1xyXG4gICAgICAgIC8vIHRvcDogMyU7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAgICAgd2lkdGg6Y2FsYyh2YXIoLS1tb3VudGFpbi13aWR0aCkgLSA4MHB4KTtcclxuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxMjM3IC8gNzgwO1xyXG4gICAgICAgICAgICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5NZWRpYVJzcCk7XHJcbiAgICAgIH1cclxuICAgICAgLnNsaWRlU2V0dXAgJntcclxuICAgICAgICB0cmFuc2xhdGU6IDAgMCU7XHJcbiAgICAgIH1cclxuICAgICAgICAudXRpbGl0eU1vZGUgJntcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB9XHJcbiAgICAgXHJcbiAgfVxyXG5cclxuICAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwe1xyXG4gICAgXHJcbiAgICAtLWdhcDE6IC01JTtcclxuICAgIC0tZ2FwMjogLTQlO1xyXG4gICAgcmlnaHQ6IDBweDtcclxuICAgIG1heC1oZWlnaHQ6IHVuc2V0O1xyXG4gICAgbWF4LXdpZHRoOiB1bnNldDtcclxuICAgICBhc3BlY3QtcmF0aW86IDEzNTQgLyA4ODI7XHJcbiAgICAgICAgd2lkdGg6dmFyKC0tbW91bnRhaW4td2lkdGgpO1xyXG4gICAgICAgIGhlaWdodDogdW5zZXQ7XHJcbiAgICAgICAgYm90dG9tOiAwcHg7XHJcbiAgICAgICBcclxuICAgIC5ib3JkZXJ7XHJcbiAgICAgIGxlZnQ6IC0xNTAlO1xyXG4gICAgICB3aWR0aDogMTkwJTtcclxuICAgICAgLy8gc2NhbGU6IDEgMDtcclxuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xyXG4gXHJcbiAgICAgICAubWVudU91dCAme1xyXG4gICAgICAgICBzY2FsZTogMTsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm1vdW50YWlue1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiB1bnNldDtcclxuICAgICAgIGFzcGVjdC1yYXRpbzogMTM1NCAvIDg4MjtcclxuICAgICAgLy8gIGJvdHRvbTogYXV0bztcclxuICAgICAgLy8gIHRvcDogMHB4O1xyXG4gICAgICAgIC8vIHdpZHRoOnZhcigtLW1vdW50YWluLXdpZHRoKTtcclxuICAgICAgICBjbGlwLXBhdGg6IHVybCgjbW91bnRhaW5GcmFtZVJzcCk7XHJcbiAgICB9XHJcbiAgICAmLmJhY2t7XHJcbiAgICAgIGJvdHRvbTogMHB4O1xyXG4gICAgICByaWdodDogLTEwcHg7XHJcblxyXG4gICAgICAubW91bnRhaW57XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYubWlkZGxle1xyXG4gICAgICBib3R0b206IHZhcigtLWdhcDEpO1xyXG4gICAgICByaWdodDogMHB4O1xyXG4gICAgICAubW91bnRhaW57XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgICYudG9we1xyXG4gICAgICBib3R0b206IHZhcigtLWdhcDIpO1xyXG4gICAgICAgcmlnaHQ6IC04cHg7XHJcbiAgICAgIC5tb3VudGFpbntcclxuICAgICAgIFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4uc2xpZGVTZXR1cCAjYmFja2dyb3VuZCB7XHJcbiAgICAgIC0taW5uZXItaDogNzUwcHg7XHJcbiAgICB0b3A6IGNhbGMoMTAwJSAtIHZhcigtLWlubmVyLWgpKTtcclxufVxyXG5cclxuICAuc2xpZGVTZXR1cCAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwLmJhY2t7XHJcbiAgICB0cmFuc2xhdGU6IDg3JSAtNTBweFxyXG4gIH1cclxuICAuc2xpZGVTZXR1cCAjYmFja2dyb3VuZCAubW91bnRhaW5XcmFwLm1pZGRsZXtcclxuICAgIHRyYW5zbGF0ZTogODUlIDQwcHg7XHJcbiAgfVxyXG4gIC5zbGlkZVNldHVwICNiYWNrZ3JvdW5kIC5tb3VudGFpbldyYXAudG9we1xyXG4gICAgdHJhbnNsYXRlOiA4NiUgOTBweDtcclxuICB9XHJcbiNiYWNrZ3JvdW5ke1xyXG4gXHJcbiAubW91bnRhaW5XcmFwe1xyXG5cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkeHMpe1xyXG4gXHJcbiAjYmFja2dyb3VuZHtcclxuICAuYmFja2dyb3VuZE1lZGlhe1xyXG4gICAgYm90dG9tOiAtMjVweDtcclxuICB9XHJcbiAubW91bnRhaW5XcmFwe1xyXG4gICAgLm1vdW50YWlue1xyXG4gICAgICBib3R0b206IC01MHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI2JhY2tncm91bmRQbGF5QnRue1xyXG4gIGJvdHRvbTogNXB4O1xyXG4gIGxlZnQ6IDVweDtcclxufVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHh4cyksIChtYXgtaGVpZ2h0OiAkeHNIKXtcclxuICAuc3RpY2t5IC5oZWFkZXJNb3VudGFpbnMgLm1vdW50YWluV3JhcHtcclxuICAgIC0tZ2FwMTogMjBweDtcclxuICAgIC0tZ2FwMjogMzBweDtcclxuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBzICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG4gIFxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHRpbnkpe1xyXG4gIC5zbGlkZVNldHVwICNiYWNrZ3JvdW5ke1xyXG4gICAgdG9wOiAxMTAlO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuIFxyXG59XHJcblxyXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDgwMHB4KXtcclxuICAubWFzY290SG9sZGVyLm1hc2NvdDF7XHJcbiAgICB3aWR0aDogMTMwcHg7XHJcbiAgICAuY29uZ3JhdHNNc2d7XHJcbiAgICAgIHNjYWxlOiAuOTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LWhlaWdodDogNjAwcHgpe1xyXG4gIC5tYXNjb3RIb2xkZXIubWFzY290MXtcclxuICAgIHdpZHRoOiAxMTBweDtcclxuICAgIC8vIC5jb25ncmF0c01zZ3tcclxuICAgIC8vICAgc2NhbGU6IC45O1xyXG4gICAgLy8gfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRyc3ApLCAob3JpZW50YXRpb246IHBvcnRyYWl0KSwgKG1heC1oZWlnaHQ6ICR4c0gpe1xyXG4gIFtkYXRhLW9yaWVudGF0aW9uLWNvbXBsZXRlPXRydWVde1xyXG4gICAgLm1hc2NvdEhvbGRlci5tYXNjb3Qxe1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuIiwiQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5cclxuLy8gQkVHSU4gQkFTRSBTVFlMRVMgLSBETyBOT1QgQ0hBTkdFIFRIRVNFIFVOTEVTUyBZT1UgS05PVyBXSEFUIFlPVSdSRSBET0lORyAvL1xyXG5cclxuYm9keSB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG59XHJcblxyXG4uYnVmZmVyIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgei1pbmRleDogMTIwO1xyXG4gIC8vIGZsZXgtZ3JvdzogMTtcclxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gNTVweCk7XHJcbn1cclxuXHJcblxyXG4uYWRnRm9vdGVye1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNTVweDtcclxuICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgYmFja2dyb3VuZDogIzAwMDtcclxuICB6LWluZGV4OiA5OTk5O1xyXG5cclxuICAuYWRnTG9nb1dyYXAge1xyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XHJcbiAgICAgIH1cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hZGdMb2dvIHtcclxuICAgICAgaGVpZ2h0OiAzOHB4O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zb2NpYWxNZWRpYSB7XHJcbiAgbWF4LXdpZHRoOiA1MDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICAuc29jaWFsTWVkaWFUaXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB9XHJcblxyXG4gIC5zb2NpYWxNZWRpYUxvZ2lucyB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgLmZhY2Vib29rTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoOCwgMTAyLCAyNTUpICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmdvb2dsZUxvZ2luIHtcclxuICAgICAgYmFja2dyb3VuZDogI2ViZWJlYyAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC50d2l0dGVyTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMTQxNzFhICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHNjcmVlblJlYWRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcGxlTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjayAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgID4gYSB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXhDZW50ZXI7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogMWVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogMHB4O1xyXG5cclxuICAgICAgLnN2Z0ljb24ge1xyXG4gICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcclxuICAgICAgfVxyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcGxlTG9naW4ge1xyXG4gICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgPiBkaXYge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuXHJcbi8qLmxvZ2luV3JhcHBlcltkYXRhLWhpZGRlbi1mb3ItZ3Vlc3Q9XCJ0cnVlXCJdIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn0qL1xyXG5cclxuLmd1ZXN0V3JhcHBlckhvbGRlciB7XHJcbiAgbWF4LWhlaWdodDogMDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdHJhbnNpdGlvbjogYWxsICRzbG93O1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi8vVGhlc2Ugc3R5bGUgaXMganVzdCB1c2VkIGZvciB0aGUgSG9uZXlwb3QgZmVhdHVyZS4gVGhlc2Ugc3R5bGVzIGtlZXAgdGhlIGZpZWxkIGZyb20gYmVpbmcgc2VlbiBieSBodW1hbnMgYW5kIHRoZXkgc2hvdWxkIG5vdCBiZSBjaGFuZ2VkIG9yIHJlbW92ZWQuXHJcbi5maWVsZFdyYXBwZXIuZW5yb2xsZWVOYW1lIHtcclxuICBvcGFjaXR5OiAwO1xyXG4gIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICB6LWluZGV4OiAtMTtcclxufVxyXG5cclxuLmZpZWxkV3JhcHBlci5waG9uZSB7XHJcbiAgI1Bob25lTnVtYmVyIHtcclxuICAgIHBhZGRpbmctbGVmdDogNTBweDtcclxuICB9XHJcblxyXG4gIC5pdGkge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBjb2xvcjogdmFyKC0tYmFzaWMpO1xyXG5cclxuICAgIC5pdGlfX2NvdW50cnktY29udGFpbmVyIHtcclxuICAgICAgdG9wOiAxOHB4O1xyXG4gICAgICBib3R0b206IDFweDtcclxuICAgIH1cclxuXHJcbiAgICAuaXRpX19zZWxlY3RlZC1jb3VudHJ5IHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSAwIDAgdmFyKC0tcmFkaXVzKTtcclxuICAgIH1cclxuXHJcbiAgICAuaXRpX19kcm9wZG93bi1jb250ZW50IHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbjpyb290IHtcclxuICAtLWl0aS1wYXRoLWZsYWdzLTF4OiB1cmwoXCIvSW1hZ2VzL2ZsYWdzLnBuZ1wiKTtcclxuICAtLWl0aS1wYXRoLWZsYWdzLTJ4OiB1cmwoXCIvSW1hZ2VzL2ZsYWdzQDJ4LnBuZ1wiKTtcclxuICAtLWl0aS1wYXRoLWdsb2JlLTF4OiB1cmwoXCIvSW1hZ2VzL2dsb2JlLnBuZ1wiKTtcclxuICAtLWl0aS1wYXRoLWdsb2JlLTJ4OiB1cmwoXCIvSW1hZ2VzL2dsb2JlQDJ4LnBuZ1wiKTtcclxufVxyXG5cclxuLy8gRU5EIEJBU0UgU1RZTEVTIC8vXHJcblxyXG46cm9vdCB7XHJcbiAgLS1sb2dpbi13OiA2MDBweDtcclxuICAtLWxvZ2luLWhlYWRlci1oZWlnaHQ6IDEzMHB4O1xyXG4gICAtLW1lbWJlckJHOiA1NXZoO1xyXG4gICAtLWN1cnZlSDogMTgwcHg7XHJcbn1cclxuXHJcbiNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB7XHJcbiAgaGVpZ2h0OiB2YXIoLS1tZW1iZXJCRyk7XHJcbiAgbGVmdDogMDtcclxuICB0b3A6IDA7XHJcbiAgZmxleC1ncm93OiAxO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHotaW5kZXg6IDA7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC5iZ0ltZyxcclxuICAuc2VjdGlvbkJnIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBAaW5jbHVkZSBiZ1BvcygpO1xyXG4gIH1cclxuICB2aWRlbyB7XHJcbiAgIHdpZHRoOiAxMDB2dztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICBAaW5jbHVkZSBiZ1BvcygpO1xyXG4gIH1cclxufVxyXG5cclxuLm1lbWJlcnNoaXBCdWZmZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcclxuICB3aWR0aDogMTAwJTtcclxuICAgbWluLWhlaWdodDogMTAwJTtcclxuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgcGFkZGluZy10b3A6IDBweDtcclxuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAwcHggNXB4IHJnYmEoYmxhY2ssIDAuMzUpKTtcclxufVxyXG5cclxuXHJcblxyXG4jYmFja2dyb3VuZFBsYXlCdG4ge1xyXG4gIHRvcDogMTBweDtcclxuICBib3R0b206IGF1dG87XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tcHJpbWFyeSk7XHJcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gIC50ZXh0e1xyXG4gICAgQGluY2x1ZGUgc2NyZWVuUmVhZGVyO1xyXG4gIH1cclxuICBAaW5jbHVkZSBob3ZlckFuZEZvY3Vze1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0td2ViZXItbWlkbmlnaHQpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbi5sb2dpblRlYXNlclZpZGVvIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIGxlZnQ6IDUwcHg7XHJcbiAgcmlnaHQ6IDY4MHB4O1xyXG4gIHotaW5kZXg6IDk5O1xyXG5cclxuICAudmlkZW9Ib2xkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGhlaWdodDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nOiA1Ni4yNSUgMCAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspIHVybChcIi9pbWFnZXMvbG9hZC1zY3JlZW4uanBnXCIpIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblxyXG4gICAgJltkYXRhLXZpbWVvLWluaXRpYWxpemVkXSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcclxuICAgIH1cclxuXHJcbiAgICAucGxheWVyLFxyXG4gICAgaWZyYW1lIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmhlYWRlciB7XHJcblxyXG53aWR0aDogMTAwdnc7XHJcbnRvcDogY2FsYygodmFyKC0tY3VydmVIKSAvIDIpICogLTEpO1xyXG5wb3NpdGlvbjogYWJzb2x1dGU7XHJcbnRyYW5zbGF0ZTogMCAtMzBweDtcclxuIFxyXG4gIC5sb2dvV3JhcCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiAxOThweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgLmxvZ28ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFxyXG5cclxuICAub3JpZW50YXRpb25UaXRsZSB7XHJcbiAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcbn1cclxuLm1lbWJlcnNoaXBGb290ZXJ7XHJcbiAgYmFja2dyb3VuZDogIzJkMTU0MTtcclxuICBmb250LWZhbWlseTogdmFyKC0tc2Vjb25kYXJ5LWZvbnQpO1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbndpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDVweDtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGgxe1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLm5hdkN1cnZle1xyXG4gIHdpZHRoOiAxMjB2dztcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgaGVpZ2h0OiB2YXIoLS1jdXJ2ZUgpO1xyXG4gIGJhY2tncm91bmQ6ICM3MDU2OWU7Ly9iYWNrIGNvbG9yXHJcbiAgLy8gYm9yZGVyLXRvcDogMjBweCBzb2xpZCB2YXIoLS1wdXJwbGUtcnVzaCk7XHJcbiAgLy8gYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMTBweCB2YXIoLS13YWxkb3MtZGVuKSwgMCAwIDAgMTNweCB2YXIoLS1wdXJwbGUtcnVzaCk7XHJcbiAgIHRvcDogLTEwMHB4O1xyXG4gICBsZWZ0OiAtMTB2dztcclxuICAgYm9yZGVyLXJhZGl1czogNTAlIDUwJSAwIDAgO1xyXG4gICBkaXNwbGF5OiBibG9jaztcclxuICAgICY6YmVmb3JlLCAmOmFmdGVye1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBsZWZ0OiAwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIH1cclxuICAvLyAgJjpiZWZvcmV7XHJcbiAgLy8gICBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFwZS1qdWljZSk7XHJcbiAgLy8gICB0b3A6IDEwcHg7XHJcbiAgLy8gIH1cclxuICAgJjphZnRlcntcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXByaW1hcnkpO1xyXG4gICAgdG9wOiAxNXB4O1xyXG4gICB9XHJcbn1cclxuI21lbWJlcnNoaXAge1xyXG4gIC0tZm9jdXMtb3V0bGluZS1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgLS1mb2N1cy1zaGFkb3ctY29sb3I6IHZhcigtLWxpZ2h0KTtcclxud2lkdGg6IDEwMHZ3O1xyXG5wb3NpdGlvbjogcmVsYXRpdmU7XHJcbnotaW5kZXg6IDU7XHJcbm92ZXJmbG93LXg6IGNsaXA7XHJcblxyXG4gIC5tZW1iZXJzaGlwQ29udGFpbmVye1xyXG53aWR0aDogMTAwdnc7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblxyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBhZGRpbmc6IDQ1cHggMHB4IDBweDtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1wcmltYXJ5KTtcclxuICBtaW4taGVpZ2h0OiA0MDBweDtcclxuICB6LWluZGV4OiA1O1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDE4MGRlZyxyZ2JhKDczLCAzNywgMTAxLCAxKSA0NiUsIHJnYmEoMTEyLCA4NiwgMTU4LCAxKSAxMDAlKTtcclxuICB9XHJcblxyXG5cclxuICAudGl0bGVBcmVhIHtcclxuICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbG92ZWx5LWxpbGFjKTtcclxuIC8vICAgYm9yZGVyLXJhZGl1czogMjVweDtcclxuIHBhZGRpbmc6IDBweCAxNXB4IDE1cHg7XHJcbi8vICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICBtYXgtd2lkdGg6Y2FsYygxMDAlIC0gMzBweCk7XHJcblxyXG4gICBoMSxoMixoM3tcclxuICAgIGZvbnQtc2l6ZTogMS44ZW07XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgIHBhZGRpbmctYm90dG9tOiA3cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgLy8gICY6YmVmb3JlLCY6YWZ0ZXJ7XHJcbiAgICAvLyAgICAgY29udGVudDogJyc7XHJcbiAgICAvLyAgICAgYmFja2dyb3VuZDogdmFyKC0tc25vdy1kcmlmdCk7XHJcbiAgICAvLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy8gICAgIGJvdHRvbTogMTBweDtcclxuICAgIC8vICAgICBoZWlnaHQ6IDJweDtcclxuICAgIC8vICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vICAgJjpiZWZvcmV7XHJcbiAgICAvLyAgICAgbGVmdDogMHB4O1xyXG4gICAgLy8gICB9XHJcbiAgICAvLyAgICY6YWZ0ZXJ7XHJcbiAgICAvLyAgICAgcmlnaHQ6IDBweDtcclxuICAgIC8vICAgfVxyXG4gICB9XHJcbiAgIHB7XHJcbiAgICBAaW5jbHVkZSB6ZXJvTWFyZ1BhZDtcclxuICAgfVxyXG5cclxuICAgICYuYWNjb3VudFByb2ZpbGVyIHtcclxuICAgICAgaDEge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIFxyXG5cclxuICAuZXJyb3JNZXNzYWdlLFxyXG4gIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0td3JvbmcpO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xyXG4gICAgbWFyZ2luOiAycHggYXV0byAxMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhci1yZ2JhKC0tbGlnaHQsIDAuNCk7XHJcbiAgfVxyXG5cclxuICAubG9naW5OYXYge1xyXG4gICAgQGluY2x1ZGUgZmxleENlbnRlcjtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXItcmdiYSgtLWxpZ2h0LCAwLjMpO1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICAgIHBhZGRpbmc6IDNweCA1cHg7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwcHg7XHJcbiAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNXB4O1xyXG4gICAgICBAaW5jbHVkZSBob3ZlciB7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICB9XHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgPiAqIHtcclxuICAgICAgbWFyZ2luOiAwIDVweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zc29NZXNzYWdle1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ3JhcGUtanVpY2UpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcclxuICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICBmb250LXNpemU6IC44NWVtO1xyXG4gICAgcHtcclxuICAgICAgQGluY2x1ZGUgemVyb01hcmdQYWQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybVdyYXAge1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBtYXJnaW4tdG9wOiAwcHg7XHJcbiAgICBwYWRkaW5nOiAwIDBweCAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiA2MDBweDtcclxuXHJcbiAgICAmLmZvcmdvdFBhc3N3b3Jke1xyXG4gICAgICBwe1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgICAgQGluY2x1ZGUgY2hlY2tib3goJGJvcmRlckNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSwgJHNlbGVjdGVkQ29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB+IGxhYmVsLFxyXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIH4gbGFiZWwge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuMzVlbTtcclxuICAgIH1cclxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4xZW07XHJcbiAgICAgIEBpbmNsdWRlIHJhZGlvKCRzZWxlY3RlZEJvcmRlcjogdmFyKC0tYnJhbmQtZGFyayksICRzZWxlY3RlZENvbG9yOiB2YXIoLS1ob3ZlciksICRib3JkZXJDb2xvcjogdmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHlsZWRGaWVsZHNldCB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICBsZWdlbmQge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybVdyYXAubG9naW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiA5NjBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAuZm9ybVdyYXBJbm5lcntcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbndpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4gICAgLnN0YXR1c01lc3NhZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCh2YXIoLS1ibGFjaykpO1xyXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICBtYXJnaW46IDEwcHggYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuaG9yekRpdmlkZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxud2lkdGg6IDUwcHg7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MHB4O1xyXG4gICAgICAvLyAubGluZSB7XHJcbiAgICAgIC8vICAgaGVpZ2h0OiAycHg7XHJcbiAgICAgIC8vICAgZmxleC1ncm93OiAxO1xyXG4gICAgICAvLyAgIGJhY2tncm91bmQ6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgLy8gICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICAub3Ige1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgbWFyZ2luLWlubGluZTogMTVweDtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgdHJhbnNsYXRlOiAwIDBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIFxyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubG9naW5XcmFwcGVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAuZmllbGRXcmFwcGVyIHtcclxuICAgICAgICBtaW4td2lkdGg6IDI4MHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmVtcGxveWVlTG9naW4ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcGFkZGluZzogMzBweCAyMHB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgICBsaW5lLWhlaWdodDogMS44O1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgaDMge1xyXG4gICAgICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIH1cclxuICAgICAgYSB7XHJcbiAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0KTtcclxuICAgICAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0taG92ZXIpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIHtcclxuICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMHB4O1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgbWF4LXdpZHRoOiAxMjAwcHg7XHJcbiAgICAuYnV0dG9ucyB7XHJcbiAgICAgIC0tZ3JhcGhpYzogMTcwcHg7XHJcbiAgICAgIC0tZ3Vlc3QtZ3JhcGhpYzogMTIwcHg7XHJcbiAgICAgIC0tYm9yZGVyOiA4cHg7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgLy8gYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIGdhcDogMjVweDtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIG1heC13aWR0aDogODYwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBwYWRkaW5nOiAwcHggMHB4IDAgMDtcclxuICAgICAgYSB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBib3JkZXI6IDBweCBzb2xpZCAjYTI3NWIzO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdyYXBoaWMpO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDEyNXB4O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgLjJzLCB0cmFuc2xhdGUgLjJzLCBzY2FsZSAuMnM7XHJcbiAgICAgICAgXHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAvL0NyZWF0ZXMgc2FtZSBob3ZlciBlZmZlY3QgYXMgbmF2aWdhdGlvblxyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgICAgc2NhbGU6IDAgMC4yNTtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1jaXJjbGUpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLXNtb290aC1zbSk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgIC50ZXh0SG9sZGVye1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgICBnYXA6IDhweDtcclxuICAgICAgIH1cclxuICAgICAgXHJcbiAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAkZmFzdDtcclxuICAgICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1zZWNvbmRhcnktZm9udCk7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICBmb250LXNpemU6LjhlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyYXBoaWNIb2xkZXIge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1ncmFwaGljKTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1ncmFwaGljKTtcclxuICAgICAgICAgIGFzcGVjdC1yYXRpbzogMTcwIC8gMTk2O1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICBib3R0b206IC01cHg7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xyXG4gICAgICAgICBcclxuICAgICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlcik7XHJcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IGNhbGModmFyKC0tYm9yZGVyKSAqIDMuNSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmlsbFNwYWNlO1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBiYWNrZ3JvdW5kQ292ZXI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgICAgICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgICAgICAgIHdpZHRoOiA3NXB4O1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogIzgxNGQ5ZDtcclxuICAgICAgICAgIGNvbG9yOiAjZDNjMmRmO1xyXG4gICAgICAgICAgYm9yZGVyOiA2cHggc29saWQgIzJkMTU0MTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICAgICAgICAgIHRvcDogLTM1cHg7XHJcbiAgICAgICAgICByaWdodDotMjBweDtcclxuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmVucm9sbGVlTG9naW5CdG4ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogIzJkMTU0MTtcclxuICAgICAgICAgIGJvcmRlcjogNXB4IHNvbGlkICNhMjc1YjM7XHJcbiAgICAgICAgICAvLyBib3gtc2hhZG93OiAwIDhweCAxNXB4IHJnYmEoMCwwLDAsLjMpO1xyXG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweDtcclxuICAgICAgICAgIC8vICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA1cHggdmFyKC0tbG92ZWx5LWxpbGFjKSwgMCAwIDAgNXB4IHZhcigtLWxvdmVseS1saWxhYyk7XHJcbiAgICAgICAgICAuZ3JhcGhpY0hvbGRlciB7XHJcbiAgICAgICAgICAgIHRyYW5zbGF0ZTogLTI1cHggMHB4O1xyXG4gICAgICAgICAgICByb3RhdGU6IC01ZGVnO1xyXG4gICAgICAgICAgICBib3R0b206IC0xOHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXN7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhci1yZ2JhKC0tZ3JhcGUtanVpY2UsIC41KTtcclxuICAgICAgICAgICAgc2NhbGU6IDEuMTtcclxuICAgICAgICAgICAvLyAgZmlsdGVyOiBkcm9wLXNoYWRvdygzcHggMTBweCA1cHggcmdiYSgjMDAwMDAwLCAuMykpO1xyXG4gICAgICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMTVweCByZ2JhKDAsMCwwLC4zKTtcclxuICAgICAgICAgICAgLmdyYXBoaWNIb2xkZXJ7XHJcbiAgICAgICAgICAgICAgcm90YXRlOiAtMmRlZztcclxuICAgICAgICAgICAgICBzY2FsZTogMS4xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMyZDE1NDE7XHJcbiAgICAgICAgICAgICAgIHJvdGF0ZTogM2RlZztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5ndWVzdExvZ2luQnRuIHtcclxuICAgICAgICAgIGNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ3Vlc3QtZ3JhcGhpYyk7XHJcbiAgICAgICAgICBnYXA6IDEwcHg7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxMDBweDtcclxuICAgICAgICAgIC8vIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDJlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5ncmFwaGljSG9sZGVyIHtcclxuICAgICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1ndWVzdC1ncmFwaGljKTtcclxuICAgICAgICAgICAgd2lkdGg6IHZhcigtLWd1ZXN0LWdyYXBoaWMpO1xyXG4gICAgICAgICAgICB0cmFuc2xhdGU6IC0yMHB4IDEwcHg7XHJcbiAgICAgICAgICAgICByb3RhdGU6IDVkZWc7XHJcbiAgICAgICAgICAgICBcclxuICAgICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXN7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhci1yZ2JhKC0tZ3JhcGUtanVpY2UsIC41KTtcclxuICAgICAgICAgICAgc2NhbGU6IDEuMTtcclxuICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDE1cHggcmdiYSgwLDAsMCwuMyk7XHJcbiAgICAgICAgICAgIC5ncmFwaGljSG9sZGVye1xyXG4gICAgICAgICAgICAgIHJvdGF0ZTogLTJkZWc7XHJcbiAgICAgICAgICAgICAgc2NhbGU6IDEuMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIC8vIGNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWJyaWdodCkpO1xyXG4gICAgICAgICAgICAvLyBzY2FsZTogMS4xO1xyXG4gICAgICAgICAgICAvLyAmOmFmdGVyIHtcclxuICAgICAgICAgICAgLy8gICBzY2FsZTogMSAxO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAudGV4dCB7XHJcbiAgICAgICAgICAgLy8gY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtYnJpZ2h0KSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAvLyAmOmFmdGVyIHtcclxuICAgICAgICAgIC8vICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICAgIC8vICAgc2NhbGU6IDEgMTtcclxuICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgLnByb2ZpbGVTZXR0aW5nc0V4cGxhaW5lcixcclxuICAgIC5wcm9maWxlRXJyb3JXcmFwIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5lcnJvck1lc3NhZ2Uge1xyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmluc3RydWN0aW9uIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC5hY2NvcmRpb25XcmFwcGVyIHtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHlsZWRGaWVsZHNldCB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XHJcbiAgICAgIC8vYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhci1yZ2JhKC0tbGlnaHQsIDAuNSkgIWltcG9ydGFudDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDE4cHg7XHJcblxyXG4gICAgICAuY29udHJvbFdyYXBwZXIge1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zdHlsZWRGaWVsZHNldC5waG9uZSB7XHJcbiAgICAgIC5maWVsZFdyYXBwZXIge1xyXG4gICAgICAgIG1hcmdpbjogMTBweCAwIDE1cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLmNvbnRyb2xXcmFwcGVyIHtcclxuICAgICAgICAuY29udHJvbCB7XHJcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHAge1xyXG4gICAgICAmLnByb2ZpbGVTZWxlY3RFeHBsYWluZXIge1xyXG4gICAgICAgIEBpbmNsdWRlIGZsZXhDZW50ZXI7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1icmlnaHQpKTtcclxuICAgICAgICBwYWRkaW5nOiA4cHggMTJweDtcclxuICAgICAgICBtYXJnaW46IDAgYXV0byAxOHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcblxyXG4gICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgICBAaW5jbHVkZSBjc3NBcnJvdyhib3R0b20sICRjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KSwgJGhlaWdodDogN3B4LCAkd2lkdGg6IDEwcHgpO1xyXG4gICAgICAgICAgQGluY2x1ZGUgaG9yekNlbnRlcjtcclxuICAgICAgICAgIGJvdHRvbTogLTZweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYnV0dG9uSG9sZGVyIHtcclxuICAgICAgbWFyZ2luOiAyMHB4IDAgMjBweDtcclxuICAgIH1cclxuICAgIC5yZXNldEFjY291bnRUeXBlQnRuIHtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGNvbG9yV2l0aENvbnRyYXN0KC0tYnJhbmQtZGFyayk7XHJcbiAgICAgIHRyYW5zaXRpb246ICR2ZXJ5RmFzdDtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgcGFkZGluZzogMnB4O1xyXG5cclxuICAgICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICAgIEBpbmNsdWRlIGNvbG9yV2l0aENvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hY2NvcmRpb25Nb2R1bGUgLmFjY29yZGlvblRpdGxlIHtcclxuICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1saWdodCk7XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmFzaWMpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybVdyYXAudHdvRmFjdG9yIHtcclxuICAgIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24ge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgIC5maWVsZFdyYXBwZXIge1xyXG4gICAgICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYnV0dG9uIHtcclxuICAgICAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjVEZBQnV0dG9uQXBwIHtcclxuICAgICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgICBwYWRkaW5nOiAwLjM1ZW0gMC41ZW07XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgI1RGQUJ1dHRvbkVtYWlsLFxyXG4gICAgI09UUEJ1dHRvbiB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgICAgcGFkZGluZzogMCAwIDVweDtcclxuICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAgICZbZGF0YS13YWl0LWEtZmV3PVwidHJ1ZVwiXSB7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5idXR0b25Ib2xkZXIge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZy10b3A6IDE1cHg7XHJcblxyXG4gICAgYnV0dG9uIHtcclxuICAgICAgQGluY2x1ZGUgYnV0dG9uKHZhcigtLXdlYmVyLW1pZG5pZ2h0KSk7XHJcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdHlsZWRGaWVsZHNldCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG5cclxuICAgIC5ncm91cExlZ2VuZCB7XHJcbiAgICAgIHBhZGRpbmc6IDRweCAycHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgIGZvbnQtc2l6ZTogLjllbTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zaW1wbGVEaWFsb2cge1xyXG4gIC5jbG9zZURpYWxvZyB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuI3Jlc2V0RGF0YSB7XHJcbiAgYnV0dG9uIHtcclxuICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbGcpIHtcclxuICAubG9naW5UZWFzZXJWaWRlbyB7XHJcbiAgICBsZWZ0OiAyMHB4O1xyXG4gICAgcmlnaHQ6IDY1MHB4O1xyXG4gIH1cclxufVxyXG5AbWVkaWEgKG1heC13aWR0aDogJG1kKSB7XHJcbiAgLmxvZ2luVGVhc2VyVmlkZW8ge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbGVmdDogYXV0bztcclxuICAgIHJpZ2h0OiBhdXRvO1xyXG4gICAgdG9wOiBhdXRvO1xyXG4gICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBwYWRkaW5nOiAwIDZweCAxNXB4O1xyXG4gIH1cclxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2V7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgXHJcbi5idXR0b25ze1xyXG4gIC0tZ3Vlc3QtZ3JhcGhpYzogMTEwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDg1MHB4O1xyXG4gICAgZ2FwOiAyMHB4O1xyXG4gIH1cclxuICB9IFxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHR3ZWVuICsgMjBweCl7XHJcblxyXG59XHJcblxyXG5AbWVkaWEgKG1heC1oZWlnaHQ6IDY1MHB4KXtcclxuICBoZWFkZXJ7XHJcbiAgICAubG9nb1dyYXB7XHJcbiAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjbWVtYmVyc2hpcHtcclxuICAgIC5tZW1iZXJzaGlwQ29udGFpbmVye1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkdHdlZW4pIHtcclxuICA6cm9vdCB7XHJcbiAgICAtLWxvZ2luLXc6IDU1MHB4O1xyXG4gIH1cclxuICAubWVtYmVyc2hpcEJ1ZmZlciB7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgLy8gcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgIC8vIHBhZGRpbmctbGVmdDogMjBweDtcclxuICB9XHJcbiAgICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2V7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICBcclxuLmJ1dHRvbnN7XHJcbiAgLS1ncmFwaGljOiAxNTBweDtcclxuICAtLWd1ZXN0LWdyYXBoaWM6IDEwMHB4O1xyXG4gICAgLy8gbWF4LXdpZHRoOiA4NTBweDtcclxuICAgIC8vIGdhcDogMjBweDtcclxuICB9XHJcbiAgfSBcclxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIHtcclxuLmdyYXBoaWNIb2xkZXJ7XHJcbiAgICB0cmFuc2xhdGU6IC0xMHB4IC01cHg7XHJcbiAgfVxyXG4gIC50ZXh0e1xyXG4gICAgZm9udC1zaXplOiAxLjc1ZW07XHJcbiAgfVxyXG4gIH1cclxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcge1xyXG4gICAgaGVpZ2h0OiA1MHZoO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAuYmdJbWcsXHJcbiAgICAuc2VjdGlvbkJnLFxyXG4gICAgdmlkZW8ge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNtKXtcclxuICAgICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZXtcclxuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4uYnV0dG9uc3tcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGdhcDogMzBweDtcclxuICBhLmd1ZXN0TG9naW5CdG57XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1ndWVzdC1ncmFwaGljKTtcclxuICAgIFxyXG4gICAgLnRleHRIb2xkZXJ7XHJcbnRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG4gICAgLmdyYXBoaWNIb2xkZXJ7XHJcbiAgICAgIHRyYW5zbGF0ZTogMjBweCAxMHB4O1xyXG4gICAgICBsZWZ0OiBhdXRvO1xyXG4gICAgICByaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgfVxyXG59XHJcbiAgICB9XHJcbiAgICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubG9naW4gLmZvcm1XcmFwSW5uZXJ7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIG1heC13aWR0aDogNTAwcHg7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcclxuICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkeHMpIHtcclxuICAjcmVzZXREYXRhIHtcclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA4cHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGJvZHk6YWZ0ZXIge1xyXG4gICAgbWF4LXdpZHRoOiBub25lO1xyXG4gIH1cclxuICBoZWFkZXIge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gIH1cclxuICAjbWVtYmVyc2hpcCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIHtcclxuXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHh4cykge1xyXG4gIC5tZW1iZXJzaGlwQnVmZmVyIHtcclxuICAgIC8vIHBhZGRpbmctbGVmdDogMThweDtcclxuICAgIC8vIHBhZGRpbmctcmlnaHQ6IDE4cHg7XHJcbiAgfVxyXG4gICNtZW1iZXJzaGlwIHtcclxuXHJcbiAgICAuZm9ybVdyYXAubGFuZGluZ1BhZ2Uge1xyXG4gICAgICAuYnV0dG9ucyB7XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG5cclxuICAgICAgICBhe1xyXG4gICAgICAgICAgJi5ndWVzdExvZ2luQnRue1xyXG4gICAgICAgICAgICAtLWJvcmRlcjogNXB4O1xyXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA4NXB4O1xyXG4gICAgICAgICAgIGJvcmRlcjogM3B4IHNvbGlkICNhMjc1YjM7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50ZXh0SG9sZGVye1xyXG5mb250LXNpemU6IDAuOGVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR0aW55KSB7XHJcbiAgaGVhZGVye1xyXG4gICAgLmxvZ29XcmFwe1xyXG4gICAgICBtYXgtd2lkdGg6IDE3MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAjbWVtYmVyc2hpcCB7XHJcbiAgICAubWVtYmVyc2hpcENvbnRhaW5lcntcclxuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XHJcbiAgICB9XHJcbiAgICAudGl0bGVBcmVhe1xyXG4gICAgICBwe1xyXG4gICAgICAgIGZvbnQtc2l6ZTogLjhlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS40ZW07XHJcbiAgICAgIH1cclxuaDEsaDIsaDN7XHJcbiAgZm9udC1zaXplOiAxLjVlbTtcclxufVxyXG4gICAgfVxyXG4gICAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIHtcclxuICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgICAtLWdyYXBoaWM6IDE0MHB4O1xyXG4gICAgICAgIC8vIC0tZ3Vlc3QtZ3JhcGhpYzogNTJweDtcclxuICAgICAgICAvLyBmb250LXNpemU6IDAuN2VtO1xyXG4gICAgICAgIGF7XHJcbiAgICAgICAgICAmLmVucm9sbGVlTG9naW5CdG57XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDExMHB4O1xyXG4gICAgICAgICAgICAuZ3JhcGhpY0hvbGRlcntcclxuIHRyYW5zbGF0ZTogLTIwcHggMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICBcclxuICAgICAgICAgICBcclxuICAgICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICB3aWR0aDogNjVweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHRlZW55KSB7XHJcbiAgI21lbWJlcnNoaXAge1xyXG5cclxuICAgIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gICAgICAgICAgcGFkZGluZy10b3A6IDBweDtcclxuICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgIC0tZ3JhcGhpYzogMTE1cHg7XHJcbiAgICAgICAgLS1ndWVzdC1ncmFwaGljOjg1cHg7XHJcbiAgICAgICBcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgLy8gIGdhcDogMzBweDtcclxuXHJcbiAgICAgICAgYXtcclxuICAgICAgICAgICYuZW5yb2xsZWVMb2dpbkJ0bntcclxuICAgICAgICAgICAgIC0tYm9yZGVyOiA2cHg7XHJcbiAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICBcclxuICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAuZ3JhcGhpY0hvbGRlcntcclxuICAgICAgICAgICAgICAgdHJhbnNsYXRlOiAtMTBweCAtNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjI1ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHRIb2xkZXJ7XHJcbnRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAmLmd1ZXN0TG9naW5CdG57XHJcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjNweDtcclxuICAgICAgICAgICAgLmdyYXBoaWNzSG9sZGVye1xyXG4gICAgICAgICAgICAgIHRyYW5zbGF0ZTogMjBweCA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjU1ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHRIb2xkZXJ7XHJcbnRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICB9XHJcbiAgICAgICAgICAvLyAgIC0tYm9yZGVyOiA1cHg7XHJcbiAgICAgICAgICAvLyAgIG1pbi1oZWlnaHQ6IDg1cHg7XHJcbiAgICAgICAgICAvLyAgYm9yZGVyOiAzcHggc29saWQgI2EyNzViMztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRleHRIb2xkZXJ7XHJcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIkB1c2UgXCJzaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcInNoYXJlZC1taXhpbnNcIiBhcyAqO1xyXG5AdXNlIFwibWV0YS1taXhpbnNcIiBhcyAqO1xyXG5cclxuKltzdHlsZSo9XCJmb250LXdlaWdodDogYm9sZFwiXXtcclxuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5ydGUge1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIGg0LFxyXG4gIGg1IHtcclxuICAgIG1hcmdpbjogMC44ZW0gMCAwLjVlbTtcclxuICB9XHJcbiAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcbiAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBhIHtcclxuICAgIEBpbmNsdWRlIGZvY3VzIHtcclxuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGE6aGFzKGltZykge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMnB4O1xyXG4gICAgICByaWdodDogM3B4O1xyXG4gICAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICR2ZXJ5RmFzdDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1ob3Zlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIC5pY29uIHtcclxuICAgIC8vICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgLy8gQkVHSU4gSU5MSU5FIE1FRElBIFNUWUxFUyAvL1xyXG4gIGlmcmFtZSB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAoNDBweCAqIDIpKTtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gKDQwcHggKiAyKSkgLyAxLjc3NzgpOyAvKiAxNjo5ICovXHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgJltzdHlsZSo9XCJmbG9hdDogcmlnaHRcIl0ge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmW3N0eWxlKj1cImZsb2F0OiBsZWZ0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMjBweCAwcHg7XHJcbiAgICB9XHJcbiAgICAmW3N0eWxlKj1cImZsb2F0OiByaWdodFwiXSxcclxuICAgICZbc3R5bGUqPVwiZmxvYXQ6IGxlZnRcIl0ge1xyXG4gICAgICBtYXgtd2lkdGg6IDYwJTtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR4cykge1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkeHhzKSwgKG1heC13aWR0aDogJG1kKSBhbmQgKG1pbi13aWR0aDogJHNtICsgMSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJHBhZDogNXB4O1xyXG4gICRib3JkZXI6IDFweDtcclxuICBmaWd1cmU6bm90KC50ZXJtQmJsKSB7XHJcbiAgICBtYXJnaW46IDIwcHggMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgI3skcGFkfSAtIHZhcigtLWJvcmRlcikpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXIpIHNvbGlkIHZhcigtLWdyZXkpO1xyXG4gICAgcGFkZGluZzogJHBhZDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGltZyB7XHJcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMHB4IDBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMjBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW46IDAgMjBweCAyMHB4IDBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSxcclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR4eHMpLCAobWF4LXdpZHRoOiAkbWQpIGFuZCAobWluLXdpZHRoOiAkc20gKyAxKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmlnY2FwdGlvbiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0LWdyZXkpO1xyXG4gICAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEVORCBJTkxJTkUgTUVESUEgU1RZTEVTIC8vXHJcblxyXG4gIG9sIHtcclxuICAgICZbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IHVwcGVyLWFscGhhO1wiXSxcclxuICAgICZbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWFscGhhO1wiXSxcclxuICAgICZbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWdyZWVrO1wiXSxcclxuICAgICZbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IHVwcGVyLXJvbWFuO1wiXSxcclxuICAgICZbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLXJvbWFuO1wiXSB7XHJcbiAgICAgID4gbGk6YmVmb3JlIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBodHRwczovL3d3dy53My5vcmcvV0FJL1dDQUcyMS9VbmRlcnN0YW5kaW5nL3JlZmxvdy5odG1sXHJcbiAgLy8gRXhhbXBsZXMgb2YgY29udGVudCB3aGljaCByZXF1aXJlcyB0d28tZGltZW5zaW9uYWwgbGF5b3V0IGFyZSBbLi4uXSBkYXRhIHRhYmxlcyAobm90IGluZGl2aWR1YWwgY2VsbHMpLCBhbmQgaW50ZXJmYWNlc1xyXG4gIC8vIHdoZXJlIGl0IGlzIG5lY2Vzc2FyeSB0byBrZWVwIHRvb2xiYXJzIGluIHZpZXcgd2hpbGUgbWFuaXB1bGF0aW5nIGNvbnRlbnQuIEl0IGlzIGFjY2VwdGFibGUgdG8gcHJvdmlkZSB0d28tZGltZW5zaW9uYWxcclxuICAvLyBzY3JvbGxpbmcgZm9yIHN1Y2ggcGFydHMgb2YgdGhlIGNvbnRlbnQuXHJcbiAgLnRhYmxlV3JhcHBlciB7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOlxyXG4gICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWxpZ2h0KSAzMCUsIHZhci1yZ2JhKC0tbGlnaHQsIDApKSxcclxuICAgICAgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXItcmdiYSgtLWxpZ2h0LCAwKSwgdmFyKC0tbGlnaHQpIDcwJSkgMCAxMDAlLFxyXG4gICAgICByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCAwJSA1MCUsIHZhci1yZ2JhKC0tYmxhY2ssIDAuMiksIHZhci1yZ2JhKC0tYmxhY2ssIDApKSxcclxuICAgICAgcmFkaWFsLWdyYWRpZW50KGZhcnRoZXN0LXNpZGUgYXQgMTAwJSA1MCUsIHZhci1yZ2JhKC0tYmxhY2ssIDAuMiksIHZhci1yZ2JhKC0tYmxhY2ssIDApKSAwIDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgYmFja2dyb3VuZC1zaXplOlxyXG4gICAgICA0MHB4IDEwMCUsXHJcbiAgICAgIDQwcHggMTAwJSxcclxuICAgICAgMTRweCAxMDAlLFxyXG4gICAgICAxNHB4IDEwMCU7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOlxyXG4gICAgICAwIDAsXHJcbiAgICAgIDEwMCUsXHJcbiAgICAgIDAgMCxcclxuICAgICAgMTAwJTtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogbG9jYWwsIGxvY2FsLCBzY3JvbGwsIHNjcm9sbDtcclxuICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcclxuXHJcbiAgICB0YWJsZSB7XHJcbiAgICAgIG1pbi13aWR0aDogNTAwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgbWFyZ2luOiAyNXB4IDA7XHJcbiAgICAgIGNhcHRpb24ge1xyXG4gICAgICAgIHBhZGRpbmc6IDRweDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYnJhbmQtZGFyayk7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBwYWRkaW5nOiA3cHg7XHJcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgICAgIH1cclxuICAgICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXItcmdiYSgtLWJyYW5kLWJyaWdodCwgMC4xNyk7XHJcbiAgICAgIH1cclxuICAgICAgdHI6bnRoLWNoaWxkKG9kZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhci1yZ2JhKC0tYnJhbmQtYnJpZ2h0LCAwLjA2KTtcclxuICAgICAgfVxyXG4gICAgICB0aCB7XHJcbiAgICAgICAgcGFkZGluZzogN3B4O1xyXG4gICAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgICBib3JkZXItY29sb3I6IGJsYWNrO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcclxuICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgICAgfVxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4IDdweDtcclxuICAgICAgICBmb250LXNpemU6IDAuOTVlbTtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLm1vYmlsZVNjcm9sbE1lc3NhZ2Uge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcclxuICAgICAgcGFkZGluZzogNXB4IDhweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1kYXJrKTtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICBsZWZ0OiBjYWxjKDVweCArIHZhcigtLXJhZGl1cykpO1xyXG4gICAgICAgIHdpZHRoOiAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAwcHg7XHJcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcclxuICAgICAgICBib3JkZXItd2lkdGg6IDAgNnB4IDhweCA1cHg7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB2YXIoLS1icmFuZC1kYXJrKSB0cmFuc3BhcmVudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGNvbnRhaW5lciAobWF4LXdpZHRoOiA1MDBweCkge1xyXG4gIC5ydGUgLnRhYmxlV3JhcHBlciAubW9iaWxlU2Nyb2xsTWVzc2FnZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgfVxyXG59XHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkeHMpIHtcclxuICAucnRlIC50YWJsZVdyYXBwZXIge1xyXG4gICAgLm1vYmlsZVNjcm9sbE1lc3NhZ2Uge1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1yaWNoVGV4dFN0eWxlc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5AdXNlIFwibWl4aW5zXCIgYXMgKjtcclxuXHJcbkBrZXlmcmFtZXMgdHdpbmtsZTEge1xyXG4gIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoLTJkZWcpOyB9XHJcbiAgNTAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTsgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB0d2lua2xlMiB7XHJcbiAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgtMmRlZyk7ICB9XHJcbiAgNTUlIHsgdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHJvdGF0ZSgzZGVnKTsgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyB0d2lua2xlMyB7XHJcbiAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgyZGVnKTsgIH1cclxuICA1NSUgeyB0cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC00ZGVnKTsgIH1cclxufVxyXG5cclxuLnJ0ZSxcclxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCB7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xyXG4gIGgzLGg0LGg1LGg2e1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgfVxyXG4gXHJcbiAgcCxsaXtcclxuICAgIGZvbnQtc2l6ZTogMWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gIH1cclxuICBwIHtcclxuICAgIFxyXG4gICAgLy8gZm9udC1zaXplOiAxZW07XHJcbiAgfVxyXG5cclxuICBoMy5oZWFkaW5nIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbjogMjBweCAwIDE1cHg7XHJcbiAgICBmb250LXNpemU6IDJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICBjb2xvcjogdmFyKC0tcHJpbWFyeSk7XHJcbiAgICBsaW5lLWhlaWdodDogMS4wMjVlbTtcclxuICB9XHJcblxyXG4gIC5oZWFkaW5nTGlzdCxcclxuICAuc3ViaGVhZGluZ0xpc3Qge1xyXG4gICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICBtYXJnaW46IDAuNzVlbSAwIDAuNGVtO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcclxuICAgIGJvcmRlcjogNXB4IHNvbGlkIHZhcigtLWFjY2VudCk7XHJcbiAgICBib3JkZXItd2lkdGg6IDJweCAwIDAgMnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAwIDAgMDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDAgNXB4IDEwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxuXHJcbiAgaDMuaGVhZGluZ0xpc3Qge1xyXG4gICAgIGZvbnQtc2l6ZTogMS4yZW07XHJcbiAgfVxyXG5cclxuICBoNC5zdWJoZWFkaW5nTGlzdCB7XHJcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWxvdmVseS1saWxhYyk7XHJcbiAgICBmb250LXNpemU6IDEuMWVtO1xyXG4gIH1cclxuXHJcbiAgaDQuc3ViaGVhZGluZyB7XHJcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgbWFyZ2luOiAyMHB4IDAgOHB4O1xyXG4gICAgZm9udC1zaXplOiAxLjQ1ZW07XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1zZWNvbmRhcnkpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFzaWMtY29udHJhc3QpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXNlY29uZGFyeS1mb250KTtcclxuICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIH1cclxuICBwOmhhcygubGFyZ2VUZXh0KXtcclxuQGluY2x1ZGUgdHdpbmtsZUNsdXN0ZXIoKTtcclxuICB9XHJcblxyXG4gIC5sYXJnZVRleHQge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgZm9udC1zaXplOiAxLjVlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjRlbTtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4IDBweCA0M3B4O1xyXG4gICAgY29sb3I6IHZhcigtLXNlY29uZGFyeSk7XHJcbiAgfVxyXG5cclxuICAuaGlnaGxpZ2h0IHtcclxuICAgIGJhY2tncm91bmQ6IHZhci1yZ2JhKC0tYnJhbmQtYnJpZ2h0LCAwLjIpO1xyXG4gIH1cclxuXHJcbiAgICAubGlua0J1dHRvbiBhLFxyXG4gIGE6aGFzKC5saW5rQnV0dG9uKSB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICAuaWNvbntcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbiAgdWwsb2x7XHJcbiAgICBtYXJnaW4tbGVmdDogMTVweDtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgPiBsaSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcblxyXG4gICAgICAmOjptYXJrZXIge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1hY2NlbnQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgY291bnRlci1yZXNldDogY291bnRlcjtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBjb3VudGVyLWluY3JlbWVudDogY291bnRlcjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBjb3VudGVyKGNvdW50ZXIpIFwiLiBcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhIHtcclxuICAgIEBpbmNsdWRlIGNvbG9yV2l0aENvbnRyYXN0KC0tbGluayk7XHJcbiAgICAvLyBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgIC8vICAgQGluY2x1ZGUgY29sb3JXaXRoQ29udHJhc3QoLS1iYXNpYyk7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FsbG91dFN1YnRsZSB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgbWFyZ2luOiAzNXB4IGF1dG8gO1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tbGlnaHQpO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSA3MHB4KTtcclxuICAgIC8vIG1hcmdpbi1sZWZ0OiA1MHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAqIHtcclxuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xyXG4gIH1cclxuICAuYWNjZW50SWNvbntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDNweDtcclxuICAgIHRvcDogMHB4O1xyXG4gICAgZm9udC1zaXplOiA0ZW07XHJcbiAgICBjb2xvcjogdmFyKC0tbG92ZWx5LWxpbGFjKTtcclxuICAgIHotaW5kZXg6IDVcclxuICB9XHJcbiAgLnJ0ZXtcclxuICAgICAgZmlsdGVyOiBkcm9wLXNoYWRvdyg4cHggNXB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMikpO1xyXG4gICAgICBjb2xvcjogdmFyKC0td2FsZG9zLWRlbik7XHJcbiAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSAwO1xyXG4gICAgICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWxvdmVseS1saWxhYyk7XHJcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0NXB4O1xyXG4gIH1cclxuICBcclxuXHJcbn1cclxuXHJcbi5jYWxsb3V0Qm9sZCB7XHJcbiAgY2xlYXI6IGJvdGg7XHJcbiAgbWFyZ2luOiAzNXB4IGF1dG87XHJcbiAgcGFkZGluZzoyMHB4IDM1cHg7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLXdhbGRvcy1kZW4pO1xyXG5taW4taGVpZ2h0OiA2MHB4O1xyXG5wb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDUwcHgpO1xyXG5cclxuICAgKiB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgfVxyXG4gIC5hY2NlbnRJY29ue1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZm9udC1zaXplOiAyLjVlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1iZWUtYmFsbSk7XHJcbiAgICB6LWluZGV4OiA1O1xyXG4gICAgJi50b3B7XHJcbiAgICAgICAgdG9wOiAtMTBweDtcclxuICAgIGxlZnQ6IC0xMHB4O1xyXG4gICAgZm9udC1zaXplOiAyZW07XHJcbiAgICByb3RhdGU6IDcwZGVnO1xyXG4gICAgfVxyXG4gICAgJi5ib3R0b217XHJcbiAgICAgIGJvdHRvbTogLTEwcHg7XHJcbiAgICAgIHJpZ2h0OiAtOHB4O1xyXG4gICAgICBzY2FsZTogLTE7XHJcbiAgICAgIGZvbnQtc2l6ZTogMi41ZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5ydGV7XHJcbiAgICAgIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDFweCA0cHggcmdiYShibGFjaywgMC4yKSk7XHJcbiAgfVxyXG4gIFxyXG4gIGEge1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS13YWxkb3MtZGVuKTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjYWxjLWNvbnRyYXN0KHZhcigtLXdhbGRvcy1kZW4pKTtcclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICBcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxufVxyXG5cclxuQGNvbnRhaW5lciBzbGlkZUNvcHkgKG1heC13aWR0aDogNjM1cHgpe1xyXG5cclxuICAgIC5jYWxsb3V0Qm9sZHtcclxuICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAxNXB4KTtcclxuICAgICAgcGFkZGluZzogMTVweCAyNXB4IDE4cHg7XHJcbiAgICAgIC5hY2NlbnRJY29uLnRvcHtcclxuICAgICAgICAgICAgdG9wOiAtOXB4O1xyXG4gICAgbGVmdDogLThweDtcclxuICAgICAgICBmb250LXNpemU6IDEuOGVtO1xyXG4gICAgICAgICAgICByb3RhdGU6IDgwZGVnO1xyXG4gICAgICB9XHJcbiAgICAgIC5hY2NlbnRJY29uLmJvdHRvbXtcclxuICAgICAgICBmb250LXNpemU6IDIuMmVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNhbGxvdXRTdWJ0bGV7XHJcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gNDBweCk7XHJcbiAgICAgIC5ydGV7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5hY2NlbnRJY29ue1xyXG4gICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnJ0ZSwjcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwe1xyXG4gICAgICAubGFyZ2VUZXh0e1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcclxuICAgICAgICBmb250LXNpemU6IDEuNGVtO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5AY29udGFpbmVyIHNsaWRlQ29weSAobWF4LXdpZHRoOiA0MjBweCl7XHJcblxyXG4gICAgLy8gLmNhbGxvdXRCb2xke1xyXG4gICAgLy8gICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDE1cHgpO1xyXG4gICAgLy8gICBwYWRkaW5nOiAxNXB4IDI1cHggMThweDtcclxuICAgIC8vICAgLmFjY2VudEljb24udG9we1xyXG4gICAgLy8gICAgICAgICB0b3A6IC05cHg7XHJcbiAgICAvLyBsZWZ0OiAtOHB4O1xyXG4gICAgLy8gICAgIGZvbnQtc2l6ZTogMS44ZW07XHJcbiAgICAvLyAgICAgICAgIHJvdGF0ZTogODBkZWc7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vICAgLmFjY2VudEljb24uYm90dG9te1xyXG4gICAgLy8gICAgIGZvbnQtc2l6ZTogMi4yZW07XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH1cclxuXHJcbiAgICAuY2FsbG91dFN1YnRsZXtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlIDtcclxuICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgLy8gLnJ0ZXtcclxuICAgICAgLy8gICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgIC8vIH1cclxuICAgICAgLy8gLmFjY2VudEljb257XHJcbiAgICAgIC8vICAgZm9udC1zaXplOiAzZW07XHJcbiAgICAgIC8vIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAucnRlLCNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXB7XHJcbiAgICAvLyAgIC5sYXJnZVRleHR7XHJcbiAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xyXG4gICAgLy8gICAgIGZvbnQtc2l6ZTogMS40ZW07XHJcbiAgICAvLyAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbiAgICAvLyAgIH1cclxuICAgIC8vIH1cclxuXHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcblxyXG5cclxuIiwiQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5cclxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1icmlnaHQpO1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG5cclxuICAuZm9ybUFyZWEge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgLnJ0ZSB7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24ge1xyXG4gICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgZmxleC1ncm93OiAwO1xyXG4gICAgICB3aWR0aDogNzVweDtcclxuICAgICAgaGVpZ2h0OiA3NXB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgZm9udC1zaXplOiAzZW07XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkeHMpIHtcclxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2Uge1xyXG4gICAgcGFkZGluZzogMTVweDtcclxuXHJcbiAgICAuZm9ybUFyZWEge1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgICAgLmljb24ge1xyXG4gICAgICAgIHdpZHRoOiA1NXB4O1xyXG4gICAgICAgIGhlaWdodDogNTVweDtcclxuICAgICAgICBmb250LXNpemU6IDIuMjVlbTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5cclxuLm1lbWJlcnNoaXBQYWdlIC5lcnJvclBhZ2Uge1xyXG4gIC50aXRsZUFyZWEge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICB9XHJcblxyXG4gIC5pY29uIHtcclxuICAgIGZvbnQtc2l6ZTogNWVtO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJvcmRlcjogNHB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcclxuICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgd2lkdGg6IDE1MHB4O1xyXG4gICAgaGVpZ2h0OiAxNTBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gIH1cclxuXHJcbiAgLnJ0ZSB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXItZGFya2VuKHZhcigtLWJyYW5kLWRhcmspLCAxNSUpO1xyXG4gICAgcGFkZGluZzogNTBweCAyMHB4IDQwcHggMjBweDtcclxuICAgIG1hcmdpbi10b3A6IC02MHB4O1xyXG4gICAgYm9yZGVyOiAzcHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgaDMuaGVhZGluZyB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRzbSkge1xyXG4gIC5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIHtcclxuICAgIC5pY29uIHtcclxuICAgICAgZm9udC1zaXplOiA0ZW07XHJcbiAgICAgIHdpZHRoOiAxMDBweDtcclxuICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCJzaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcInNoYXJlZC1taXhpbnNcIiBhcyAqO1xyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gIGRldGFpbHMge1xyXG4gICAgLy8gSWYgeW91IGNoYW5nZSB0aGlzIHRyYW5zaXRpb24gc3BlZWQsIHlvdSdsbCBoYXZlIHRvIGNoYW5nZSBpdCBhdCB0aGUgdG9wIG9mIEFjY29yZGlvbi50c1xyXG4gICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW07XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcblxyXG4gIGRldGFpbHMgPiBzdW1tYXJ5OjptYXJrZXIsIC8qIExhdGVzdCBDaHJvbWUsIEVkZ2UsIEZpcmVmb3ggKi9cclxuICBkZXRhaWxzID4gc3VtbWFyeTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlciAvKiBTYWZhcmkgKi8ge1xyXG4gICAgZGlzcGxheTogbm9uZTtcclxuICB9XHJcblxyXG4gIC5hY2NvcmRpb25Nb2R1bGUge1xyXG4gICAgLmFjY29yZGlvblRpdGxlIHtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgICZbZGF0YS1pbnRlcmFjdGlvbi1tYW5kYXRvcnk9XCJ0cnVlXCJdOm5vdCguaW50ZXJhY3RlZFdpdGgpIHtcclxuICAgICAgLmljb24tbWFuZGF0b3J5IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICAgIC5pbnRlcmFjdGlvbk5vdGlmaWNhdGlvbiB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICBAaW5jbHVkZSBzY3JlZW5SZWFkZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICArIC5ydGUge1xyXG4gICAgICBtYXJnaW4tdG9wOiAyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxudWw6aGFzKC5hY2NvcmRpb25Nb2R1bGUpIHtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxuXHJcbiAgPiBsaSB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gIH1cclxuXHJcbiAgKyAucnRlIHtcclxuICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1hY2NvcmRpb25zXCI7XHJcbkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5cclxuXHJcblxyXG5cclxuLmFjY29yZGlvblNldHtcclxuICAtLXJhZGl1czogMTVweDtcclxuICAtLWJvcmRlckM6IHZhcigtLXNvZnQtbGF2ZW5kYXIpO1xyXG4gXHJcbi5hY2NvcmRpb25Db250YWluZXI6Zmlyc3QtY2hpbGR7XHJcblxyXG4gICAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAgXHJcbiAgICAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMCAwO1xyXG4gICAgXHJcbiAgICB9XHJcbiAgfVxyXG4gIC5hY2NvcmRpb25Db250YWluZXI6bGFzdC1jaGlsZCB7XHJcbiAgICAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUge1xyXG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgICAuYWNjb3JkaW9uV3JhcHBlciB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcclxuICAgIH1cclxuICB9XHJcbiAuYWNjb3JkaW9uQ29udGFpbmVyOm9ubHktY2hpbGQge1xyXG5cclxuICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgIFxyXG4gICAgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIH1cclxuICAgIC5hY2NvcmRpb25XcmFwcGVyIHtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAucHJpbWFyeUFjY29yZGlvbiB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgICAmOmZvY3VzLXdpdGhpbiB7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcbiAgICB9XHJcblxyXG4gICAgJltvcGVuXSB7XHJcbiAgICAgIFxyXG4gICAgICAgLmFjY29yZGlvblRpdGxlIHtcclxuICAgICAgICBcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogNXB4O1xyXG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAuaWNvbi1hcnJvdy1kb3due1xyXG4gICAgICAgIHJvdGF0ZTogMTgwZGVnO1xyXG4mOmJlZm9yZSB7XHJcbiAgICAgICAgXHJcbiAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBcclxuICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtaW50ZXJhY3Rpb24tbWFuZGF0b3J5PVwidHJ1ZVwiXTpub3QoLmludGVyYWN0ZWRXaXRoKSB7XHJcbiAgICAgIC5pY29uLW1hbmRhdG9yeSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgICAgdG9wOiA1cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICAgIHBhZGRpbmc6IDNweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMXB4IDFweCA4cHggMHB4IHZhci1yZ2JhKC0tYmxhY2ssIDAuMyk7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjc1ZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLmFjY29yZGlvblRpdGxlIHtcclxuICAgICAgY29sb3I6dmFyKC0tcHJpbWFyeSk7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGdhcDogMTBweDtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBtaW4taGVpZ2h0OiA2NXB4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICBwYWRkaW5nOiA3cHggMTVweCA3cHggNDBweDtcclxuICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ib3JkZXJDKTtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMHB4O1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zbm93LWRyaWZ0KTtcclxuICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMTVzO1xyXG4gICAgICBmb250LWZhbWlseTp2YXIoLS1wcmltYXJ5LWZvbnQpO1xyXG5cclxuICAgICBcclxuICAgICAgIC5pY29uLWFycm93LWRvd24ge1xyXG4gICAgICBjb2xvcjogdmFyKC0tZ3JhcGUtanVpY2UpO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICBsZWZ0OiAxMnB4O1xyXG4gICAgICB0cmFuc2xhdGU6MCAtNTAlO1xyXG4gICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbiAgICAgIHRyYW5zaXRpb246IDAuMnMgcm90YXRlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgIGNvbnRlbnQ6ICdNJztcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4zNWVtO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zbGF0ZSAwLjJzO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLXdlYmVyLW1pZG5pZ2h0KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc25vdy1kcmlmdCk7XHJcbiAgICAgICAgLmljb24tYXJyb3ctZG93biB7XHJcbiAgICAgICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1zZWNvbmRhcnktY29udHJhc3QpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgXHJcbiAgICB9XHJcblxyXG4gICAgLmFjY29yZGlvbldyYXBwZXIge1xyXG4gICAgICAgcGFkZGluZzogMjVweDtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJvcmRlckMpO1xyXG4gICAgYm9yZGVyLXRvcC13aWR0aDogMHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMHB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICsgLnJ0ZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbiJdfQ== */