@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 */
@font-face {
  font-family: "villanova";
  src: url("/fonts/villanova.woff2") format("woff2"), url("/fonts/villanova.ttf") format("truetype"), url("/fonts/villanova.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.icon,
[class^=icon-],
[class*=" icon-"] {
  /* Use !important to prevent extensions from overriding this font. */
  font-family: "villanova" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-accessibility:before {
  content: "z";
}

.icon-pause:before {
  content: "y";
}

.icon-play:before {
  content: "x";
}

.icon-mouse:before {
  content: "w";
}

.icon-log-out:before {
  content: "s";
}

.icon-minus:before {
  content: "v";
}

.icon-plus:before {
  content: "u";
}

.icon-achievement:before {
  content: "t";
}

.icon-glossary:before {
  content: "q";
}

.icon-faq:before {
  content: "r";
}

.icon-pdf:before {
  content: "p";
}

.icon-print:before {
  content: "o";
}

.icon-menu:before {
  content: "n";
}

.icon-arrow-next:before {
  content: "m";
}

.icon-arrow-previous:before {
  content: "l";
}

.icon-account:before {
  content: "k";
}

.icon-quickview:before {
  content: "j";
}

.icon-slideview:before {
  content: "i";
}

.icon-learn-more:before {
  content: "h";
}

.icon-home:before {
  content: "g";
}

.icon-search:before {
  content: "f";
}

.icon-announce:before {
  content: "e";
}

.icon-link:before {
  content: "d";
}

.icon-x:before {
  content: "b";
}

.icon-lock:before {
  content: "c";
}

.icon-check:before {
  content: "a";
}

/*---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;
    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);
    min-width: 0;
    width: 100%;
  }
  .styledFieldset legend,
  .styledFieldset .groupLegend,
  .umbraco-forms-fieldset legend,
  .umbraco-forms-fieldset .groupLegend {
    padding: 4px 8px;
    border-radius: var(--radius-sm);
    background-color: var(--basic);
    color: var(--basic-contrast);
  }
  .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);
    }
    .fieldWrapper .showHide:hover .icon:after,
    .umbraco-forms-field.shortanswer .showHide:hover .icon:after,
    .umbraco-forms-field.date .showHide:hover .icon:after,
    .umbraco-forms-field.password .showHide:hover .icon:after {
      background: 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);
  }
  [data-browser=ie] .fieldWrapper .showHide:hover .icon:after,
  [data-browser=ie] .umbraco-forms-field.shortanswer .showHide:hover .icon:after,
  [data-browser=ie] .umbraco-forms-field.date .showHide:hover .icon:after,
  [data-browser=ie] .umbraco-forms-field.password .showHide:hover .icon:after {
    background: 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);
  }
  .ie .fieldWrapper .showHide:hover .icon:after,
  .ie .umbraco-forms-field.shortanswer .showHide:hover .icon:after,
  .ie .umbraco-forms-field.date .showHide:hover .icon:after,
  .ie .umbraco-forms-field.password .showHide:hover .icon:after {
    background: 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 .icon:after,
  .umbraco-forms-field.shortanswer .showHide.focus-visible .icon:after,
  .umbraco-forms-field.date .showHide.focus-visible .icon:after,
  .umbraco-forms-field.password .showHide.focus-visible .icon:after {
    background: 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 .icon:after,
  .umbraco-forms-field.shortanswer .showHide:focus-visible .icon:after,
  .umbraco-forms-field.date .showHide:focus-visible .icon:after,
  .umbraco-forms-field.password .showHide:focus-visible .icon:after {
    background: 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: var(--brand-dark-contrast);
  }
  .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: 650px) {
    .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: 450px) {
    .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;
  }
  p {
    margin: 0.35em 0 0.75em;
    line-height: 1.55em;
  }
  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);
  }
  a {
    color: var(--link);
    background-color: var(--link-contrast);
    padding-left: 2px;
    padding-right: 2px;
    border-bottom: 1px solid var(--link);
    transition: 0.15s;
    text-decoration: none;
  }
  @media (hover: hover) and (pointer: fine) {
    a:hover {
      border-bottom-color: transparent;
    }
  }
  [data-browser=ie] a:hover {
    border-bottom-color: transparent;
  }
  .ie a:hover {
    border-bottom-color: transparent;
  }
  a.focus-visible {
    border-bottom-color: transparent;
  }
  a:focus-visible {
    border-bottom-color: transparent;
  }
  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):focus-visible, *:not(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;
}

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

html {
  scrollbar-gutter: stable;
  overflow-x: hidden;
}
html[data-active-zone=home][data-active-dialog=""] {
  scroll-snap-type: y mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scroll-padding-top: calc((100vh - var(--footer-height)) / 5 * 2);
}

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: calc(100vw - var(--scrollbar-width));
    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: 780px;
    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: 800px) {
  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(--brand-dark) calc(0.98 * 100%), transparent);
  scrollbar-color: var(--dark-grey) var(--light-grey);
}

.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;
  text-transform: uppercase;
  font-weight: 700;
  font-family: var(--primary-font);
}

[data-dialog-style=modal] {
  padding: 20px;
}
.safari [data-dialog-style=modal] {
  padding: 20px 20px 150px;
}
[data-dialog-style=modal] .dialogInner {
  border-radius: 0;
  padding: 30px 60px;
  text-align: center;
  background-color: var(--light);
  color: var(--light-contrast);
  position: relative;
  border-bottom: 6px solid var(--hover);
}
[data-dialog-style=modal] .dialogInner button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-bright) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  text-transform: uppercase;
  gap: 5px;
}
[data-dialog-style=modal] .dialogInner button .icon {
  font-family: var(--icon-font);
}
@media (hover: hover) and (pointer: fine) {
  [data-dialog-style=modal] .dialogInner button:hover {
    transform: scale(1.03);
    text-decoration: none;
    background-color: var(--hover);
    color: var(--hover-contrast);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] [data-dialog-style=modal] .dialogInner button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie [data-dialog-style=modal] .dialogInner button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[data-dialog-style=modal] .dialogInner button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[data-dialog-style=modal] .dialogInner button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[data-dialog-style=modal] .dialogInner button[disabled], [data-dialog-style=modal] .dialogInner button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}

.safari [data-dialog-style=largeModal] {
  padding: 20px 20px 150px;
}
[data-dialog-style=largeModal] .dialogInner {
  border-radius: 0;
  padding: 20px;
  background-color: var(--light);
  color: var(--light-contrast);
}
[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: 0 0 var(--radius) var(--radius);
  padding: 20px;
  background-color: var(--brand-dark);
  background-image: linear-gradient(175deg, var(--brand-dark) 40%, oklch(from var(--brand-dark) max(l - l * 0.05, 0) c h) 100%);
  color: var(--brand-dark-contrast);
}
[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: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-bright) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[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);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie [data-dialog-style=shade] .dialogInner .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[data-dialog-style=shade] .dialogInner .closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[data-dialog-style=shade] .dialogInner .closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
[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 {
  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;
}

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

@media (max-width: 650px) {
  [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-is-loading=true] #backgroundPlayBtn {
  opacity: 0 !important;
}
#backgroundPlayBtn .icon-play {
  display: none;
}
#backgroundPlayBtn .text {
  display: none;
}
#backgroundPlayBtn .text:before, #backgroundPlayBtn .text:after {
  display: none !important;
}
@media (hover: hover) and (pointer: fine) {
  #backgroundPlayBtn:hover .icon {
    display: none;
  }
  #backgroundPlayBtn:hover .text.pause {
    all: unset;
    text-transform: uppercase;
    font-weight: 700;
    display: block;
  }
}
[data-browser=ie] #backgroundPlayBtn:hover .icon {
  display: none;
}
[data-browser=ie] #backgroundPlayBtn:hover .text.pause {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
.ie #backgroundPlayBtn:hover .icon {
  display: none;
}
.ie #backgroundPlayBtn:hover .text.pause {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
#backgroundPlayBtn.focus-visible .icon {
  display: none;
}
#backgroundPlayBtn.focus-visible .text.pause {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
#backgroundPlayBtn:focus-visible .icon {
  display: none;
}
#backgroundPlayBtn:focus-visible .text.pause {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
@media (hover: hover) and (pointer: fine) {
  #backgroundPlayBtn.pause:hover .icon,
  #backgroundPlayBtn.pause:hover .text {
    display: none;
  }
  #backgroundPlayBtn.pause:hover .text.play {
    all: unset;
    text-transform: uppercase;
    font-weight: 700;
    display: block;
  }
}
[data-browser=ie] #backgroundPlayBtn.pause:hover .icon,
[data-browser=ie] #backgroundPlayBtn.pause:hover .text {
  display: none;
}
[data-browser=ie] #backgroundPlayBtn.pause:hover .text.play {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
.ie #backgroundPlayBtn.pause:hover .icon,
.ie #backgroundPlayBtn.pause:hover .text {
  display: none;
}
.ie #backgroundPlayBtn.pause:hover .text.play {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
#backgroundPlayBtn.pause.focus-visible .icon,
#backgroundPlayBtn.pause.focus-visible .text {
  display: none;
}
#backgroundPlayBtn.pause.focus-visible .text.play {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
#backgroundPlayBtn.pause:focus-visible .icon,
#backgroundPlayBtn.pause:focus-visible .text {
  display: none;
}
#backgroundPlayBtn.pause:focus-visible .text.play {
  all: unset;
  text-transform: uppercase;
  font-weight: 700;
  display: block;
}
#backgroundPlayBtn.pause .icon-play {
  display: block;
}
#backgroundPlayBtn.pause .icon-pause {
  display: none;
}

:root {
  --bg-offset: 500px;
}
@media (max-width: 1400px) {
  :root {
    --bg-offset: 400px;
  }
}
@media (max-width: 1200px) {
  :root {
    --bg-offset: 300px;
  }
}
@media (max-width: 1070px) {
  :root {
    --bg-offset: 200px;
  }
}
@media (max-width: 900px) {
  :root {
    --bg-offset: 0px;
  }
}

@property --p1 {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
@property --p2 {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
@property --p3 {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
@property --p4 {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
@property --o1 {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}
@property --o2 {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}
@property --o3 {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}
@property --o4 {
  syntax: "<number>";
  inherits: true;
  initial-value: 1;
}
#background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  transition: height 500ms;
  width: 100%;
}
#background > * {
  width: calc(100% - 350px);
}
#background .cover-slider,
#background video,
#background .mainBgImg {
  z-index: 2;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
#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 .cover-slider .bgImg {
  width: 100%;
}
#background .bgImg,
#background .sectionBg {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - var(--bg-offset));
  height: 100%;
}
#background video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#background.move {
  top: 0;
  height: 30vh;
  transition: height 500ms 500ms;
  filter: blur(2px);
}
#background.move video,
#background.move .bgImg,
#background.move .sectionBg {
  width: 100%;
}
#background.move:after {
  --p1: 50%;
  --p2: 50%;
  --p3: 50%;
  --p4: 100%;
  --o1: 1;
  --o2: 1;
  --o3: 1;
  --o4: 0.2;
}
[data-slide=centered].menuOut #background:after, [data-slide=full].menuOut #background:after {
  --p1: 0%;
  --p2: 40%;
  --p3: 70%;
  --p4: 100%;
  --o1: 0.9;
  --o2: 1;
  --o3: 1;
  --o4: 0.9;
}
[data-slide=frame].menuOut #background:after {
  --p1: 0%;
  --p2: 40%;
  --p3: 70%;
  --p4: 100%;
  --o1: 0.85;
  --o2: 0.9;
  --o3: 0.9;
  --o4: 0.85;
}

@media (max-width: 1050px) {
  #background:after {
    --p1: 0%;
    --p2: 20%;
    --p3: 55%;
    --p4: 100%;
    --o1: 0;
    --o2: 0;
    --o3: 0.95;
    --o4: 1;
  }
  .menuOut #background:after {
    --p1: 0%;
    --p2: 40%;
    --p3: 70%;
    --p4: 100%;
    --o1: 0.9;
    --o2: 1;
    --o3: 1;
    --o4: 0.9;
  }
}
@media (max-width: 900px) {
  #background {
    height: 100vh;
    z-index: 1;
  }
  #background .cover-slider {
    width: 100%;
  }
  .menuOut #background {
    display: none;
  }
  #background:after {
    --p1: 0%;
    --p2: 20%;
    --p3: 55%;
    --p4: 100%;
    --o1: 0;
    --o2: 0;
    --o3: 0.95;
    --o4: 1;
    display: none;
  }
}
@media (max-width: 800px) {
  #background:after {
    --p1: 0%;
    --p2: 20%;
    --p3: 100%;
    --p4: 100%;
    --o1: 0;
    --o2: 1;
    --o3: 1;
    --o4: 1;
    display: none !important;
    top: max(100px, 25vh);
    height: max(100% - 100px, 100% - 50vh);
    background: linear-gradient(to bottom, color-mix(in srgb, var(--light) calc(var(--o1) * 100%), transparent) var(--p1), color-mix(in srgb, var(--light) calc(var(--o2) * 100%), transparent) var(--p2), color-mix(in srgb, var(--light) calc(var(--o3) * 100%), transparent) var(--p3), color-mix(in srgb, var(--light) calc(var(--o4) * 100%), transparent) var(--p4));
  }
  #background .bgImg,
  #background .sectionBg,
  #background video,
  #background .mainBgImg,
  #background .sectionBgHolder {
    top: 0;
    height: 100vh;
  }
}
@media (max-width: 520px) {
  #backgroundPlayBtn {
    width: 32px;
    height: 32px;
    font-size: 0.9em;
  }
}
body {
  background: var(--light);
}

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

#background.membershipBg video {
  width: calc(100% - 350px);
}

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

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

#background {
  top: 0;
  height: 100vh;
}

#backgroundPlayBtn {
  top: auto;
  bottom: 10px;
}

.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 {
  display: flex;
  min-height: var(--login-header-height);
  width: 100%;
  max-width: var(--login-w);
  width: 100%;
  border-bottom: 20px solid var(--brand-bright);
  background-color: var(--light);
  color: var(--light-contrast);
  padding: 25px 0px 20px;
  border-radius: var(--radius) var(--radius) 0 0;
  align-items: center;
}
header .branding {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-grow: 1;
  height: 100%;
  padding: 0px 10px;
}
header .logoWrap {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  max-width: 315px;
  height: 70px;
  width: 100%;
}
header .logoWrap .logo {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
header .orientationTitle {
  font-size: 1.1em;
  text-transform: uppercase;
  color: var(--brand-dark);
  padding-top: 25px;
  display: none;
}

#membership {
  --focus-outline-color: var(--brand-dark);
  --focus-shadow-color: var(--light);
  max-width: var(--login-w);
  width: 100%;
  flex-grow: 1;
  color: var(--brand-dark-contrast);
  background: var(--brand-dark);
  padding: 40px 25px 60px;
  border-radius: 0 0 var(--radius) var(--radius);
}
#membership .titleArea {
  position: relative;
  text-align: center;
  margin-bottom: 25px;
}
#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 .formWrap {
  margin-top: 10px;
  padding: 20px;
  text-align: center;
}
#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-bright);
    background-color: var(--brand-bright);
    border-color: var(--light);
  }
  #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);
  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: 450px;
  width: 100%;
  margin: 0 auto;
}
#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: 0px 0 0;
  justify-content: center;
}
#membership .formWrap.login .horzDivider .or {
  text-transform: uppercase;
  margin-left: 15px;
  margin-right: 15px;
  background: var(--brand-dark);
  padding: 10px;
  border-radius: var(--radius);
  translate: 0 20px;
  font-weight: 700;
}
#membership .formWrap.login .loginWrapper {
  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.landingPage {
  padding-left: 0px;
  padding-right: 0px;
}
#membership .formWrap.landingPage .buttons {
  --graphic: 75px;
  --guest-graphic: 60px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  align-items: flex-start;
  gap: 25px;
  margin: 0 auto;
  max-width: 450px;
  width: 100%;
  padding: 0px 25px 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: 2px solid var(--light);
  padding: 10px;
  padding-left: 0px;
  border-radius: var(--radius);
}
#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:has(.image) {
  --graphic: 90px;
}
#membership .formWrap.landingPage .buttons a:has(.image) .image {
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
  display: block;
}
#membership .formWrap.landingPage .buttons a:has(.image) .icon {
  display: none;
}
#membership .formWrap.landingPage .buttons a .text {
  font-size: 1.8em;
  position: relative;
  z-index: 3;
  transition: color 300ms;
}
#membership .formWrap.landingPage .buttons a .graphicHolder {
  min-width: var(--graphic);
  width: var(--graphic);
  aspect-ratio: 1/1;
  position: relative;
  z-index: 3;
}
#membership .formWrap.landingPage .buttons a .graphicHolder .icon,
#membership .formWrap.landingPage .buttons a .graphicHolder .image {
  border-radius: var(--radius-circle);
  border-width: 2px;
  border-style: solid;
}
#membership .formWrap.landingPage .buttons a .icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  font-size: 2.8em;
  transform-origin: center center;
  font-weight: normal;
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
  transition: all 500ms var(--timing-smooth-sm), color 300ms;
}
#membership .formWrap.landingPage .buttons a .icon:before {
  font-family: var(--icon-font);
  text-transform: lowercase;
  content: "k";
  position: relative;
  z-index: 3;
}
#membership .formWrap.landingPage .buttons a .icon:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  scale: 0 0.25;
  transform-origin: center center;
  border-radius: var(--radius-circle);
  transition: all 500ms var(--timing-smooth-sm);
  background-color: var(--brand-bright);
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn {
  background: var(--brand-dark-contrast);
  color: var(--brand-dark);
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .graphicHolder {
  translate: -20px 0px;
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .icon {
  background: var(--brand-dark);
  border-color: var(--brand-dark-contrast);
  color: var(--brand-dark-contrast);
}
#membership .formWrap.landingPage .buttons a.enrolleeLoginBtn .icon:before {
  text-transform: uppercase;
  content: "C";
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn {
  --graphic: var(--guest-graphic);
  background: var(--brand-dark);
  color: var(--brand-dark-contrast);
  gap: 10px;
  width: -webkit-fit-content;
  width: fit-content;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .graphicHolder {
  min-width: var(--guest-graphic);
  width: var(--guest-graphic);
  translate: -20px 0px;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .text {
  font-size: 1.5em;
  translate: -10px 0px;
  padding-right: 30px;
}
#membership .formWrap.landingPage .buttons a.guestLoginBtn .icon {
  border-color: var(--brand-dark-contrast);
  background: var(--brand-dark);
  color: var(--brand-dark-contrast);
  font-size: 2.5em;
}
@media (hover: hover) and (pointer: fine) {
  #membership .formWrap.landingPage .buttons a:hover .icon {
    color: var(--brand-bright-contrast);
    scale: 1.1;
  }
  #membership .formWrap.landingPage .buttons a:hover .icon:after {
    scale: 1 1;
  }
  #membership .formWrap.landingPage .buttons a:hover .text {
    color: var(--brand-bright-contrast);
  }
  #membership .formWrap.landingPage .buttons a:hover:after {
    border-radius: var(--radius);
    scale: 1 1;
  }
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a:hover .icon {
  color: var(--brand-bright-contrast);
  scale: 1.1;
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a:hover .icon:after {
  scale: 1 1;
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a:hover .text {
  color: var(--brand-bright-contrast);
}
[data-browser=ie] #membership .formWrap.landingPage .buttons a:hover:after {
  border-radius: var(--radius);
  scale: 1 1;
}
.ie #membership .formWrap.landingPage .buttons a:hover .icon {
  color: var(--brand-bright-contrast);
  scale: 1.1;
}
.ie #membership .formWrap.landingPage .buttons a:hover .icon:after {
  scale: 1 1;
}
.ie #membership .formWrap.landingPage .buttons a:hover .text {
  color: var(--brand-bright-contrast);
}
.ie #membership .formWrap.landingPage .buttons a:hover:after {
  border-radius: var(--radius);
  scale: 1 1;
}
#membership .formWrap.landingPage .buttons a.focus-visible .icon {
  color: var(--brand-bright-contrast);
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a.focus-visible .icon:after {
  scale: 1 1;
}
#membership .formWrap.landingPage .buttons a.focus-visible .text {
  color: var(--brand-bright-contrast);
}
#membership .formWrap.landingPage .buttons a.focus-visible:after {
  border-radius: var(--radius);
  scale: 1 1;
}
#membership .formWrap.landingPage .buttons a:focus-visible .icon {
  color: var(--brand-bright-contrast);
  scale: 1.1;
}
#membership .formWrap.landingPage .buttons a:focus-visible .icon:after {
  scale: 1 1;
}
#membership .formWrap.landingPage .buttons a:focus-visible .text {
  color: var(--brand-bright-contrast);
}
#membership .formWrap.landingPage .buttons a:focus-visible:after {
  border-radius: var(--radius);
  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 .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: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-dark) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
  border-color: var(--light);
}
#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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] #membership .formWrap.twoFactor .singleFieldSubmission button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie #membership .formWrap.twoFactor .singleFieldSubmission button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor .singleFieldSubmission button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor .singleFieldSubmission button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor .singleFieldSubmission button[disabled], #membership .formWrap.twoFactor .singleFieldSubmission button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#membership .formWrap.twoFactor #TFAButtonApp {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-dark) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
  padding: 0.35em 0.5em;
  margin-bottom: 20px;
}
#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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] #membership .formWrap.twoFactor #TFAButtonApp:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie #membership .formWrap.twoFactor #TFAButtonApp:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor #TFAButtonApp.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor #TFAButtonApp:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .formWrap.twoFactor #TFAButtonApp[disabled], #membership .formWrap.twoFactor #TFAButtonApp[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#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: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-dark) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  outline-offset: 0;
  text-decoration: none;
  transition: all 0.1s;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  text-transform: uppercase;
  border-color: var(--light);
  margin: 0 auto;
}
#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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] #membership .buttonHolder button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie #membership .buttonHolder button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .buttonHolder button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .buttonHolder button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#membership .buttonHolder button[disabled], #membership .buttonHolder button[aria-disabled=true] {
  opacity: 0.5;
  cursor: not-allowed;
}
#membership .styledFieldset {
  margin-bottom: 20px;
}
#membership .styledFieldset .groupLegend {
  padding: 4px 2px;
  margin-bottom: 5px;
}

.simpleDialog .closeDialog {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-dark) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] .simpleDialog .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie .simpleDialog .closeDialog:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.simpleDialog .closeDialog.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.simpleDialog .closeDialog:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.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: 10px 20px;
  border-width: 2px;
  border-radius: 0;
  border-style: solid;
  border-color: oklch(from var(--brand-dark) max(l - l * 0.1, 0) c h);
  line-height: 1.1em;
  text-align: center;
  font-family: var(--basic-font);
  font-weight: bold;
  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);
    border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
    cursor: pointer;
  }
}
[data-browser=ie] #resetData button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
.ie #resetData button:hover {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#resetData button.focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#resetData button:focus-visible {
  transform: scale(1.03);
  text-decoration: none;
  background-color: var(--hover);
  color: var(--hover-contrast);
  border-color: oklch(from var(--hover) min(l + l * 0.2, 1) c h);
  cursor: pointer;
}
#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: 1050px) {
  .loginTeaserVideo {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    transform: none;
    width: 100%;
    padding: 0 6px 15px;
  }
}
@media (max-width: 900px) {
  :root {
    --login-w: 550px;
  }
  .membershipBuffer {
    align-items: center;
    padding-right: 20px;
    padding-left: 20px;
  }
  #background.membershipBg {
    height: 70vh;
    width: 100%;
  }
  #background.membershipBg .bgImg,
  #background.membershipBg .sectionBg,
  #background.membershipBg video {
    height: 100%;
    width: 100%;
  }
  #background.membershipBg:before {
    content: "";
    display: block !important;
    position: absolute;
    z-index: 20;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: linear-gradient(color-mix(in srgb, var(--light) calc(0 * 100%), transparent), var(--light));
  }
}
@media (max-width: 650px) {
  #resetData button {
    width: 100%;
    margin-bottom: 8px;
  }
  body:after {
    max-width: none;
  }
  header {
    max-width: 100%;
  }
  #membership {
    max-width: 100%;
  }
  #membership .formWrap.landingPage .buttons {
    padding: 0px 25px 0 25px;
  }
  #membership .formWrap.landingPage .buttons a {
    width: 100%;
    margin: 0;
  }
  #membership .formWrap.landingPage .buttons a.guestLoginBtn, #membership .formWrap.landingPage .buttons a.enrolleeLoginBtn {
    width: 100%;
  }
}
@media (max-width: 520px) {
  .membershipBuffer {
    padding-left: 18px;
    padding-right: 18px;
  }
  #membership {
    padding: 20px 12px 60px;
  }
  #membership .formWrap {
    padding: 5px;
  }
  #membership .formWrap.landingPage .buttons {
    font-size: 0.8em;
    gap: 15px;
  }
}
@media (max-width: 450px) {
  #membership .formWrap.landingPage .buttons {
    --graphic: 65px;
    --guest-graphic: 52px;
    font-size: 0.7em;
  }
}
.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: 650px) {
  .rte img[style*="float: right"], .rte img[style*="float: left"] {
    max-width: 50%;
  }
}
@media (max-width: 520px), (max-width: 1050px) and (min-width: 801px) {
  .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: 650px) {
  .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: 1050px) and (min-width: 801px) {
  .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;
}
.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;
}
.rte .tableWrapper table caption {
  padding: 4px;
  font-weight: 500;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
}
.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: 3px;
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
  border-color: black;
}
.rte .tableWrapper table td {
  padding: 3px;
  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: 650px) {
  .rte .tableWrapper .mobileScrollMessage {
    display: inline-block;
  }
}
.rte p,
#revealModalDialog .copyWrap p {
  font-family: var(--basic-font);
  font-size: 1.125em;
}
.rte h3.heading,
#revealModalDialog .copyWrap h3.heading {
  width: -webkit-fit-content;
  width: fit-content;
  margin: 0.75em 0 0.4em;
  font-size: 1.65em;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.025em;
  color: var(--brand-dark);
  background-color: var(--brand-dark-contrast);
}
.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-bottom: 2px solid var(--brand-dark);
  font-weight: 400;
  letter-spacing: 0.025em;
  line-height: 1.2em;
  color: var(--brand-dark);
  background-color: var(--brand-dark-contrast);
}
.rte h3.headingList,
#revealModalDialog .copyWrap h3.headingList {
  font-size: 1.2em;
}
.rte h4.subheadingList,
#revealModalDialog .copyWrap h4.subheadingList {
  font-size: 1em;
}
.rte h4.subheading,
#revealModalDialog .copyWrap h4.subheading {
  width: -webkit-fit-content;
  width: fit-content;
  margin: 0.75em 0 0.4em;
  font-size: 1.35em;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-radius: 8px;
}
.rte .largeText,
#revealModalDialog .copyWrap .largeText {
  position: relative;
  margin-bottom: 45px;
  display: block;
  width: -webkit-fit-content;
  width: fit-content;
  font-size: 1.5em;
  line-height: 1.4em;
  font-family: var(--primary-font);
  font-weight: 400;
  padding: 20px;
}
.rte .largeText:before,
#revealModalDialog .copyWrap .largeText:before {
  content: "";
  position: absolute;
  width: 0;
  height: 8px;
  bottom: -26px;
  left: 0;
  transition: width 500ms;
  z-index: 3;
  background: var(--brand-dark);
}
.current .rte .largeText:before,
.current #revealModalDialog .copyWrap .largeText:before {
  width: 25%;
}
.rte .largeText:after,
#revealModalDialog .copyWrap .largeText:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: var(--hover);
  color: var(--hover-contrast);
  opacity: 0.25;
  z-index: 1;
}
.rte .largeText a,
#revealModalDialog .copyWrap .largeText a {
  background: none;
  color: var(--light-grey-contrast);
  border-bottom-width: 2px;
}
.rte .highlight,
#revealModalDialog .copyWrap .highlight {
  background: color-mix(in srgb, var(--brand-bright) calc(0.3 * 100%), transparent);
}
.rte ul,
#revealModalDialog .copyWrap ul {
  padding: 0;
}
.rte ul > li,
#revealModalDialog .copyWrap ul > li {
  margin-left: 40px;
  margin-bottom: 5px;
  color: var(--brand-dark);
}
.rte ul > li::marker,
#revealModalDialog .copyWrap ul > li::marker {
  font-size: 1.25em;
  color: var(--brand-dark);
}
.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: 40px;
  margin-bottom: 5px;
  color: var(--brand-dark);
}
.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: 1em 0 0.4em;
  padding: 10px 15px;
  border-radius: var(--radius);
  background-color: var(--light-grey);
  color: var(--light-grey-contrast);
  filter: drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2));
  border: 2px solid var(--light);
  position: relative;
}
.calloutSubtle a {
  background-color: var(--light-grey);
  color: var(--light-grey-contrast);
  border-bottom: 2px solid var(--light-grey-contrast);
}
@media (hover: hover) and (pointer: fine) {
  .calloutSubtle a:hover {
    color: var(--basic);
    background-color: var(--basic-contrast);
    border-bottom-color: var(--basic);
  }
}
[data-browser=ie] .calloutSubtle a:hover {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.ie .calloutSubtle a:hover {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.calloutSubtle a.focus-visible {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.calloutSubtle a:focus-visible {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}

.calloutBold {
  clear: both;
  margin: 0.75em 0 0.4em;
  padding: 10px 15px;
  border-radius: var(--radius);
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  filter: drop-shadow(0px 1px 4px rgba(0, 0, 0, 0.2));
}
.calloutBold a {
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  border-bottom: 2px solid var(--brand-dark-contrast);
}
@media (hover: hover) and (pointer: fine) {
  .calloutBold a:hover {
    color: var(--basic);
    background-color: var(--basic-contrast);
    border-bottom-color: var(--basic);
  }
}
[data-browser=ie] .calloutBold a:hover {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.ie .calloutBold a:hover {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.calloutBold a.focus-visible {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}
.calloutBold a:focus-visible {
  color: var(--basic);
  background-color: var(--basic-contrast);
  border-bottom-color: var(--basic);
}

#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: 650px) {
  #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: 800px) {
  .membershipPage .errorPage .icon {
    font-size: 4em;
    width: 100px;
    height: 100px;
    border-width: 2px;
  }
}
@layer base {
  details {
    transition: all 500ms;
  }
  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;
  }
}
.primaryAccordion {
  position: relative;
  margin: 20px 0;
}
.primaryAccordion[open] > .accordionTitle .icon-x {
  display: inline-block;
}
.primaryAccordion[data-interaction-mandatory=true]:not(.interactedWith) .icon-mandatory {
  position: absolute;
  right: -3px;
  top: -3px;
  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;
}
.primaryAccordion .accordionTitle {
  position: relative;
  background-color: var(--brand-dark);
  color: var(--brand-dark-contrast);
  padding: 20px;
  transition: all 200ms;
  border-left: 10px solid var(--hover);
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.125em;
  font-family: var(--primary-font);
}
@media (hover: hover) and (pointer: fine) {
  .primaryAccordion .accordionTitle:hover {
    background-color: var(--brand-bright);
    color: var(--brand-bright-contrast);
  }
  .primaryAccordion .accordionTitle:hover .icon-x {
    right: 25px;
  }
}
[data-browser=ie] .primaryAccordion .accordionTitle:hover {
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}
[data-browser=ie] .primaryAccordion .accordionTitle:hover .icon-x {
  right: 25px;
}
.ie .primaryAccordion .accordionTitle:hover {
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}
.ie .primaryAccordion .accordionTitle:hover .icon-x {
  right: 25px;
}
.primaryAccordion .accordionTitle.focus-visible {
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}
.primaryAccordion .accordionTitle.focus-visible .icon-x {
  right: 25px;
}
.primaryAccordion .accordionTitle:focus-visible {
  background-color: var(--brand-bright);
  color: var(--brand-bright-contrast);
}
.primaryAccordion .accordionTitle:focus-visible .icon-x {
  right: 25px;
}
.primaryAccordion .accordionTitle .icon-x {
  position: absolute;
  right: 20px;
  transition: right 300ms;
  display: none;
}
.primaryAccordion .accordionWrapper {
  padding: 20px;
  background-color: var(--light);
  color: var(--light-contrast);
  border-left: 10px solid var(--hover);
}
.primaryAccordion .accordionWrapper img {
  max-width: 100%;
  height: auto !important;
}
.primaryAccordion + .rte {
  margin-top: 25px;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NvbG8tbGF5ZXJzLnNjc3MiLCJmaWxlOi8vL0Q6L1RGUyUyMFByb2plY3RzL1ZpbGxhbm92YSUyMFVuaXZlcnNpdHklMjAtJTIwR3JhZHVhdGUlMjAtJTIwUGxhdGludW0lMjAtJTIwNzQ0Ni9WaWxsYW5vdmFHcmFkLTc0NDYvU2Fzcy9jdXN0b20vYWRnTWVtYmVyc2hpcC5zY3NzIiwiZmlsZTovLy9kOi90ZnMlMjBwcm9qZWN0cy92aWxsYW5vdmElMjB1bml2ZXJzaXR5JTIwLSUyMGdyYWR1YXRlJTIwLSUyMHBsYXRpbnVtJTIwLSUyMDc0NDYvdmlsbGFub3ZhZ3JhZC03NDQ2L25vZGVfbW9kdWxlcy9pbnRsLXRlbC1pbnB1dC9idWlsZC9jc3MvaW50bHRlbGlucHV0LmNzcyIsIi4uLy4uLy4uL1Nhc3MvY3VzdG9tL2FkZ01lbWJlcnNoaXAuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL2N1c3RvbS9fZm9udHMuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NoYXJlZC1taXhpbnMuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NoYXJlZC1mb3Jtcy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19mb3Jtcy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvX2dsb2JhbC9fc2hhcmVkLWdsb2JhbC5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19nbG9iYWwuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NoYXJlZC1kaWFsb2dzLnNjc3MiLCJmaWxlOi8vL0Q6L1RGUyUyMFByb2plY3RzL1ZpbGxhbm92YSUyMFVuaXZlcnNpdHklMjAtJTIwR3JhZHVhdGUlMjAtJTIwUGxhdGludW0lMjAtJTIwNzQ0Ni9WaWxsYW5vdmFHcmFkLTc0NDYvU2Fzcy9fZ2xvYmFsL19zaGFyZWQtdmFyaWFibGVzLnNjc3MiLCJmaWxlOi8vL0Q6L1RGUyUyMFByb2plY3RzL1ZpbGxhbm92YSUyMFVuaXZlcnNpdHklMjAtJTIwR3JhZHVhdGUlMjAtJTIwUGxhdGludW0lMjAtJTIwNzQ0Ni9WaWxsYW5vdmFHcmFkLTc0NDYvU2Fzcy9jdXN0b20vX2RpYWxvZy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19taXhpbnMuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NoYXJlZC1iYWNrZ3JvdW5kLnNjc3MiLCJmaWxlOi8vL0Q6L1RGUyUyMFByb2plY3RzL1ZpbGxhbm92YSUyMFVuaXZlcnNpdHklMjAtJTIwR3JhZHVhdGUlMjAtJTIwUGxhdGludW0lMjAtJTIwNzQ0Ni9WaWxsYW5vdmFHcmFkLTc0NDYvU2Fzcy9jdXN0b20vX2JhY2tncm91bmQuc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL2N1c3RvbS9fbG9naW4uc2NzcyIsImZpbGU6Ly8vRDovVEZTJTIwUHJvamVjdHMvVmlsbGFub3ZhJTIwVW5pdmVyc2l0eSUyMC0lMjBHcmFkdWF0ZSUyMC0lMjBQbGF0aW51bSUyMC0lMjA3NDQ2L1ZpbGxhbm92YUdyYWQtNzQ0Ni9TYXNzL19nbG9iYWwvX3NoYXJlZC1yaWNoVGV4dFN0eWxlcy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19yaWNoVGV4dFN0eWxlcy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19tYWludGVuYW5jZS5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19lcnJvclBhZ2VzLnNjc3MiLCJmaWxlOi8vL0Q6L1RGUyUyMFByb2plY3RzL1ZpbGxhbm92YSUyMFVuaXZlcnNpdHklMjAtJTIwR3JhZHVhdGUlMjAtJTIwUGxhdGludW0lMjAtJTIwNzQ0Ni9WaWxsYW5vdmFHcmFkLTc0NDYvU2Fzcy9fZ2xvYmFsL19zaGFyZWQtYWNjb3JkaW9ucy5zY3NzIiwiZmlsZTovLy9EOi9URlMlMjBQcm9qZWN0cy9WaWxsYW5vdmElMjBVbml2ZXJzaXR5JTIwLSUyMEdyYWR1YXRlJTIwLSUyMFBsYXRpbnVtJTIwLSUyMDc0NDYvVmlsbGFub3ZhR3JhZC03NDQ2L1Nhc3MvY3VzdG9tL19hY2NvcmRpb24uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFBO0FBQ0EsV0FBQTtBQ0NBLHNCQUFBO0FDRkE7RUFDRSxzQ0FBQTtFQUNBLHdCQUFBO0VBQ0EsMEJBQUE7RUFDQSx3QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNEJBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBQ0EsdUJBQUE7RUFDQSx1QkFBQTtFQUNBLHNCQUFBO0VBQ0EsdURBQUE7RUFDQSx3QkFBQTtFQUNBLHVCQUFBO0VBQ0EsNkNBQUE7RUFDQSxnREFBQTtFQUNBLDZDQUFBO0VBQ0EsZ0RBQUE7RUFDQSwrQkFBQTtFQUNBLDhCQUFBO0VBQ0EsK0JBQUE7QUNJRjs7QUREQTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7QUNJRjs7QURGQTtFQUNFLHNCQUFBO0FDS0Y7O0FESEE7RUFDRSxVQUFBO0VBQ0EsV0FBQTtFQUNBLDhCQUFBO0VBQ0EsZ0JB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O0FEM0NBO0VBQ0Usa0JBQUE7QUM4Q0Y7O0FEM0NBO0VBQ0Usb0NBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsZUFBQTtFQUNBLHVDQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsMkJBQUE7QUM4Q0Y7O0FENUNBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBQytDRjs7QUQ3Q0E7RUFDRSxrQkFBQTtFQUNBLGtCQUFBO0FDZ0RGOztBRDdDQTtFQUNFLHdCQUFBO0VBQ0EsOEJBQUE7RUFDQSw0QkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0NBQUE7RUFDQSwwQ0FBQTtFQUNBLDRCQUFBO0VBQ0EsNkNBQUE7RUFDQSwyRUFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSxzQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx3QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSx5QkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQkFBQTtBQ2dERjs7QUQ3Q0E7RUFDRSwwQ0FBQTtFQUNBLHdCQUFBO0VBQ0EsMEJBQUE7RUFDQSxnQkFBQTtFQUNBLFlBQUE7QUNnREY7O0FEN0NBO0VBQ0U7SUFDRSwwQ0FBQTtFQ2dERjtFRDlD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O0FuQnVpS1I7QW1CamlLSTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFNBQUE7RWpCNmpCRixxQ0FBQTtFQUNBLG1DQUFBO0VpQjVqQkUsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsMEZBQUE7RUFDQSxpQkFBQTtBbkJvaUtOO0FtQmhpS0U7RUFDRSxrQkFBQTtFakJtakJBLG1DQUFBO0VBQ0EsaUNBQUE7RWlCbGpCQSxhQUFBO0VBQ0EscUJBQUE7RUFFQSxvQ0FBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdDQUFBO0FuQmtpS0o7QUU3aUpFO0VBQ0U7SUFvREEscUNBQUE7SUFDQSxtQ0FBQTtFRjQvSUY7RW1CbmlLSTtJQUNFLFdBQUE7RW5CcWlLTjtBQUNGO0FFaGpKRTtFQStDRSxxQ0FBQTtFQUNBLG1DQUFBO0FGb2dKSjtBbUIzaUtNO0VBQ0UsV0FBQTtBbkI2aUtSO0FFbmpKRTtFQTJDRSxxQ0FBQTtFQUNBLG1DQUFBO0FGMmdKSjtBbUJsaktNO0VBQ0UsV0FBQTtBbkJvaktSO0FFL2lKRTtFQWdDRSxxQ0FBQTtFQUNBLG1DQUFBO0FGa2hKSjtBbUJ6aktNO0VBQ0UsV0FBQTtBbkIyaktSO0FFbGpKRTtFQTRCRSxxQ0FBQTtFQUNBLG1DQUFBO0FGeWhKSjtBbUJoa0tNO0VBQ0UsV0FBQTtBbkJra0tSO0FtQjlqS0k7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSx1QkFBQTtFQUNBLGFBQUE7QW5CZ2tLTjtBbUI1aktFO0VBQ0UsYUFBQTtFakJ3aEJBLDhCQUFBO0VBQ0EsNEJBQUE7RWlCdmhCQSxvQ0FBQTtBbkIraktKO0FtQjlqS0k7RUFDRSxlQUFBO0VBQ0EsdUJBQUE7QW5CZ2tLTjtBbUI1aktFO0VBQ0UsZ0JBQUE7QW5COGpLSiIsImZpbGUiOiJhZGdNZW1iZXJzaGlwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBsYXllciByZXNldDsgLy8gQ3JlYXRlIDFzdCBsYXllciBuYW1lZCBcInJlc2V0XCJcclxuQGxheWVyIGJhc2U7IC8vIENyZWF0ZSAybmQgbGF5ZXIgbmFtZWQgXCJiYXNlXCJcclxuXHJcbi8vIFNvbWUgYWRkaXRpb25hbCBub3RlcyBhbmQgcmVtaW5kZXJzOlxyXG4vLyAtIHNvbG8tbGF5ZXJzIGFyZSBhcHBsaWVkIGluIHRoZSBvcmRlciB0aGV5J3JlIGRlY2xhcmVkLiBTbyBpbiB0aGUgY2FzZSBhYm92ZSwgc3R5bGVzIGluIFwiYmFzZVwiIG92ZXJ3cml0ZSBzdHlsZXMgaW4gXCJyZXNldFwiLlxyXG4vLyAtIFJlZ3VsYXIgc3R5bGVzIChha2Egb25lcyBub3QgaW5zaWRlIGEgbGF5ZXIpIGFsd2F5cyBvdmVyd3JpdGUgc3R5bGVzIGluc2lkZSBvZiBzb2xvLWxheWVycywgcmVnYXJkbGVzcyBvZiBzcGVjaWZpY2l0eS5cclxuLy8gLSBETyBOT1QgdXNlICFpbXBvcnRhbnQgaW5zaWRlIG9mIGEgbGF5ZXIsIGl0IFdJTEwgY2F1c2UgaXNzdWVzIGFuZCBzYWRuZXNzLlxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zb2xvLWxheWVyc1wiOyAvLyBUaGlzIHNob3VsZCBBTFdBWVMgYmUgZmlyc3QgaW4gdGhlIGxpc3Qgb2YgaW1wb3J0cyBvciB0aGluZ3Mgd2lsbCBnZXQgd2VpcmQuXHJcblxyXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSAqL1xyXG5AdXNlIFwicGtnOmludGwtdGVsLWlucHV0L3N0eWxlc1wiO1xyXG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXHJcbkB1c2UgXCJmb250c1wiO1xyXG5AdXNlIFwiZm9ybXNcIjtcclxuQHVzZSBcImdsb2JhbFwiO1xyXG5AdXNlIFwiZGlhbG9nXCI7XHJcbkB1c2UgXCJiYWNrZ3JvdW5kXCI7XHJcbkB1c2UgXCJsb2dpblwiO1xyXG5AdXNlIFwicmljaFRleHRTdHlsZXNcIjtcclxuQHVzZSBcIm1haW50ZW5hbmNlXCI7XHJcbkB1c2UgXCJlcnJvclBhZ2VzXCI7XHJcbkB1c2UgXCJhY2NvcmRpb25cIjtcclxuIiwiOnJvb3Qge1xuICAtLWl0aS1ob3Zlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjA1KTtcbiAgLS1pdGktYm9yZGVyLWNvbG9yOiAjY2NjO1xuICAtLWl0aS1kaWFsY29kZS1jb2xvcjogIzk5OTtcbiAgLS1pdGktZHJvcGRvd24tYmc6IHdoaXRlO1xuICAtLWl0aS1zZWFyY2gtaWNvbi1jb2xvcjogIzk5OTtcbiAgLS1pdGktc3BhY2VyLWhvcml6b250YWw6IDhweDtcbiAgLS1pdGktZmxhZy1oZWlnaHQ6IDEycHg7XG4gIC0taXRpLWZsYWctd2lkdGg6IDE2cHg7XG4gIC0taXRpLWJvcmRlci13aWR0aDogMXB4O1xuICAtLWl0aS1hcnJvdy1oZWlnaHQ6IDRweDtcbiAgLS1pdGktYXJyb3ctd2lkdGg6IDZweDtcbiAgLS1pdGktdHJpYW5nbGUtYm9yZGVyOiBjYWxjKHZhcigtLWl0aS1hcnJvdy13aWR0aCkgLyAyKTtcbiAgLS1pdGktYXJyb3ctcGFkZGluZzogNnB4O1xuICAtLWl0aS1hcnJvdy1jb2xvcjogIzU1NTtcbiAgLS1pdGktcGF0aC1mbGFncy0xeDogdXJsKFwiLi4vaW1nL2ZsYWdzLndlYnBcIik7XG4gIC0taXRpLXBhdGgtZmxhZ3MtMng6IHVybChcIi4uL2ltZy9mbGFnc0AyeC53ZWJwXCIpO1xuICAtLWl0aS1wYXRoLWdsb2JlLTF4OiB1cmwoXCIuLi9pbWcvZ2xvYmUud2VicFwiKTtcbiAgLS1pdGktcGF0aC1nbG9iZS0yeDogdXJsKFwiLi4vaW1nL2dsb2JlQDJ4LndlYnBcIik7XG4gIC0taXRpLWZsYWctc3ByaXRlLXdpZHRoOiAzOTA0cHg7XG4gIC0taXRpLWZsYWctc3ByaXRlLWhlaWdodDogMTJweDtcbiAgLS1pdGktbW9iaWxlLXBvcHVwLW1hcmdpbjogMzBweDtcbn1cblxuLml0aSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLml0aSAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5pdGlfX2ExMXktdGV4dCB7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5pdGkgaW5wdXQuaXRpX190ZWwtaW5wdXQsXG4uaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGV4dF0sXG4uaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGVsXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG59XG5bZGlyPXJ0bF0gLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dCxcbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGV4dF0sXG5bZGlyPXJ0bF0gLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dFt0eXBlPXRlbF0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5pdGlfX2NvdW50cnktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcGFkZGluZzogdmFyKC0taXRpLWJvcmRlci13aWR0aCk7XG59XG4uaXRpX19zZWxlY3RlZC1jb3VudHJ5IHtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uaXRpX19zZWxlY3RlZC1jb3VudHJ5LXByaW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAgdmFyKC0taXRpLWFycm93LXBhZGRpbmcpIDAgdmFyKC0taXRpLXNwYWNlci1ob3Jpem9udGFsKTtcbn1cbi5pdGlfX2Fycm93IHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWl0aS1hcnJvdy1wYWRkaW5nKTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IHZhcigtLWl0aS10cmlhbmdsZS1ib3JkZXIpIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IHZhcigtLWl0aS10cmlhbmdsZS1ib3JkZXIpIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiB2YXIoLS1pdGktYXJyb3ctaGVpZ2h0KSBzb2xpZCB2YXIoLS1pdGktYXJyb3ctY29sb3IpO1xufVxuW2Rpcj1ydGxdIC5pdGlfX2Fycm93IHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1pdGktYXJyb3ctcGFkZGluZyk7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLml0aV9fYXJyb3ctLXVwIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0taXRpLWFycm93LWhlaWdodCkgc29saWQgdmFyKC0taXRpLWFycm93LWNvbG9yKTtcbn1cbi5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0aS1kcm9wZG93bi1iZyk7XG59XG4uaXRpLS1pbmxpbmUtZHJvcGRvd24gLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMjtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1pdGktYm9yZGVyLXdpZHRoKSAqIC0xKTtcbiAgYm9yZGVyOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1pdGktYm9yZGVyLWNvbG9yKTtcbiAgYm94LXNoYWRvdzogMXB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuLml0aV9fc2VhcmNoLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG59XG5bZGlyPXJ0bF0gLml0aV9fc2VhcmNoLWlucHV0IHtcbiAgcGFkZGluZy1sZWZ0OiBpbmhlcml0O1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA4cHggY2VudGVyO1xufVxuLml0aV9fc2VhcmNoLWlucHV0ICsgLml0aV9fY291bnRyeS1saXN0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWl0aS1ib3JkZXItY29sb3IpO1xufVxuLml0aV9fc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cbi5pdGlfX3NlYXJjaC1pbnB1dC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLml0aV9fc2VhcmNoLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5bZGlyPXJ0bF0gLml0aV9fc2VhcmNoLWljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogOHB4O1xufVxuLml0aV9fc2VhcmNoLWljb24tc3ZnIHtcbiAgc3Ryb2tlOiB2YXIoLS1pdGktc2VhcmNoLWljb24tY29sb3IpO1xuICBmaWxsOiBub25lO1xuICBzdHJva2Utd2lkdGg6IDM7XG59XG4uaXRpX19zZWFyY2gtY2xlYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA0cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiA0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG59XG4uaXRpX19zZWFyY2gtY2xlYXIgLml0aV9fc2VhcmNoLWNsZWFyLXgge1xuICBzdHJva2Utd2lkdGg6IDI7XG59XG4uaXRpX19zZWFyY2gtY2xlYXIgLml0aV9fc2VhcmNoLWNsZWFyLWJnIHtcbiAgZmlsbDogdmFyKC0taXRpLXNlYXJjaC1pY29uLWNvbG9yKTtcbn1cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtY2xlYXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNHB4O1xufVxuLml0aV9fc2VhcmNoLWNsZWFyOmhvdmVyLCAuaXRpX19zZWFyY2gtY2xlYXI6Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0aS1ob3Zlci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uaXRpX19uby1yZXN1bHRzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAzMHB4IDA7XG59XG4uaXRpX19jb3VudHJ5LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG4uaXRpLS1pbmxpbmUtZHJvcGRvd24gLml0aV9fY291bnRyeS1saXN0IHtcbiAgbWF4LWhlaWdodDogMTg1cHg7XG59XG4uaXRpLS1mbGV4aWJsZS1kcm9wZG93bi13aWR0aCAuaXRpX19jb3VudHJ5LWxpc3Qge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5pdGktLWZsZXhpYmxlLWRyb3Bkb3duLXdpZHRoIC5pdGlfX2NvdW50cnktbGlzdCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxufVxuLml0aV9fY291bnRyeSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDhweCB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xuICBvdXRsaW5lOiBub25lO1xufVxuLml0aV9fZGlhbC1jb2RlIHtcbiAgY29sb3I6IHZhcigtLWl0aS1kaWFsY29kZS1jb2xvcik7XG59XG4uaXRpX19jb3VudHJ5Lml0aV9faGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRpLWhvdmVyLWNvbG9yKTtcbn1cbi5pdGlfX2NvdW50cnktbGlzdCAuaXRpX19mbGFnLCAuaXRpX19jb3VudHJ5LW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLWl0aS1zcGFjZXItaG9yaXpvbnRhbCk7XG59XG5bZGlyPXJ0bF0gLml0aV9fY291bnRyeS1saXN0IC5pdGlfX2ZsYWcsIFtkaXI9cnRsXSAuaXRpX19jb3VudHJ5LW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xufVxuLml0aS0tYWxsb3ctZHJvcGRvd24gLml0aV9fY291bnRyeS1jb250YWluZXI6bm90KDpoYXMoKyBpbnB1dFtkaXNhYmxlZF0pKTpub3QoOmhhcygrIGlucHV0W3JlYWRvbmx5XSkpIGJ1dHRvbi5pdGlfX3NlbGVjdGVkLWNvdW50cnkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaXRpLS1hbGxvdy1kcm9wZG93biAuaXRpX19jb3VudHJ5LWNvbnRhaW5lcjpub3QoOmhhcygrIGlucHV0W2Rpc2FibGVkXSkpOm5vdCg6aGFzKCsgaW5wdXRbcmVhZG9ubHldKSkgLml0aV9fc2VsZWN0ZWQtY291bnRyeS1wcmltYXJ5OmhvdmVyLFxuLml0aS0tYWxsb3ctZHJvcGRvd24gLml0aV9fY291bnRyeS1jb250YWluZXI6bm90KDpoYXMoKyBpbnB1dFtkaXNhYmxlZF0pKTpub3QoOmhhcygrIGlucHV0W3JlYWRvbmx5XSkpIC5pdGlfX3NlbGVjdGVkLWNvdW50cnk6aGFzKCsgLml0aV9fZHJvcGRvd24tY29udGVudDpob3ZlcikgLml0aV9fc2VsZWN0ZWQtY291bnRyeS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRpLWhvdmVyLWNvbG9yKTtcbn1cbi5pdGkgLml0aV9fc2VsZWN0ZWQtZGlhbC1jb2RlIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbltkaXI9cnRsXSAuaXRpIC5pdGlfX3NlbGVjdGVkLWRpYWwtY29kZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cbi5pdGktLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAtMTAwMHB4O1xuICBsZWZ0OiAtMTAwMHB4O1xuICB6LWluZGV4OiAxMDYwO1xuICBwYWRkaW5nOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKTtcbn1cbi5pdGktLWNvbnRhaW5lcjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pdGlfX2hpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLml0aV9fdi1oaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaXRpLS1mdWxsc2NyZWVuLXBvcHVwLml0aS0tY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcGFkZGluZzogdmFyKC0taXRpLW1vYmlsZS1wb3B1cC1tYXJnaW4pO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4uaXRpLS1mdWxsc2NyZWVuLXBvcHVwIC5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXRpLS1mdWxsc2NyZWVuLXBvcHVwIC5pdGlfX2NvdW50cnkge1xuICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbn1cblxuLml0aV9fZmxhZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAxMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1pdGktZmxhZy1oZWlnaHQpO1xuICB3aWR0aDogdmFyKC0taXRpLWZsYWctd2lkdGgpO1xuICBib3JkZXItcmFkaXVzOiAxcHg7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMXB4IDBweCAjODg4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pdGktcGF0aC1mbGFncy0xeCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHZhcigtLWl0aS1mbGFnLW9mZnNldCkgMDtcbiAgYmFja2dyb3VuZC1zaXplOiB2YXIoLS1pdGktZmxhZy1zcHJpdGUtd2lkdGgpIHZhcigtLWl0aS1mbGFnLXNwcml0ZS1oZWlnaHQpO1xufVxuXG4uaXRpX19hYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAwcHg7XG59XG5cbi5pdGlfX2FkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNnB4O1xufVxuXG4uaXRpX19hZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzJweDtcbn1cblxuLml0aV9fYWYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ4cHg7XG59XG5cbi5pdGlfX2FnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02NHB4O1xufVxuXG4uaXRpX19haSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODBweDtcbn1cblxuLml0aV9fYWwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk2cHg7XG59XG5cbi5pdGlfX2FtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTJweDtcbn1cblxuLml0aV9fYW8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTEyOHB4O1xufVxuXG4uaXRpX19hciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQ0cHg7XG59XG5cbi5pdGlfX2FzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjBweDtcbn1cblxuLml0aV9fYXQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE3NnB4O1xufVxuXG4uaXRpX19hdSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTkycHg7XG59XG5cbi5pdGlfX2F3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDhweDtcbn1cblxuLml0aV9fYXgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIyNHB4O1xufVxuXG4uaXRpX19heiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQwcHg7XG59XG5cbi5pdGlfX2JhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTZweDtcbn1cblxuLml0aV9fYmIge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI3MnB4O1xufVxuXG4uaXRpX19iZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjg4cHg7XG59XG5cbi5pdGlfX2JlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDRweDtcbn1cblxuLml0aV9fYmYge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMyMHB4O1xufVxuXG4uaXRpX19iZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzM2cHg7XG59XG5cbi5pdGlfX2JoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTJweDtcbn1cblxuLml0aV9fYmkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM2OHB4O1xufVxuXG4uaXRpX19iaiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzg0cHg7XG59XG5cbi5pdGlfX2JsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00MDBweDtcbn1cblxuLml0aV9fYm0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQxNnB4O1xufVxuXG4uaXRpX19ibiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDMycHg7XG59XG5cbi5pdGlfX2JvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00NDhweDtcbn1cblxuLml0aV9fYnEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ2NHB4O1xufVxuXG4uaXRpX19iciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDgwcHg7XG59XG5cbi5pdGlfX2JzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00OTZweDtcbn1cblxuLml0aV9fYnQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTUxMnB4O1xufVxuXG4uaXRpX19idyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTI4cHg7XG59XG5cbi5pdGlfX2J5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01NDRweDtcbn1cblxuLml0aV9fYnoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU2MHB4O1xufVxuXG4uaXRpX19jYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTc2cHg7XG59XG5cbi5pdGlfX2NjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01OTJweDtcbn1cblxuLml0aV9fY2Qge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTYwOHB4O1xufVxuXG4uaXRpX19jZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjI0cHg7XG59XG5cbi5pdGlfX2NnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02NDBweDtcbn1cblxuLml0aV9fY2gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY1NnB4O1xufVxuXG4uaXRpX19jaSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjcycHg7XG59XG5cbi5pdGlfX2NrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02ODhweDtcbn1cblxuLml0aV9fY2wge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTcwNHB4O1xufVxuXG4uaXRpX19jbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzIwcHg7XG59XG5cbi5pdGlfX2NuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03MzZweDtcbn1cblxuLml0aV9fY28ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTc1MnB4O1xufVxuXG4uaXRpX19jciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzY4cHg7XG59XG5cbi5pdGlfX2N1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03ODRweDtcbn1cblxuLml0aV9fY3Yge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTgwMHB4O1xufVxuXG4uaXRpX19jdyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODE2cHg7XG59XG5cbi5pdGlfX2N4IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MzJweDtcbn1cblxuLml0aV9fY3kge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTg0OHB4O1xufVxuXG4uaXRpX19jeiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODY0cHg7XG59XG5cbi5pdGlfX2RlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04ODBweDtcbn1cblxuLml0aV9fZGoge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTg5NnB4O1xufVxuXG4uaXRpX19kayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTEycHg7XG59XG5cbi5pdGlfX2RtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05MjhweDtcbn1cblxuLml0aV9fZG8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk0NHB4O1xufVxuXG4uaXRpX19keiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTYwcHg7XG59XG5cbi5pdGlfX2VjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05NzZweDtcbn1cblxuLml0aV9fZWUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk5MnB4O1xufVxuXG4uaXRpX19lZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTAwOHB4O1xufVxuXG4uaXRpX19laCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTAyNHB4O1xufVxuXG4uaXRpX19lciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTA0MHB4O1xufVxuXG4uaXRpX19lcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTA1NnB4O1xufVxuXG4uaXRpX19ldCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTA3MnB4O1xufVxuXG4uaXRpX19maSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTA4OHB4O1xufVxuXG4uaXRpX19maiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTEwNHB4O1xufVxuXG4uaXRpX19mayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTEyMHB4O1xufVxuXG4uaXRpX19mbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTEzNnB4O1xufVxuXG4uaXRpX19mbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTE1MnB4O1xufVxuXG4uaXRpX19mciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTE2OHB4O1xufVxuXG4uaXRpX19nYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTE4NHB4O1xufVxuXG4uaXRpX19nYiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTIwMHB4O1xufVxuXG4uaXRpX19nZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTIxNnB4O1xufVxuXG4uaXRpX19nZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTIzMnB4O1xufVxuXG4uaXRpX19nZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI0OHB4O1xufVxuXG4uaXRpX19nZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI2NHB4O1xufVxuXG4uaXRpX19naCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI4MHB4O1xufVxuXG4uaXRpX19naSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI5NnB4O1xufVxuXG4uaXRpX19nbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTMxMnB4O1xufVxuXG4uaXRpX19nbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTMyOHB4O1xufVxuXG4uaXRpX19nbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTM0NHB4O1xufVxuXG4uaXRpX19ncCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTM2MHB4O1xufVxuXG4uaXRpX19ncSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTM3NnB4O1xufVxuXG4uaXRpX19nciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTM5MnB4O1xufVxuXG4uaXRpX19ndCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQwOHB4O1xufVxuXG4uaXRpX19ndSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQyNHB4O1xufVxuXG4uaXRpX19ndyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQ0MHB4O1xufVxuXG4uaXRpX19neSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQ1NnB4O1xufVxuXG4uaXRpX19oayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQ3MnB4O1xufVxuXG4uaXRpX19obiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTQ4OHB4O1xufVxuXG4uaXRpX19ociB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTUwNHB4O1xufVxuXG4uaXRpX19odCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTUyMHB4O1xufVxuXG4uaXRpX19odSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTUzNnB4O1xufVxuXG4uaXRpX19pZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTU1MnB4O1xufVxuXG4uaXRpX19pZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTU2OHB4O1xufVxuXG4uaXRpX19pbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTU4NHB4O1xufVxuXG4uaXRpX19pbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTYwMHB4O1xufVxuXG4uaXRpX19pbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTYxNnB4O1xufVxuXG4uaXRpX19pbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTYzMnB4O1xufVxuXG4uaXRpX19pcSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTY0OHB4O1xufVxuXG4uaXRpX19pciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTY2NHB4O1xufVxuXG4uaXRpX19pcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTY4MHB4O1xufVxuXG4uaXRpX19pdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTY5NnB4O1xufVxuXG4uaXRpX19qZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTcxMnB4O1xufVxuXG4uaXRpX19qbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTcyOHB4O1xufVxuXG4uaXRpX19qbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc0NHB4O1xufVxuXG4uaXRpX19qcCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc2MHB4O1xufVxuXG4uaXRpX19rZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc3NnB4O1xufVxuXG4uaXRpX19rZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc5MnB4O1xufVxuXG4uaXRpX19raCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTgwOHB4O1xufVxuXG4uaXRpX19raSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTgyNHB4O1xufVxuXG4uaXRpX19rbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTg0MHB4O1xufVxuXG4uaXRpX19rbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTg1NnB4O1xufVxuXG4uaXRpX19rcCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTg3MnB4O1xufVxuXG4uaXRpX19rciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTg4OHB4O1xufVxuXG4uaXRpX19rdyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTkwNHB4O1xufVxuXG4uaXRpX19reSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTkyMHB4O1xufVxuXG4uaXRpX19reiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTkzNnB4O1xufVxuXG4uaXRpX19sYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTk1MnB4O1xufVxuXG4uaXRpX19sYiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTk2OHB4O1xufVxuXG4uaXRpX19sYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTk4NHB4O1xufVxuXG4uaXRpX19saSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjAwMHB4O1xufVxuXG4uaXRpX19sayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjAxNnB4O1xufVxuXG4uaXRpX19sciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjAzMnB4O1xufVxuXG4uaXRpX19scyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjA0OHB4O1xufVxuXG4uaXRpX19sdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjA2NHB4O1xufVxuXG4uaXRpX19sdSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjA4MHB4O1xufVxuXG4uaXRpX19sdiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjA5NnB4O1xufVxuXG4uaXRpX19seSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjExMnB4O1xufVxuXG4uaXRpX19tYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjEyOHB4O1xufVxuXG4uaXRpX19tYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjE0NHB4O1xufVxuXG4uaXRpX19tZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjE2MHB4O1xufVxuXG4uaXRpX19tZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjE3NnB4O1xufVxuXG4uaXRpX19tZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjE5MnB4O1xufVxuXG4uaXRpX19tZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjIwOHB4O1xufVxuXG4uaXRpX19taCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjIyNHB4O1xufVxuXG4uaXRpX19tayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI0MHB4O1xufVxuXG4uaXRpX19tbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI1NnB4O1xufVxuXG4uaXRpX19tbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI3MnB4O1xufVxuXG4uaXRpX19tbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI4OHB4O1xufVxuXG4uaXRpX19tbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjMwNHB4O1xufVxuXG4uaXRpX19tcCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjMyMHB4O1xufVxuXG4uaXRpX19tcSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjMzNnB4O1xufVxuXG4uaXRpX19tciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjM1MnB4O1xufVxuXG4uaXRpX19tcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjM2OHB4O1xufVxuXG4uaXRpX19tdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjM4NHB4O1xufVxuXG4uaXRpX19tdSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQwMHB4O1xufVxuXG4uaXRpX19tdiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQxNnB4O1xufVxuXG4uaXRpX19tdyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQzMnB4O1xufVxuXG4uaXRpX19teCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQ0OHB4O1xufVxuXG4uaXRpX19teSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQ2NHB4O1xufVxuXG4uaXRpX19teiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQ4MHB4O1xufVxuXG4uaXRpX19uYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjQ5NnB4O1xufVxuXG4uaXRpX19uYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjUxMnB4O1xufVxuXG4uaXRpX19uZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjUyOHB4O1xufVxuXG4uaXRpX19uZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjU0NHB4O1xufVxuXG4uaXRpX19uZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjU2MHB4O1xufVxuXG4uaXRpX19uaSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjU3NnB4O1xufVxuXG4uaXRpX19ubCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjU5MnB4O1xufVxuXG4uaXRpX19ubyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjYwOHB4O1xufVxuXG4uaXRpX19ucCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjYyNHB4O1xufVxuXG4uaXRpX19uciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjY0MHB4O1xufVxuXG4uaXRpX19udSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjY1NnB4O1xufVxuXG4uaXRpX19ueiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjY3MnB4O1xufVxuXG4uaXRpX19vbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjY4OHB4O1xufVxuXG4uaXRpX19wYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjcwNHB4O1xufVxuXG4uaXRpX19wZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjcyMHB4O1xufVxuXG4uaXRpX19wZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjczNnB4O1xufVxuXG4uaXRpX19wZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjc1MnB4O1xufVxuXG4uaXRpX19waCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjc2OHB4O1xufVxuXG4uaXRpX19wayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjc4NHB4O1xufVxuXG4uaXRpX19wbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjgwMHB4O1xufVxuXG4uaXRpX19wbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjgxNnB4O1xufVxuXG4uaXRpX19wciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjgzMnB4O1xufVxuXG4uaXRpX19wcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjg0OHB4O1xufVxuXG4uaXRpX19wdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjg2NHB4O1xufVxuXG4uaXRpX19wdyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjg4MHB4O1xufVxuXG4uaXRpX19weSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjg5NnB4O1xufVxuXG4uaXRpX19xYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjkxMnB4O1xufVxuXG4uaXRpX19yZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjkyOHB4O1xufVxuXG4uaXRpX19ybyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjk0NHB4O1xufVxuXG4uaXRpX19ycyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjk2MHB4O1xufVxuXG4uaXRpX19ydSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjk3NnB4O1xufVxuXG4uaXRpX19ydyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjk5MnB4O1xufVxuXG4uaXRpX19zYSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzAwOHB4O1xufVxuXG4uaXRpX19zYiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzAyNHB4O1xufVxuXG4uaXRpX19zYyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzA0MHB4O1xufVxuXG4uaXRpX19zZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzA1NnB4O1xufVxuXG4uaXRpX19zZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzA3MnB4O1xufVxuXG4uaXRpX19zZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzA4OHB4O1xufVxuXG4uaXRpX19zaCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzEwNHB4O1xufVxuXG4uaXRpX19zaSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzEyMHB4O1xufVxuXG4uaXRpX19zaiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzEzNnB4O1xufVxuXG4uaXRpX19zayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzE1MnB4O1xufVxuXG4uaXRpX19zbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzE2OHB4O1xufVxuXG4uaXRpX19zbSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzE4NHB4O1xufVxuXG4uaXRpX19zbiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzIwMHB4O1xufVxuXG4uaXRpX19zbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzIxNnB4O1xufVxuXG4uaXRpX19zciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzIzMnB4O1xufVxuXG4uaXRpX19zcyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzI0OHB4O1xufVxuXG4uaXRpX19zdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzI2NHB4O1xufVxuXG4uaXRpX19zdiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzI4MHB4O1xufVxuXG4uaXRpX19zeCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzI5NnB4O1xufVxuXG4uaXRpX19zeSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzMxMnB4O1xufVxuXG4uaXRpX19zeiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzMyOHB4O1xufVxuXG4uaXRpX190YyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzM0NHB4O1xufVxuXG4uaXRpX190ZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzM2MHB4O1xufVxuXG4uaXRpX190ZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzM3NnB4O1xufVxuXG4uaXRpX190aCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzM5MnB4O1xufVxuXG4uaXRpX190aiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQwOHB4O1xufVxuXG4uaXRpX190ayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQyNHB4O1xufVxuXG4uaXRpX190bCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQ0MHB4O1xufVxuXG4uaXRpX190bSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQ1NnB4O1xufVxuXG4uaXRpX190biB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQ3MnB4O1xufVxuXG4uaXRpX190byB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzQ4OHB4O1xufVxuXG4uaXRpX190ciB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzUwNHB4O1xufVxuXG4uaXRpX190dCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzUyMHB4O1xufVxuXG4uaXRpX190diB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzUzNnB4O1xufVxuXG4uaXRpX190dyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzU1MnB4O1xufVxuXG4uaXRpX190eiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzU2OHB4O1xufVxuXG4uaXRpX191YSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzU4NHB4O1xufVxuXG4uaXRpX191ZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzYwMHB4O1xufVxuXG4uaXRpX191cyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzYxNnB4O1xufVxuXG4uaXRpX191eSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzYzMnB4O1xufVxuXG4uaXRpX191eiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY0OHB4O1xufVxuXG4uaXRpX192YSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY2NHB4O1xufVxuXG4uaXRpX192YyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY4MHB4O1xufVxuXG4uaXRpX192ZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY5NnB4O1xufVxuXG4uaXRpX192ZyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzcxMnB4O1xufVxuXG4uaXRpX192aSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzcyOHB4O1xufVxuXG4uaXRpX192biB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzc0NHB4O1xufVxuXG4uaXRpX192dSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzc2MHB4O1xufVxuXG4uaXRpX193ZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzc3NnB4O1xufVxuXG4uaXRpX193cyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzc5MnB4O1xufVxuXG4uaXRpX194ayB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzgwOHB4O1xufVxuXG4uaXRpX195ZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzgyNHB4O1xufVxuXG4uaXRpX195dCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzg0MHB4O1xufVxuXG4uaXRpX196YSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzg1NnB4O1xufVxuXG4uaXRpX196bSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzg3MnB4O1xufVxuXG4uaXRpX196dyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzg4OHB4O1xufVxuXG4uaXRpX19nbG9iZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWdsb2JlLTF4KTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgaGVpZ2h0OiAxOXB4O1xufVxuXG5AbWVkaWEgKG1pbi1yZXNvbHV0aW9uOiAyeCkge1xuICAuaXRpX19mbGFnIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pdGktcGF0aC1mbGFncy0yeCk7XG4gIH1cbiAgLml0aV9fZ2xvYmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWdsb2JlLTJ4KTtcbiAgfVxufSIsIkBsYXllciByZXNldDtcbkBsYXllciBiYXNlO1xuLyogc3R5bGVsaW50LWRpc2FibGUgKi9cbjpyb290IHtcbiAgLS1pdGktaG92ZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIC0taXRpLWJvcmRlci1jb2xvcjogI2NjYztcbiAgLS1pdGktZGlhbGNvZGUtY29sb3I6ICM5OTk7XG4gIC0taXRpLWRyb3Bkb3duLWJnOiB3aGl0ZTtcbiAgLS1pdGktc2VhcmNoLWljb24tY29sb3I6ICM5OTk7XG4gIC0taXRpLXNwYWNlci1ob3Jpem9udGFsOiA4cHg7XG4gIC0taXRpLWZsYWctaGVpZ2h0OiAxMnB4O1xuICAtLWl0aS1mbGFnLXdpZHRoOiAxNnB4O1xuICAtLWl0aS1ib3JkZXItd2lkdGg6IDFweDtcbiAgLS1pdGktYXJyb3ctaGVpZ2h0OiA0cHg7XG4gIC0taXRpLWFycm93LXdpZHRoOiA2cHg7XG4gIC0taXRpLXRyaWFuZ2xlLWJvcmRlcjogY2FsYyh2YXIoLS1pdGktYXJyb3ctd2lkdGgpIC8gMik7XG4gIC0taXRpLWFycm93LXBhZGRpbmc6IDZweDtcbiAgLS1pdGktYXJyb3ctY29sb3I6ICM1NTU7XG4gIC0taXRpLXBhdGgtZmxhZ3MtMXg6IHVybChcIi4uL2ltZy9mbGFncy53ZWJwXCIpO1xuICAtLWl0aS1wYXRoLWZsYWdzLTJ4OiB1cmwoXCIuLi9pbWcvZmxhZ3NAMngud2VicFwiKTtcbiAgLS1pdGktcGF0aC1nbG9iZS0xeDogdXJsKFwiLi4vaW1nL2dsb2JlLndlYnBcIik7XG4gIC0taXRpLXBhdGgtZ2xvYmUtMng6IHVybChcIi4uL2ltZy9nbG9iZUAyeC53ZWJwXCIpO1xuICAtLWl0aS1mbGFnLXNwcml0ZS13aWR0aDogMzkwNHB4O1xuICAtLWl0aS1mbGFnLXNwcml0ZS1oZWlnaHQ6IDEycHg7XG4gIC0taXRpLW1vYmlsZS1wb3B1cC1tYXJnaW46IDMwcHg7XG59XG5cbi5pdGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLml0aSAqIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLml0aV9fYTExeS10ZXh0IHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0LFxuLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dFt0eXBlPXRleHRdLFxuLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dFt0eXBlPXRlbF0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG5bZGlyPXJ0bF0gLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dCxcbltkaXI9cnRsXSAuaXRpIGlucHV0Lml0aV9fdGVsLWlucHV0W3R5cGU9dGV4dF0sXG5bZGlyPXJ0bF0gLml0aSBpbnB1dC5pdGlfX3RlbC1pbnB1dFt0eXBlPXRlbF0ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLml0aV9fY291bnRyeS1jb250YWluZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBwYWRkaW5nOiB2YXIoLS1pdGktYm9yZGVyLXdpZHRoKTtcbn1cblxuLml0aV9fc2VsZWN0ZWQtY291bnRyeSB7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uaXRpX19zZWxlY3RlZC1jb3VudHJ5LXByaW1hcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDAgdmFyKC0taXRpLWFycm93LXBhZGRpbmcpIDAgdmFyKC0taXRpLXNwYWNlci1ob3Jpem9udGFsKTtcbn1cblxuLml0aV9fYXJyb3cge1xuICBtYXJnaW4tbGVmdDogdmFyKC0taXRpLWFycm93LXBhZGRpbmcpO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItbGVmdDogdmFyKC0taXRpLXRyaWFuZ2xlLWJvcmRlcikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogdmFyKC0taXRpLXRyaWFuZ2xlLWJvcmRlcikgc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IHZhcigtLWl0aS1hcnJvdy1oZWlnaHQpIHNvbGlkIHZhcigtLWl0aS1hcnJvdy1jb2xvcik7XG59XG5cbltkaXI9cnRsXSAuaXRpX19hcnJvdyB7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0taXRpLWFycm93LXBhZGRpbmcpO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLml0aV9fYXJyb3ctLXVwIHtcbiAgYm9yZGVyLXRvcDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0taXRpLWFycm93LWhlaWdodCkgc29saWQgdmFyKC0taXRpLWFycm93LWNvbG9yKTtcbn1cblxuLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taXRpLWRyb3Bkb3duLWJnKTtcbn1cblxuLml0aS0taW5saW5lLWRyb3Bkb3duIC5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDI7XG4gIG1hcmdpbi10b3A6IDNweDtcbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0taXRpLWJvcmRlci13aWR0aCkgKiAtMSk7XG4gIGJvcmRlcjogdmFyKC0taXRpLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0taXRpLWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLml0aV9fc2VhcmNoLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci13aWR0aDogMDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDI4cHg7XG59XG5cbltkaXI9cnRsXSAuaXRpX19zZWFyY2gtaW5wdXQge1xuICBwYWRkaW5nLWxlZnQ6IGluaGVyaXQ7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDhweCBjZW50ZXI7XG59XG5cbi5pdGlfX3NlYXJjaC1pbnB1dCArIC5pdGlfX2NvdW50cnktbGlzdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1pdGktYm9yZGVyLWNvbG9yKTtcbn1cblxuLml0aV9fc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLml0aV9fc2VhcmNoLWlucHV0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5pdGlfX3NlYXJjaC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG5bZGlyPXJ0bF0gLml0aV9fc2VhcmNoLWljb24ge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogOHB4O1xufVxuXG4uaXRpX19zZWFyY2gtaWNvbi1zdmcge1xuICBzdHJva2U6IHZhcigtLWl0aS1zZWFyY2gtaWNvbi1jb2xvcik7XG4gIGZpbGw6IG5vbmU7XG4gIHN0cm9rZS13aWR0aDogMztcbn1cblxuLml0aV9fc2VhcmNoLWNsZWFyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuXG4uaXRpX19zZWFyY2gtY2xlYXIgLml0aV9fc2VhcmNoLWNsZWFyLXgge1xuICBzdHJva2Utd2lkdGg6IDI7XG59XG5cbi5pdGlfX3NlYXJjaC1jbGVhciAuaXRpX19zZWFyY2gtY2xlYXItYmcge1xuICBmaWxsOiB2YXIoLS1pdGktc2VhcmNoLWljb24tY29sb3IpO1xufVxuXG5bZGlyPXJ0bF0gLml0aV9fc2VhcmNoLWNsZWFyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDRweDtcbn1cblxuLml0aV9fc2VhcmNoLWNsZWFyOmhvdmVyLCAuaXRpX19zZWFyY2gtY2xlYXI6Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWl0aS1ob3Zlci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5pdGlfX25vLXJlc3VsdHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cblxuLml0aV9fY291bnRyeS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4uaXRpLS1pbmxpbmUtZHJvcGRvd24gLml0aV9fY291bnRyeS1saXN0IHtcbiAgbWF4LWhlaWdodDogMTg1cHg7XG59XG5cbi5pdGktLWZsZXhpYmxlLWRyb3Bkb3duLXdpZHRoIC5pdGlfX2NvdW50cnktbGlzdCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xuICAuaXRpLS1mbGV4aWJsZS1kcm9wZG93bi13aWR0aCAuaXRpX19jb3VudHJ5LWxpc3Qge1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbi5pdGlfX2NvdW50cnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiA4cHggdmFyKC0taXRpLXNwYWNlci1ob3Jpem9udGFsKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLml0aV9fZGlhbC1jb2RlIHtcbiAgY29sb3I6IHZhcigtLWl0aS1kaWFsY29kZS1jb2xvcik7XG59XG5cbi5pdGlfX2NvdW50cnkuaXRpX19oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pdGktaG92ZXItY29sb3IpO1xufVxuXG4uaXRpX19jb3VudHJ5LWxpc3QgLml0aV9fZmxhZywgLml0aV9fY291bnRyeS1uYW1lIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xufVxuXG5bZGlyPXJ0bF0gLml0aV9fY291bnRyeS1saXN0IC5pdGlfX2ZsYWcsIFtkaXI9cnRsXSAuaXRpX19jb3VudHJ5LW5hbWUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiB2YXIoLS1pdGktc3BhY2VyLWhvcml6b250YWwpO1xufVxuXG4uaXRpLS1hbGxvdy1kcm9wZG93biAuaXRpX19jb3VudHJ5LWNvbnRhaW5lcjpub3QoOmhhcygrIGlucHV0W2Rpc2FibGVkXSkpOm5vdCg6aGFzKCsgaW5wdXRbcmVhZG9ubHldKSkgYnV0dG9uLml0aV9fc2VsZWN0ZWQtY291bnRyeSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLml0aS0tYWxsb3ctZHJvcGRvd24gLml0aV9fY291bnRyeS1jb250YWluZXI6bm90KDpoYXMoKyBpbnB1dFtkaXNhYmxlZF0pKTpub3QoOmhhcygrIGlucHV0W3JlYWRvbmx5XSkpIC5pdGlfX3NlbGVjdGVkLWNvdW50cnktcHJpbWFyeTpob3Zlcixcbi5pdGktLWFsbG93LWRyb3Bkb3duIC5pdGlfX2NvdW50cnktY29udGFpbmVyOm5vdCg6aGFzKCsgaW5wdXRbZGlzYWJsZWRdKSk6bm90KDpoYXMoKyBpbnB1dFtyZWFkb25seV0pKSAuaXRpX19zZWxlY3RlZC1jb3VudHJ5OmhhcygrIC5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQ6aG92ZXIpIC5pdGlfX3NlbGVjdGVkLWNvdW50cnktcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWl0aS1ob3Zlci1jb2xvcik7XG59XG5cbi5pdGkgLml0aV9fc2VsZWN0ZWQtZGlhbC1jb2RlIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cblxuW2Rpcj1ydGxdIC5pdGkgLml0aV9fc2VsZWN0ZWQtZGlhbC1jb2RlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4uaXRpLS1jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogLTEwMDBweDtcbiAgbGVmdDogLTEwMDBweDtcbiAgei1pbmRleDogMTA2MDtcbiAgcGFkZGluZzogdmFyKC0taXRpLWJvcmRlci13aWR0aCk7XG59XG5cbi5pdGktLWNvbnRhaW5lcjpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLml0aV9faGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pdGlfX3YtaGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLml0aS0tZnVsbHNjcmVlbi1wb3B1cC5pdGktLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHBhZGRpbmc6IHZhcigtLWl0aS1tb2JpbGUtcG9wdXAtbWFyZ2luKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uaXRpLS1mdWxsc2NyZWVuLXBvcHVwIC5pdGlfX2Ryb3Bkb3duLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5pdGktLWZ1bGxzY3JlZW4tcG9wdXAgLml0aV9fY291bnRyeSB7XG4gIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG4uaXRpX19mbGFnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IDEwMHB4O1xuICBoZWlnaHQ6IHZhcigtLWl0aS1mbGFnLWhlaWdodCk7XG4gIHdpZHRoOiB2YXIoLS1pdGktZmxhZy13aWR0aCk7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAxcHggMHB4ICM4ODg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWZsYWdzLTF4KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdmFyKC0taXRpLWZsYWctb2Zmc2V0KSAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLWl0aS1mbGFnLXNwcml0ZS13aWR0aCkgdmFyKC0taXRpLWZsYWctc3ByaXRlLWhlaWdodCk7XG59XG5cbi5pdGlfX2FjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IDBweDtcbn1cblxuLml0aV9fYWQge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2cHg7XG59XG5cbi5pdGlfX2FlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMnB4O1xufVxuXG4uaXRpX19hZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDhweDtcbn1cblxuLml0aV9fYWcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY0cHg7XG59XG5cbi5pdGlfX2FpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MHB4O1xufVxuXG4uaXRpX19hbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTZweDtcbn1cblxuLml0aV9fYW0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTExMnB4O1xufVxuXG4uaXRpX19hbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTI4cHg7XG59XG5cbi5pdGlfX2FyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDRweDtcbn1cblxuLml0aV9fYXMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTE2MHB4O1xufVxuXG4uaXRpX19hdCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMTc2cHg7XG59XG5cbi5pdGlfX2F1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTJweDtcbn1cblxuLml0aV9fYXcge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTIwOHB4O1xufVxuXG4uaXRpX19heCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjI0cHg7XG59XG5cbi5pdGlfX2F6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDBweDtcbn1cblxuLml0aV9fYmEge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTI1NnB4O1xufVxuXG4uaXRpX19iYiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMjcycHg7XG59XG5cbi5pdGlfX2JkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODhweDtcbn1cblxuLml0aV9fYmUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTMwNHB4O1xufVxuXG4uaXRpX19iZiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzIwcHg7XG59XG5cbi5pdGlfX2JnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzZweDtcbn1cblxuLml0aV9fYmgge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTM1MnB4O1xufVxuXG4uaXRpX19iaSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtMzY4cHg7XG59XG5cbi5pdGlfX2JqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODRweDtcbn1cblxuLml0aV9fYmwge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQwMHB4O1xufVxuXG4uaXRpX19ibSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDE2cHg7XG59XG5cbi5pdGlfX2JuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00MzJweDtcbn1cblxuLml0aV9fYm8ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ0OHB4O1xufVxuXG4uaXRpX19icSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNDY0cHg7XG59XG5cbi5pdGlfX2JyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC00ODBweDtcbn1cblxuLml0aV9fYnMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTQ5NnB4O1xufVxuXG4uaXRpX19idCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTEycHg7XG59XG5cbi5pdGlfX2J3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01MjhweDtcbn1cblxuLml0aV9fYnkge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU0NHB4O1xufVxuXG4uaXRpX19ieiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNTYwcHg7XG59XG5cbi5pdGlfX2NhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC01NzZweDtcbn1cblxuLml0aV9fY2Mge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTU5MnB4O1xufVxuXG4uaXRpX19jZCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjA4cHg7XG59XG5cbi5pdGlfX2NmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02MjRweDtcbn1cblxuLml0aV9fY2cge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY0MHB4O1xufVxuXG4uaXRpX19jaCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNjU2cHg7XG59XG5cbi5pdGlfX2NpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC02NzJweDtcbn1cblxuLml0aV9fY2sge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTY4OHB4O1xufVxuXG4uaXRpX19jbCB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzA0cHg7XG59XG5cbi5pdGlfX2NtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03MjBweDtcbn1cblxuLml0aV9fY24ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTczNnB4O1xufVxuXG4uaXRpX19jbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtNzUycHg7XG59XG5cbi5pdGlfX2NyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC03NjhweDtcbn1cblxuLml0aV9fY3Uge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTc4NHB4O1xufVxuXG4uaXRpX19jdiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODAwcHg7XG59XG5cbi5pdGlfX2N3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04MTZweDtcbn1cblxuLml0aV9fY3gge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTgzMnB4O1xufVxuXG4uaXRpX19jeSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODQ4cHg7XG59XG5cbi5pdGlfX2N6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC04NjRweDtcbn1cblxuLml0aV9fZGUge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTg4MHB4O1xufVxuXG4uaXRpX19kaiB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtODk2cHg7XG59XG5cbi5pdGlfX2RrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05MTJweDtcbn1cblxuLml0aV9fZG0ge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTkyOHB4O1xufVxuXG4uaXRpX19kbyB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTQ0cHg7XG59XG5cbi5pdGlfX2R6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC05NjBweDtcbn1cblxuLml0aV9fZWMge1xuICAtLWl0aS1mbGFnLW9mZnNldDogLTk3NnB4O1xufVxuXG4uaXRpX19lZSB7XG4gIC0taXRpLWZsYWctb2Zmc2V0OiAtOTkycHg7XG59XG5cbi5pdGlfX2VnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDA4cHg7XG59XG5cbi5pdGlfX2VoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDI0cHg7XG59XG5cbi5pdGlfX2VyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDQwcHg7XG59XG5cbi5pdGlfX2VzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDU2cHg7XG59XG5cbi5pdGlfX2V0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDcycHg7XG59XG5cbi5pdGlfX2ZpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMDg4cHg7XG59XG5cbi5pdGlfX2ZqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTA0cHg7XG59XG5cbi5pdGlfX2ZrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTIwcHg7XG59XG5cbi5pdGlfX2ZtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTM2cHg7XG59XG5cbi5pdGlfX2ZvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTUycHg7XG59XG5cbi5pdGlfX2ZyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTY4cHg7XG59XG5cbi5pdGlfX2dhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMTg0cHg7XG59XG5cbi5pdGlfX2diIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjAwcHg7XG59XG5cbi5pdGlfX2dkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjE2cHg7XG59XG5cbi5pdGlfX2dlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjMycHg7XG59XG5cbi5pdGlfX2dmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjQ4cHg7XG59XG5cbi5pdGlfX2dnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjY0cHg7XG59XG5cbi5pdGlfX2doIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjgwcHg7XG59XG5cbi5pdGlfX2dpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMjk2cHg7XG59XG5cbi5pdGlfX2dsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzEycHg7XG59XG5cbi5pdGlfX2dtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzI4cHg7XG59XG5cbi5pdGlfX2duIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzQ0cHg7XG59XG5cbi5pdGlfX2dwIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzYwcHg7XG59XG5cbi5pdGlfX2dxIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzc2cHg7XG59XG5cbi5pdGlfX2dyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xMzkycHg7XG59XG5cbi5pdGlfX2d0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDA4cHg7XG59XG5cbi5pdGlfX2d1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDI0cHg7XG59XG5cbi5pdGlfX2d3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDQwcHg7XG59XG5cbi5pdGlfX2d5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDU2cHg7XG59XG5cbi5pdGlfX2hrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDcycHg7XG59XG5cbi5pdGlfX2huIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNDg4cHg7XG59XG5cbi5pdGlfX2hyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTA0cHg7XG59XG5cbi5pdGlfX2h0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTIwcHg7XG59XG5cbi5pdGlfX2h1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTM2cHg7XG59XG5cbi5pdGlfX2lkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTUycHg7XG59XG5cbi5pdGlfX2llIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTY4cHg7XG59XG5cbi5pdGlfX2lsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNTg0cHg7XG59XG5cbi5pdGlfX2ltIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjAwcHg7XG59XG5cbi5pdGlfX2luIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjE2cHg7XG59XG5cbi5pdGlfX2lvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjMycHg7XG59XG5cbi5pdGlfX2lxIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjQ4cHg7XG59XG5cbi5pdGlfX2lyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjY0cHg7XG59XG5cbi5pdGlfX2lzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjgwcHg7XG59XG5cbi5pdGlfX2l0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNjk2cHg7XG59XG5cbi5pdGlfX2plIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzEycHg7XG59XG5cbi5pdGlfX2ptIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzI4cHg7XG59XG5cbi5pdGlfX2pvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzQ0cHg7XG59XG5cbi5pdGlfX2pwIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzYwcHg7XG59XG5cbi5pdGlfX2tlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzc2cHg7XG59XG5cbi5pdGlfX2tnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xNzkycHg7XG59XG5cbi5pdGlfX2toIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODA4cHg7XG59XG5cbi5pdGlfX2tpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODI0cHg7XG59XG5cbi5pdGlfX2ttIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODQwcHg7XG59XG5cbi5pdGlfX2tuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODU2cHg7XG59XG5cbi5pdGlfX2twIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODcycHg7XG59XG5cbi5pdGlfX2tyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xODg4cHg7XG59XG5cbi5pdGlfX2t3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTA0cHg7XG59XG5cbi5pdGlfX2t5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTIwcHg7XG59XG5cbi5pdGlfX2t6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTM2cHg7XG59XG5cbi5pdGlfX2xhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTUycHg7XG59XG5cbi5pdGlfX2xiIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTY4cHg7XG59XG5cbi5pdGlfX2xjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0xOTg0cHg7XG59XG5cbi5pdGlfX2xpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDAwcHg7XG59XG5cbi5pdGlfX2xrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDE2cHg7XG59XG5cbi5pdGlfX2xyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDMycHg7XG59XG5cbi5pdGlfX2xzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDQ4cHg7XG59XG5cbi5pdGlfX2x0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDY0cHg7XG59XG5cbi5pdGlfX2x1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDgwcHg7XG59XG5cbi5pdGlfX2x2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMDk2cHg7XG59XG5cbi5pdGlfX2x5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTEycHg7XG59XG5cbi5pdGlfX21hIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTI4cHg7XG59XG5cbi5pdGlfX21jIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTQ0cHg7XG59XG5cbi5pdGlfX21kIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTYwcHg7XG59XG5cbi5pdGlfX21lIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTc2cHg7XG59XG5cbi5pdGlfX21mIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMTkycHg7XG59XG5cbi5pdGlfX21nIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjA4cHg7XG59XG5cbi5pdGlfX21oIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjI0cHg7XG59XG5cbi5pdGlfX21rIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjQwcHg7XG59XG5cbi5pdGlfX21sIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjU2cHg7XG59XG5cbi5pdGlfX21tIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjcycHg7XG59XG5cbi5pdGlfX21uIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMjg4cHg7XG59XG5cbi5pdGlfX21vIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzA0cHg7XG59XG5cbi5pdGlfX21wIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzIwcHg7XG59XG5cbi5pdGlfX21xIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzM2cHg7XG59XG5cbi5pdGlfX21yIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzUycHg7XG59XG5cbi5pdGlfX21zIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzY4cHg7XG59XG5cbi5pdGlfX210IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yMzg0cHg7XG59XG5cbi5pdGlfX211IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDAwcHg7XG59XG5cbi5pdGlfX212IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDE2cHg7XG59XG5cbi5pdGlfX213IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDMycHg7XG59XG5cbi5pdGlfX214IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDQ4cHg7XG59XG5cbi5pdGlfX215IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDY0cHg7XG59XG5cbi5pdGlfX216IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDgwcHg7XG59XG5cbi5pdGlfX25hIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNDk2cHg7XG59XG5cbi5pdGlfX25jIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTEycHg7XG59XG5cbi5pdGlfX25lIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTI4cHg7XG59XG5cbi5pdGlfX25mIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTQ0cHg7XG59XG5cbi5pdGlfX25nIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTYwcHg7XG59XG5cbi5pdGlfX25pIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTc2cHg7XG59XG5cbi5pdGlfX25sIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNTkycHg7XG59XG5cbi5pdGlfX25vIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjA4cHg7XG59XG5cbi5pdGlfX25wIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjI0cHg7XG59XG5cbi5pdGlfX25yIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjQwcHg7XG59XG5cbi5pdGlfX251IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjU2cHg7XG59XG5cbi5pdGlfX256IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjcycHg7XG59XG5cbi5pdGlfX29tIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNjg4cHg7XG59XG5cbi5pdGlfX3BhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzA0cHg7XG59XG5cbi5pdGlfX3BlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzIwcHg7XG59XG5cbi5pdGlfX3BmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzM2cHg7XG59XG5cbi5pdGlfX3BnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzUycHg7XG59XG5cbi5pdGlfX3BoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzY4cHg7XG59XG5cbi5pdGlfX3BrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yNzg0cHg7XG59XG5cbi5pdGlfX3BsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODAwcHg7XG59XG5cbi5pdGlfX3BtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODE2cHg7XG59XG5cbi5pdGlfX3ByIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODMycHg7XG59XG5cbi5pdGlfX3BzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODQ4cHg7XG59XG5cbi5pdGlfX3B0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODY0cHg7XG59XG5cbi5pdGlfX3B3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODgwcHg7XG59XG5cbi5pdGlfX3B5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yODk2cHg7XG59XG5cbi5pdGlfX3FhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTEycHg7XG59XG5cbi5pdGlfX3JlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTI4cHg7XG59XG5cbi5pdGlfX3JvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTQ0cHg7XG59XG5cbi5pdGlfX3JzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTYwcHg7XG59XG5cbi5pdGlfX3J1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTc2cHg7XG59XG5cbi5pdGlfX3J3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0yOTkycHg7XG59XG5cbi5pdGlfX3NhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDA4cHg7XG59XG5cbi5pdGlfX3NiIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDI0cHg7XG59XG5cbi5pdGlfX3NjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDQwcHg7XG59XG5cbi5pdGlfX3NkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDU2cHg7XG59XG5cbi5pdGlfX3NlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDcycHg7XG59XG5cbi5pdGlfX3NnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMDg4cHg7XG59XG5cbi5pdGlfX3NoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTA0cHg7XG59XG5cbi5pdGlfX3NpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTIwcHg7XG59XG5cbi5pdGlfX3NqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTM2cHg7XG59XG5cbi5pdGlfX3NrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTUycHg7XG59XG5cbi5pdGlfX3NsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTY4cHg7XG59XG5cbi5pdGlfX3NtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMTg0cHg7XG59XG5cbi5pdGlfX3NuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjAwcHg7XG59XG5cbi5pdGlfX3NvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjE2cHg7XG59XG5cbi5pdGlfX3NyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjMycHg7XG59XG5cbi5pdGlfX3NzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjQ4cHg7XG59XG5cbi5pdGlfX3N0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjY0cHg7XG59XG5cbi5pdGlfX3N2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjgwcHg7XG59XG5cbi5pdGlfX3N4IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMjk2cHg7XG59XG5cbi5pdGlfX3N5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzEycHg7XG59XG5cbi5pdGlfX3N6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzI4cHg7XG59XG5cbi5pdGlfX3RjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzQ0cHg7XG59XG5cbi5pdGlfX3RkIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzYwcHg7XG59XG5cbi5pdGlfX3RnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzc2cHg7XG59XG5cbi5pdGlfX3RoIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zMzkycHg7XG59XG5cbi5pdGlfX3RqIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDA4cHg7XG59XG5cbi5pdGlfX3RrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDI0cHg7XG59XG5cbi5pdGlfX3RsIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDQwcHg7XG59XG5cbi5pdGlfX3RtIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDU2cHg7XG59XG5cbi5pdGlfX3RuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDcycHg7XG59XG5cbi5pdGlfX3RvIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNDg4cHg7XG59XG5cbi5pdGlfX3RyIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTA0cHg7XG59XG5cbi5pdGlfX3R0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTIwcHg7XG59XG5cbi5pdGlfX3R2IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTM2cHg7XG59XG5cbi5pdGlfX3R3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTUycHg7XG59XG5cbi5pdGlfX3R6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTY4cHg7XG59XG5cbi5pdGlfX3VhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNTg0cHg7XG59XG5cbi5pdGlfX3VnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjAwcHg7XG59XG5cbi5pdGlfX3VzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjE2cHg7XG59XG5cbi5pdGlfX3V5IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjMycHg7XG59XG5cbi5pdGlfX3V6IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjQ4cHg7XG59XG5cbi5pdGlfX3ZhIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjY0cHg7XG59XG5cbi5pdGlfX3ZjIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjgwcHg7XG59XG5cbi5pdGlfX3ZlIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNjk2cHg7XG59XG5cbi5pdGlfX3ZnIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzEycHg7XG59XG5cbi5pdGlfX3ZpIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzI4cHg7XG59XG5cbi5pdGlfX3ZuIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzQ0cHg7XG59XG5cbi5pdGlfX3Z1IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzYwcHg7XG59XG5cbi5pdGlfX3dmIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzc2cHg7XG59XG5cbi5pdGlfX3dzIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zNzkycHg7XG59XG5cbi5pdGlfX3hrIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODA4cHg7XG59XG5cbi5pdGlfX3llIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODI0cHg7XG59XG5cbi5pdGlfX3l0IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODQwcHg7XG59XG5cbi5pdGlfX3phIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODU2cHg7XG59XG5cbi5pdGlfX3ptIHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODcycHg7XG59XG5cbi5pdGlfX3p3IHtcbiAgLS1pdGktZmxhZy1vZmZzZXQ6IC0zODg4cHg7XG59XG5cbi5pdGlfX2dsb2JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZ2xvYmUtMXgpO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICBib3gtc2hhZG93OiBub25lO1xuICBoZWlnaHQ6IDE5cHg7XG59XG5cbkBtZWRpYSAobWluLXJlc29sdXRpb246IDJ4KSB7XG4gIC5pdGlfX2ZsYWcge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLWl0aS1wYXRoLWZsYWdzLTJ4KTtcbiAgfVxuICAuaXRpX19nbG9iZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0taXRpLXBhdGgtZ2xvYmUtMngpO1xuICB9XG59XG4vKiBzdHlsZWxpbnQtZW5hYmxlICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwidmlsbGFub3ZhXCI7XG4gIHNyYzogdXJsKFwiL2ZvbnRzL3ZpbGxhbm92YS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSwgdXJsKFwiL2ZvbnRzL3ZpbGxhbm92YS50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi9mb250cy92aWxsYW5vdmEud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG4uaWNvbixcbltjbGFzc149aWNvbi1dLFxuW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIFVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgZXh0ZW5zaW9ucyBmcm9tIG92ZXJyaWRpbmcgdGhpcyBmb250LiAqL1xuICBmb250LWZhbWlseTogXCJ2aWxsYW5vdmFcIiAhaW1wb3J0YW50O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tYWNjZXNzaWJpbGl0eTpiZWZvcmUge1xuICBjb250ZW50OiBcInpcIjtcbn1cblxuLmljb24tcGF1c2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJ5XCI7XG59XG5cbi5pY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJ4XCI7XG59XG5cbi5pY29uLW1vdXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwid1wiO1xufVxuXG4uaWNvbi1sb2ctb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwic1wiO1xufVxuXG4uaWNvbi1taW51czpiZWZvcmUge1xuICBjb250ZW50OiBcInZcIjtcbn1cblxuLmljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcInVcIjtcbn1cblxuLmljb24tYWNoaWV2ZW1lbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJ0XCI7XG59XG5cbi5pY29uLWdsb3NzYXJ5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwicVwiO1xufVxuXG4uaWNvbi1mYXE6YmVmb3JlIHtcbiAgY29udGVudDogXCJyXCI7XG59XG5cbi5pY29uLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcInBcIjtcbn1cblxuLmljb24tcHJpbnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJvXCI7XG59XG5cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJuXCI7XG59XG5cbi5pY29uLWFycm93LW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJtXCI7XG59XG5cbi5pY29uLWFycm93LXByZXZpb3VzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwibFwiO1xufVxuXG4uaWNvbi1hY2NvdW50OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwia1wiO1xufVxuXG4uaWNvbi1xdWlja3ZpZXc6YmVmb3JlIHtcbiAgY29udGVudDogXCJqXCI7XG59XG5cbi5pY29uLXNsaWRldmlldzpiZWZvcmUge1xuICBjb250ZW50OiBcImlcIjtcbn1cblxuLmljb24tbGVhcm4tbW9yZTpiZWZvcmUge1xuICBjb250ZW50OiBcImhcIjtcbn1cblxuLmljb24taG9tZTpiZWZvcmUge1xuICBjb250ZW50OiBcImdcIjtcbn1cblxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiZlwiO1xufVxuXG4uaWNvbi1hbm5vdW5jZTpiZWZvcmUge1xuICBjb250ZW50OiBcImVcIjtcbn1cblxuLmljb24tbGluazpiZWZvcmUge1xuICBjb250ZW50OiBcImRcIjtcbn1cblxuLmljb24teDpiZWZvcmUge1xuICBjb250ZW50OiBcImJcIjtcbn1cblxuLmljb24tbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcImNcIjtcbn1cblxuLmljb24tY2hlY2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJhXCI7XG59XG5cbi8qLS0tVEVYVCBBTkQgRk9OVC0tLSovXG4vKi0tLUJBQ0tHUk9VTkQtLS0qL1xuLyotLS1QT1NJVElPTklORy0tLSovXG4vKi0tLUNPTlRFTlQtLS0qL1xuLyotLS1MSVNUUy0tLSovXG4vKi0tLUJPUkRFUiBBUlJPV1MtLS0qL1xuLyoqRm9ybXMqKi9cbi8qKiBERUZBVUxUIE9WRVJSSURFUyAqKi9cbkBsYXllciBiYXNlIHtcbiAgLmZpZWxkV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgfVxuICAuZmllbGRXcmFwcGVyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgfVxuICAuZmllbGRXcmFwcGVyIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSkge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC5maWVsZFdyYXBwZXIgaW5wdXQ6Oi1tcy1jbGVhcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGlucHV0OjotbXMtY2xlYXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgaW5wdXQ6Oi1tcy1jbGVhcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgaW5wdXQ6Oi1tcy1yZXZlYWwsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIGlucHV0OjotbXMtY2xlYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuZGVzY3JpcHRpb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5kZXNjcmlwdGlvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuZGVzY3JpcHRpb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMC44NGVtO1xuICAgIGNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmFzaWMpIGNhbGMoMC44NSAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciB0ZXh0YXJlYSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQubG9uZ2Fuc3dlciB0ZXh0YXJlYSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtaW4td2lkdGg6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZHJvcGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgc2VsZWN0LFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biBzZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgZmlsbD0nYmxhY2snIGhlaWdodD0nMjQnIHZpZXdCb3g9JzAgMCAyNCAyNCcgd2lkdGg9JzI0JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxwYXRoIGQ9J003IDEwbDUgNSA1LTV6Jy8+PHBhdGggZD0nTTAgMGgyNHYyNEgweicgZmlsbD0nbm9uZScvPjwvc3ZnPlwiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMjVweCA1MHB4O1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgc2VsZWN0OjotbXMtZXhwYW5kLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIge1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1saWdodC1ncmV5KTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG4gIC5jb250cm9sV3JhcHBlcjpsYXN0LWNoaWxkLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXI6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG4gIC5jb250cm9sV3JhcHBlciAuY29udHJvbCxcbiAgLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5jb250cm9sIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyIGxhYmVsLFxuICAuYWRnLXVtYnJhY28tZm9ybXMtY29udHJvbHdyYXBwZXIgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbiAgLmNvbnRyb2xXcmFwcGVyIC5kZXNjcmlwdGlvbixcbiAgLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNnB4O1xuICAgIGZvbnQtc2l6ZTogMC44NGVtO1xuICAgIGNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmFzaWMpIGNhbGMoMC44NSAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlci5lbnJvbGxlZU5hbWUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxuICAuc3R5bGVkRmllbGRzZXQsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQtZ3JleSk7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQtZ3JleSkgY2FsYygwLjQgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuc3R5bGVkRmllbGRzZXQgbGVnZW5kLFxuICAuc3R5bGVkRmllbGRzZXQgLmdyb3VwTGVnZW5kLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCBsZWdlbmQsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IC5ncm91cExlZ2VuZCB7XG4gICAgcGFkZGluZzogNHB4IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljKTtcbiAgICBjb2xvcjogdmFyKC0tYmFzaWMtY29udHJhc3QpO1xuICB9XG4gIC5zdHlsZWRGaWVsZHNldCAuZ3JvdXBMZWdlbmQsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IC5ncm91cExlZ2VuZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xuICB9XG4gIC5zdHlsZWRGaWVsZHNldCAuZmllbGRzZXRHcmlkLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCAuZmllbGRzZXRHcmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICBnYXA6IDEycHg7XG4gIH1cbiAgLnN0eWxlZEZpZWxkc2V0IC5maWVsZHNldEdyaWQgLmZpZWxkV3JhcHBlcixcbiAgLnN0eWxlZEZpZWxkc2V0IC5maWVsZHNldEdyaWQgLmNvbnRyb2xXcmFwcGVyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZHNldCAuZmllbGRzZXRHcmlkIC5maWVsZFdyYXBwZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IC5maWVsZHNldEdyaWQgLmNvbnRyb2xXcmFwcGVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgLmZpZWxkV3JhcHBlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIHtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgfVxuICAuZmllbGRXcmFwcGVyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOHB4O1xuICAgIGxlZnQ6IDhweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMCAwIDVweDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1wcmltYXJ5LWZvbnQpO1xuICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoLml0aV9fc2VhcmNoLWlucHV0KSxcbiAgLmZpZWxkV3JhcHBlciB0ZXh0YXJlYSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6bm90KC5pdGlfX3NlYXJjaC1pbnB1dCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIHRleHRhcmVhLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pOm5vdCguaXRpX19zZWFyY2gtaW5wdXQpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIHRleHRhcmVhLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKTpub3QoLml0aV9fc2VhcmNoLWlucHV0KSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgdGV4dGFyZWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0OHB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcbiAgICBwYWRkaW5nOiAyM3B4IDhweCA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAuZmllbGRXcmFwcGVyIC5zaG93SGlkZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIC5zaG93SGlkZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogNTNweDtcbiAgICB3aWR0aDogNDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICB9XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICAuZmllbGRXcmFwcGVyIC5zaG93SGlkZTpob3ZlcixcbiAgICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAuc2hvd0hpZGU6aG92ZXIsXG4gICAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGU6aG92ZXIsXG4gICAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgICB9XG4gICAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGU6aG92ZXIgLmljb246YWZ0ZXIsXG4gICAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICAgIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZTpob3ZlciAuaWNvbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICAgIH1cbiAgfVxuICBbZGF0YS1icm93c2VyPWllXSAuZmllbGRXcmFwcGVyIC5zaG93SGlkZTpob3ZlcixcbiAgW2RhdGEtYnJvd3Nlcj1pZV0gLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyLFxuICBbZGF0YS1icm93c2VyPWllXSAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIC5zaG93SGlkZTpob3ZlcixcbiAgW2RhdGEtYnJvd3Nlcj1pZV0gLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gIFtkYXRhLWJyb3dzZXI9aWVdIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICBbZGF0YS1icm93c2VyPWllXSAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAuc2hvd0hpZGU6aG92ZXIgLmljb246YWZ0ZXIsXG4gIFtkYXRhLWJyb3dzZXI9aWVdIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICBbZGF0YS1icm93c2VyPWllXSAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6aG92ZXIgLmljb246YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmllIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmhvdmVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGU6aG92ZXIsXG4gIC5pZSAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmllIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmhvdmVyIC5pY29uOmFmdGVyLFxuICAuaWUgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGU6aG92ZXIgLmljb246YWZ0ZXIsXG4gIC5pZSAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGU6aG92ZXIgLmljb246YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGUuZm9jdXMtdmlzaWJsZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlLmZvY3VzLXZpc2libGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlLmZvY3VzLXZpc2libGUsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZS5mb2N1cy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlLmZvY3VzLXZpc2libGUgLmljb246YWZ0ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5zaG93SGlkZS5mb2N1cy12aXNpYmxlIC5pY29uOmFmdGVyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlIC5zaG93SGlkZS5mb2N1cy12aXNpYmxlIC5pY29uOmFmdGVyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGUuZm9jdXMtdmlzaWJsZSAuaWNvbjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgfVxuICAuZmllbGRXcmFwcGVyIC5zaG93SGlkZTpmb2N1cy12aXNpYmxlLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAuc2hvd0hpZGU6Zm9jdXMtdmlzaWJsZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGU6Zm9jdXMtdmlzaWJsZSxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLnNob3dIaWRlOmZvY3VzLXZpc2libGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gICAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGU6Zm9jdXMtdmlzaWJsZSAuaWNvbjphZnRlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlOmZvY3VzLXZpc2libGUgLmljb246YWZ0ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLnNob3dIaWRlOmZvY3VzLXZpc2libGUgLmljb246YWZ0ZXIsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZTpmb2N1cy12aXNpYmxlIC5pY29uOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgLnNob3dIaWRlW2FyaWEtY2hlY2tlZD10cnVlXSAuaWNvbjphZnRlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLnNob3dIaWRlW2FyaWEtY2hlY2tlZD10cnVlXSAuaWNvbjphZnRlcixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGVbYXJpYS1jaGVja2VkPXRydWVdIC5pY29uOmFmdGVyLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAuc2hvd0hpZGVbYXJpYS1jaGVja2VkPXRydWVdIC5pY29uOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAzcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC00NWRlZyk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAuc2hvd0hpZGUgLmljb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5zaG93SGlkZSAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAuc2hvd0hpZGUgLmljb24sXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5zaG93SGlkZSAuaWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcbiAgfVxuICAuZmllbGRXcmFwcGVyICNQYXNzd29yZDpmb2N1cyArICNyZXF1aXJlbWVudHMsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyICNQYXNzd29yZDpmb2N1cyArICNyZXF1aXJlbWVudHMsXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyB7XG4gICAgbWF4LWhlaWdodDogMTAwMHB4O1xuICB9XG4gIC5maWVsZFdyYXBwZXIgI3JlcXVpcmVtZW50cyxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgI3JlcXVpcmVtZW50cyxcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAjcmVxdWlyZW1lbnRzLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAjcmVxdWlyZW1lbnRzIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXgtaGVpZ2h0OiAwO1xuICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgODAwbXMgZWFzZS1pbi1vdXQ7XG4gIH1cbiAgLmZpZWxkV3JhcHBlciAjcmVxdWlyZW1lbnRzIGxpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlciAjcmVxdWlyZW1lbnRzIGxpLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kYXRlICNyZXF1aXJlbWVudHMgbGksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkICNyZXF1aXJlbWVudHMgbGkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgI3JlcXVpcmVtZW50cyBsaS52YWxpZCAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgI3JlcXVpcmVtZW50cyBsaS52YWxpZCAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAjcmVxdWlyZW1lbnRzIGxpLnZhbGlkIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAjcmVxdWlyZW1lbnRzIGxpLnZhbGlkIC5pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb3JyZWN0KTtcbiAgICBjb2xvcjogdmFyKC0tY29ycmVjdC1jb250cmFzdCk7XG4gICAgZm9udC1zaXplOiAwLjg4ZW07XG4gICAgcGFkZGluZy10b3A6IDAuMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIC5maWVsZFdyYXBwZXIgI3JlcXVpcmVtZW50cyBsaSAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgI3JlcXVpcmVtZW50cyBsaSAuaWNvbixcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSAjcmVxdWlyZW1lbnRzIGxpIC5pY29uLFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCAjcmVxdWlyZW1lbnRzIGxpIC5pY29uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13cm9uZyk7XG4gICAgY29sb3I6IHZhcigtLXdyb25nLWNvbnRyYXN0KTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICAgIGZvbnQtc2l6ZTogMC45NWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjFlbTtcbiAgfVxuICAuZHJvcGRvd25XcmFwcGVyIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCksXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRyb3Bkb3duIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDhweDtcbiAgICBsZWZ0OiA4cHg7XG4gICAgei1pbmRleDogMjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCA1cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbiAgICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICB9XG4gIC5kcm9wZG93bldyYXBwZXIgc2VsZWN0LFxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biBzZWxlY3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA1MnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcbiAgICBwYWRkaW5nOiAyNnB4IDQ1cHggOHB4IDhweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmxvbmdhbnN3ZXIgdGV4dGFyZWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA1NnB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcbiAgICBwYWRkaW5nOiA2cHggOHB4IDZweDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIGZvcm0gLmVycm9yLFxuICAuZm9ybVdyYXAgLmVycm9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDRweCAwO1xuICAgIHBhZGRpbmc6IDJweCA0cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdyb25nKTtcbiAgICBjb2xvcjogdmFyKC0td3JvbmctY29udHJhc3QpO1xuICB9XG4gIGZvcm0gLmVycm9yOmVtcHR5LFxuICAuZm9ybVdyYXAgLmVycm9yOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xuICAgIC5zdHlsZWRGaWVsZHNldCxcbiAgICAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgIH1cbiAgICAuc3R5bGVkRmllbGRzZXQgLmZpZWxkc2V0R3JpZCxcbiAgICAudW1icmFjby1mb3Jtcy1maWVsZHNldCAuZmllbGRzZXRHcmlkIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbm9uZTtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICAgLmNvbnRyb2xXcmFwcGVyIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xuICAgIC5jb250cm9sV3JhcHBlciBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIH1cbiAgfVxufVxuLmZpZWxkV3JhcHBlciAuZGVzY3JpcHRpb24gPiAqOmZpcnN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIgLmRlc2NyaXB0aW9uID4gKjpmaXJzdC1jaGlsZCxcbi51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLmRlc2NyaXB0aW9uID4gKjpmaXJzdC1jaGlsZCxcbi51bWJyYWNvLWZvcm1zLWZpZWxkLnBhc3N3b3JkIC5kZXNjcmlwdGlvbiA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4uZmllbGRXcmFwcGVyIC5kZXNjcmlwdGlvbiA+ICo6bGFzdC1jaGlsZCxcbi51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyIC5kZXNjcmlwdGlvbiA+ICo6bGFzdC1jaGlsZCxcbi51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkLFxuLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uY29udHJvbFdyYXBwZXIgPiAqOmZpcnN0LWNoaWxkLFxuLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5jb250cm9sV3JhcHBlciA+ICo6bGFzdC1jaGlsZCxcbi5hZGctdW1icmFjby1mb3Jtcy1jb250cm9sd3JhcHBlciA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5jb250cm9sV3JhcHBlciAuZGVzY3JpcHRpb24gPiAqOmZpcnN0LWNoaWxkLFxuLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5kZXNjcmlwdGlvbiA+ICo6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG4uY29udHJvbFdyYXBwZXIgLmRlc2NyaXB0aW9uID4gKjpsYXN0LWNoaWxkLFxuLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIC5kZXNjcmlwdGlvbiA+ICo6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnN0eWxlZEZpZWxkc2V0ID4gOmxhc3QtY2hpbGQsXG4udW1icmFjby1mb3Jtcy1maWVsZHNldCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4jcmVxdWlyZW1lbnRzIGxpLnZhbGlkIC5pY29uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiYVwiO1xufVxuXG5AbGF5ZXIgcmVzZXQge1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG4gIGh0bWwge1xuICAgIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIH1cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplU3BlZWQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwZHZoO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICBhcnRpY2xlID4gKiArICoge1xuICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgfVxuICBpbnB1dCxcbiAgYnV0dG9uLFxuICB0ZXh0YXJlYSxcbiAgc2VsZWN0IHtcbiAgICBmb250OiBpbmhlcml0O1xuICB9XG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICBwIHtcbiAgICBtYXJnaW46IDAuMzVlbSAwIDAuNzVlbTtcbiAgICBsaW5lLWhlaWdodDogMS41NWVtO1xuICB9XG4gIG9sLFxuICB1bCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW46IDAuNGVtIDAgMC43NWVtO1xuICB9XG4gIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGlmcmFtZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG59XG5AbGF5ZXIgYmFzZSB7XG4gIGJvZHkge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1iYXNpYy1mb250KTtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tbGluayk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGluay1jb250cmFzdCk7XG4gICAgcGFkZGluZy1pbmxpbmU6IDJweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluayk7XG4gICAgdHJhbnNpdGlvbjogMC4xNXM7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgICBhOmhvdmVyIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICBbZGF0YS1icm93c2VyPWllXSBhOmhvdmVyIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuaWUgYTpob3ZlciB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgYS5mb2N1cy12aXNpYmxlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICBhOmZvY3VzLXZpc2libGUge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIGEgLnRhcmdldEJsYW5rTm90aWZpZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwLXBhdGg6IHJlY3QoMCAwIDAgMCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgfVxuICBhIC5pY29uLW1haWwge1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xuICB9XG4gIGEgLmljb24tZXh0ZXJuYWwtbGluayB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVlbTtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICB9XG4gIFtkYXRhLWFjdGl2ZS16b25lPWhvbWVdIHtcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICB9XG59XG4qOm5vdChhKTpmb2N1cy12aXNpYmxlLCAqOm5vdChhKS5mb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZS1jb2xvcjogdmFyKC0tZm9jdXMtb3V0bGluZS1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZS1vZmZzZXQ6IHZhcigtLWZvY3VzLW91dGxpbmUtb2Zmc2V0KSAhaW1wb3J0YW50O1xuICBvdXRsaW5lLXN0eWxlOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXN0eWxlKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lLXdpZHRoOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXdpZHRoKSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgdmFyKC0tZm9jdXMtc2hhZG93LWNvbG9yKSAhaW1wb3J0YW50O1xufVxuXG4uc29jaWFsTWVkaWFMb2dpbnMgYTpmb2N1cy12aXNpYmxlLFxuLnNvY2lhbE1lZGlhTG9naW5zIGEuZm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmUtY29sb3I6IHZhcigtLWZvY3VzLW91dGxpbmUtY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgIWltcG9ydGFudDtcbiAgb3V0bGluZS1zdHlsZTogdmFyKC0tZm9jdXMtb3V0bGluZS1zdHlsZSkgIWltcG9ydGFudDtcbiAgb3V0bGluZS13aWR0aDogdmFyKC0tZm9jdXMtb3V0bGluZS13aWR0aCkgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tZm9jdXMtb3V0bGluZS1vZmZzZXQpIHZhcigtLWZvY3VzLXNoYWRvdy1jb2xvcikgIWltcG9ydGFudDtcbn1cblxuYm9keVtkYXRhLXJlZHVjZS1hbmltYXRpb249dHJ1ZV0gKixcbmJvZHlbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPXRydWVdICo6OmJlZm9yZSxcbmJvZHlbZGF0YS1yZWR1Y2UtYW5pbWF0aW9uPXRydWVdICo6OmFmdGVyIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbi5zbGlkZVNraXAsXG4uaG9tZVNraXAsXG4ubWVtYmVyc2hpcFNraXAge1xuICBib3JkZXI6IDA7XG4gIGNsaXAtcGF0aDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWRlU2tpcC5mb2N1cy12aXNpYmxlLFxuLmhvbWVTa2lwLmZvY3VzLXZpc2libGUsXG4ubWVtYmVyc2hpcFNraXAuZm9jdXMtdmlzaWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAxMHB4O1xuICB6LWluZGV4OiA5OTk5OTk5OTk5OTk5OTk7XG4gIHdpZHRoOiBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweDtcbiAgY2xpcC1wYXRoOiBpbml0aWFsO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4uc2xpZGVTa2lwOmZvY3VzLXZpc2libGUsXG4uaG9tZVNraXA6Zm9jdXMtdmlzaWJsZSxcbi5tZW1iZXJzaGlwU2tpcDpmb2N1cy12aXNpYmxlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDEwcHg7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk5OTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICBjbGlwLXBhdGg6IGluaXRpYWw7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbn1cblxuW2RhdGEtYWN0aXZlLXpvbmU9aG9tZV0gLmhvbWVTa2lwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbltkYXRhLWFjdGl2ZS16b25lPXNsaWRlc10gLnNsaWRlU2tpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWVtYmVyc2hpcFNraXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuaHRtbCB7XG4gIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuaHRtbFtkYXRhLWFjdGl2ZS16b25lPWhvbWVdW2RhdGEtYWN0aXZlLWRpYWxvZz1cIlwiXSB7XG4gIHNjcm9sbC1zbmFwLXR5cGU6IHkgbWFuZGF0b3J5O1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBzY3JvbGwtcGFkZGluZy10b3A6IGNhbGMoKDEwMHZoIC0gdmFyKC0tZm9vdGVyLWhlaWdodCkpIC8gNSAqIDIpO1xufVxuXG53aWxsaXMtem9uZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5baW5lcnRdIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbndpbGxpcy1kaWFsb2c6bm90KFtkYXRhLW9wZW49dHJ1ZV0pIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5odG1sW2RhdGEtZGlhbG9nLWhpZGUtb3ZlcmZsb3c9dHJ1ZV0ge1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbkBsYXllciBiYXNlIHtcbiAgLmRpYWxvZ0JhY2tkcm9wIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgpKTtcbiAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgfVxuICBAc3VwcG9ydHMgKGhlaWdodDogMTAwZHZoKSB7XG4gICAgLmRpYWxvZ0JhY2tkcm9wIHtcbiAgICAgIGhlaWdodDogMTAwZHZoO1xuICAgIH1cbiAgfVxuICAuc2xpZGUgLmRpYWxvZ0JhY2tkcm9wIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLmRpYWxvZ0lubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBkaXZbcm9sZT1kaWFsb2ddIHtcbiAgICB3aWR0aDogNzgwcHg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gLmRpYWxvZ0lubmVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9bGFyZ2VNb2RhbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgd2lkdGg6IDgwMHB4O1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nSW5uZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSAuZGlhbG9nTGFiZWwge1xuICAgIG1heC13aWR0aDogODAwcHg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSBkaXZbcm9sZT1kaWFsb2ddIC5kaWFsb2dDb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gZGl2W3JvbGU9ZGlhbG9nXSAuZGlhbG9nQWN0aW9ucyB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXVtkYXRhLWRpYWxvZy1zdHlsZT1zaWRlYmFyTGVmdF0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdW2RhdGEtZGlhbG9nLXN0eWxlPXNpZGViYXJSaWdodF0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXSBkaXZbcm9sZT1kaWFsb2ddIHtcbiAgICB3aWR0aDogNDQwcHg7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1mdWxsXSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZV49ZnVsbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBbZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdIGRpdltyb2xlPWRpYWxvZ10ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICAgIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gZGl2W3JvbGU9ZGlhbG9nXSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9Z2xhY2lhbF0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDMwMDBtcztcbn1cblxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD12ZXJ5U2xvd10ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbn1cblxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1zbG93XSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogODAwbXM7XG59XG5cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9bWVkaXVtXSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9ZmFzdF0ge1xuICBhbmltYXRpb24tZHVyYXRpb246IDMwMG1zO1xufVxuXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPXZlcnlGYXN0XSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwbXM7XG59XG5cbi5kaWFsb2dCYWNrZHJvcCB7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjAwbXM7XG59XG4uZGlhbG9nQmFja2Ryb3AuaW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuLmRpYWxvZ0JhY2tkcm9wLm91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlSW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG59XG5cbkBrZXlmcmFtZXMgZmFkZVRvcEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVUb3BJbl0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZVRvcEluO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVUb3BPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZVRvcE91dF0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZVRvcE91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlQm90dG9tSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlQm90dG9tSW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVCb3R0b21Jbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlQm90dG9tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZUJvdHRvbU91dF0ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUJvdHRvbU91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlUmlnaHRJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVSaWdodEluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlUmlnaHRJbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlUmlnaHRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1mYWRlUmlnaHRPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVSaWdodE91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlTGVmdEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPWZhZGVMZWZ0SW5dIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVMZWZ0SW47XG59XG5cbkBrZXlmcmFtZXMgZmFkZUxlZnRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9ZmFkZUxlZnRPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVMZWZ0T3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlVG9wSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BJbl0ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVUb3BJbjtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICBkaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BJbl0ge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbUluO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVUb3BPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVUb3BPdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlVG9wT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlQm90dG9tSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1zbGlkZUJvdHRvbUluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbUluO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlQm90dG9tT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVCb3R0b21PdXRdIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlQm90dG9tT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlUmlnaHRJbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPXNsaWRlUmlnaHRJbl0ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVSaWdodEluO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlUmlnaHRPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cbn1cbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1zbGlkZVJpZ2h0T3V0XSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZVJpZ2h0T3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlTGVmdEluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPXNsaWRlTGVmdEluXSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUxlZnRJbjtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUxlZnRPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB9XG59XG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9c2xpZGVMZWZ0T3V0XSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUxlZnRPdXQ7XG59XG5cbi5kaWFsb2dCYWNrZHJvcCB7XG4gIGJhY2tncm91bmQ6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZC1kYXJrKSBjYWxjKDAuOTggKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWRhcmstZ3JleSkgdmFyKC0tbGlnaHQtZ3JleSk7XG59XG5cbi5kaWFsb2dDb250ZW50IHtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5cbi5kaWFsb2dBY3Rpb25zLmdlbmVyYXRlZCBidXR0b24uY2xvc2VEaWFsb2cgLmljb246YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG4gIGNvbnRlbnQ6IFwiYlwiO1xufVxuXG5idXR0b24uY2xvc2VEaWFsb2cgLmljb246YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGNvbnRlbnQ6IFwiYlwiO1xufVxuXG4uZGlhbG9nTGFiZWwgaDIge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbn1cblxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG4uc2FmYXJpIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0ge1xuICBwYWRkaW5nOiAyMHB4IDIwcHggMTUwcHg7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIC5kaWFsb2dJbm5lciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDMwcHggNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1jb250cmFzdCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHZhcigtLWhvdmVyKTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gLmRpYWxvZ0lubmVyIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtYnJpZ2h0KSBtYXgobCAtIGwgKiAwLjEsIDApIGMgaCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGdhcDogNXB4O1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSAuZGlhbG9nSW5uZXIgYnV0dG9uIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gLmRpYWxvZ0lubmVyIGJ1dHRvbjpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSBbZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIC5kaWFsb2dJbm5lciBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pZSBbZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIC5kaWFsb2dJbm5lciBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1tb2RhbF0gLmRpYWxvZ0lubmVyIGJ1dHRvbi5mb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9bW9kYWxdIC5kaWFsb2dJbm5lciBidXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSAuZGlhbG9nSW5uZXIgYnV0dG9uW2Rpc2FibGVkXSwgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSAuZGlhbG9nSW5uZXIgYnV0dG9uW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zYWZhcmkgW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIHtcbiAgcGFkZGluZzogMjBweCAyMHB4IDE1MHB4O1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPWxhcmdlTW9kYWxdIC5kaWFsb2dJbm5lciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0LWNvbnRyYXN0KTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nTGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrKTtcbiAgcGFkZGluZzogNXB4IDEwcHggMjBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1sYXJnZU1vZGFsXSAuZGlhbG9nTGFiZWwgaDIge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG59XG5cbltkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxNzVkZWcsIHZhcigtLWJyYW5kLWRhcmspIDQwJSwgb2tsY2goZnJvbSB2YXIoLS1icmFuZC1kYXJrKSBtYXgobCAtIGwgKiAwLjA1LCAwKSBjIGgpIDEwMCUpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuZGlhbG9nTGFiZWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuZGlhbG9nQWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiA3cHg7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWJyYW5kLWJyaWdodCkgbWF4KGwgLSBsICogMC4xLCAwKSBjIGgpO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gIFtkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIC5jbG9zZURpYWxvZzpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2c6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pZSBbZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2c6aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZT1zaGFkZV0gLmRpYWxvZ0lubmVyIC5jbG9zZURpYWxvZy5mb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGU9c2hhZGVdIC5kaWFsb2dJbm5lciAuY2xvc2VEaWFsb2c6Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nW2Rpc2FibGVkXSwgW2RhdGEtZGlhbG9nLXN0eWxlPXNoYWRlXSAuZGlhbG9nSW5uZXIgLmNsb3NlRGlhbG9nW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbltkYXRhLWRpYWxvZy1zdHlsZV49c2lkZWJhcl0gLmRpYWxvZ0lubmVyIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cbltkYXRhLWRpYWxvZy1zdHlsZV49c2lkZWJhcl1bZGF0YS1kaWFsb2ctc3R5bGU9c2lkZWJhckxlZnRdIC5kaWFsb2dJbm5lciB7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5bZGF0YS1kaWFsb2ctc3R5bGVePXNpZGViYXJdW2RhdGEtZGlhbG9nLXN0eWxlPXNpZGViYXJSaWdodF0gLmRpYWxvZ0lubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSAwIDAgdmFyKC0tcmFkaXVzKTtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuW2RhdGEtZGlhbG9nLXN0eWxlXj1mdWxsXSAuZGlhbG9nSW5uZXIge1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4jcmV0dXJuTWVzc2FnZSAuY2xvc2VEaWFsb2cgLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1zaWRlYmFyXVtkYXRhLWRpYWxvZy1zdHlsZT1zaWRlYmFyTGVmdF0gLmRpYWxvZ0lubmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gIFtkYXRhLWRpYWxvZy1zdHlsZV49c2lkZWJhcl1bZGF0YS1kaWFsb2ctc3R5bGU9c2lkZWJhclJpZ2h0XSAuZGlhbG9nSW5uZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgW2RhdGEtZGlhbG9nLXN0eWxlPW1vZGFsXSBkaXZbcm9sZT1kaWFsb2ddLnJlcG9ydE5lZWRlZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgem9vbUluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgem9vbU91dCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBsYXllciBiYXNlIHtcbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddLnJldHVyblBhdXNlIC5iZ0ltZ1dyYXBwZXI6Zmlyc3QtY2hpbGQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1dyYXBwZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjg1cztcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1dyYXBwZXIuY3VycmVudCB7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgICB6LWluZGV4OiAxO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdXcmFwcGVyLnByZXYge1xuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdXcmFwcGVyOm50aC1jaGlsZChvZGQpIC5iZ0ltZy50cmFucyB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbjtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nV3JhcHBlcjpudGgtY2hpbGQoZXZlbikgLmJnSW1nLnRyYW5zIHtcbiAgICBhbmltYXRpb24tbmFtZTogem9vbU91dDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG4gICAgei1pbmRleDogMTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMHM7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWJnLXBvcz1jZW50ZXJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgbGVmdFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDUwJTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPVwiY2VudGVyIHJpZ2h0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgNTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJ0b3AgbGVmdFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDEwJTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwJTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPVwidG9wIHJpZ2h0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgMTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDkwJTtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgOTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIFtkYXRhLXNsaWRlc2hvdz16b29tU2xpZGVzaG93XSAuYmdJbWdbZGF0YS1hbmltYXRpb249Y2VudGVyXSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYW5pbWF0aW9uPVwidG9wIHJpZ2h0XCJdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgcmlnaHQ7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWFuaW1hdGlvbj1cInRvcCBsZWZ0XCJdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10gLmJnSW1nW2RhdGEtYW5pbWF0aW9uPVwiYm90dG9tIHJpZ2h0XCJdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gcmlnaHQ7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddIC5iZ0ltZ1tkYXRhLWFuaW1hdGlvbj1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgfVxuICAjYmFja2dyb3VuZCBbZGF0YS1zbGlkZXNob3c9em9vbVNsaWRlc2hvd10ucGF1c2VkIC5iZ0ltZ1dyYXBwZXIudHJhbnMge1xuICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG4gIH1cbiAgI2JhY2tncm91bmQgW2RhdGEtc2xpZGVzaG93PXpvb21TbGlkZXNob3ddLnBhdXNlZCAuYmdJbWcudHJhbnMge1xuICAgIGFuaW1hdGlvbi1wbGF5LXN0YXRlOiBwYXVzZWQ7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJ0b3AgbWlkZGxlXCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWdbZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJ0b3AgcmlnaHRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMCU7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJjZW50ZXIgbGVmdFwiXSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1jZW50ZXJdLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPWNlbnRlcl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIH1cbiAgI2JhY2tncm91bmQgLmJnSW1nW2RhdGEtYmctcG9zPVwiY2VudGVyIHJpZ2h0XCJdLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnW2RhdGEtYmctcG9zPVwiY2VudGVyIHJpZ2h0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWdbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSxcbiAgI2JhY2tncm91bmQgLnNlY3Rpb25CZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBsZWZ0XCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAxMDAlO1xuICB9XG4gICNiYWNrZ3JvdW5kIC5iZ0ltZ1tkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJib3R0b20gbWlkZGxlXCJdIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWdbZGF0YS1iZy1wb3M9XCJib3R0b20gcmlnaHRcIl0sXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdbZGF0YS1iZy1wb3M9XCJib3R0b20gcmlnaHRcIl0ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcbiAgfVxuICAjYmFja2dyb3VuZCB2aWRlbyB7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gIH1cbn1cbltkYXRhLWlzLWxvYWRpbmc9dHJ1ZV0gI2JhY2tncm91bmQge1xuICBvcGFjaXR5OiAwO1xufVxuXG5bZGF0YS1pcy1sb2FkaW5nPXRydWVdICNiYWNrZ3JvdW5kUGxheUJ0biB7XG4gIG9wYWNpdHk6IDAgIWltcG9ydGFudDtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0biAuaWNvbi1wbGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0biAudGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4gLnRleHQ6YmVmb3JlLCAjYmFja2dyb3VuZFBsYXlCdG4gLnRleHQ6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNiYWNrZ3JvdW5kUGxheUJ0bjpob3ZlciAuaWNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIgLnRleHQucGF1c2Uge1xuICAgIGFsbDogdW5zZXQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIgLmljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI2JhY2tncm91bmRQbGF5QnRuOmhvdmVyIC50ZXh0LnBhdXNlIHtcbiAgYWxsOiB1bnNldDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaWUgI2JhY2tncm91bmRQbGF5QnRuOmhvdmVyIC5pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5pZSAjYmFja2dyb3VuZFBsYXlCdG46aG92ZXIgLnRleHQucGF1c2Uge1xuICBhbGw6IHVuc2V0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5mb2N1cy12aXNpYmxlIC5pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5mb2N1cy12aXNpYmxlIC50ZXh0LnBhdXNlIHtcbiAgYWxsOiB1bnNldDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jYmFja2dyb3VuZFBsYXlCdG46Zm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jYmFja2dyb3VuZFBsYXlCdG46Zm9jdXMtdmlzaWJsZSAudGV4dC5wYXVzZSB7XG4gIGFsbDogdW5zZXQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjYmFja2dyb3VuZFBsYXlCdG4ucGF1c2U6aG92ZXIgLmljb24sXG4gICNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpob3ZlciAudGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAjYmFja2dyb3VuZFBsYXlCdG4ucGF1c2U6aG92ZXIgLnRleHQucGxheSB7XG4gICAgYWxsOiB1bnNldDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpob3ZlciAuaWNvbixcbltkYXRhLWJyb3dzZXI9aWVdICNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpob3ZlciAudGV4dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5bZGF0YS1icm93c2VyPWllXSAjYmFja2dyb3VuZFBsYXlCdG4ucGF1c2U6aG92ZXIgLnRleHQucGxheSB7XG4gIGFsbDogdW5zZXQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmllICNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpob3ZlciAuaWNvbixcbi5pZSAjYmFja2dyb3VuZFBsYXlCdG4ucGF1c2U6aG92ZXIgLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmllICNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpob3ZlciAudGV4dC5wbGF5IHtcbiAgYWxsOiB1bnNldDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jYmFja2dyb3VuZFBsYXlCdG4ucGF1c2UuZm9jdXMtdmlzaWJsZSAuaWNvbixcbiNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZS5mb2N1cy12aXNpYmxlIC50ZXh0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZS5mb2N1cy12aXNpYmxlIC50ZXh0LnBsYXkge1xuICBhbGw6IHVuc2V0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZTpmb2N1cy12aXNpYmxlIC5pY29uLFxuI2JhY2tncm91bmRQbGF5QnRuLnBhdXNlOmZvY3VzLXZpc2libGUgLnRleHQge1xuICBkaXNwbGF5OiBub25lO1xufVxuI2JhY2tncm91bmRQbGF5QnRuLnBhdXNlOmZvY3VzLXZpc2libGUgLnRleHQucGxheSB7XG4gIGFsbDogdW5zZXQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI2JhY2tncm91bmRQbGF5QnRuLnBhdXNlIC5pY29uLXBsYXkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNiYWNrZ3JvdW5kUGxheUJ0bi5wYXVzZSAuaWNvbi1wYXVzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbjpyb290IHtcbiAgLS1iZy1vZmZzZXQ6IDUwMHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICA6cm9vdCB7XG4gICAgLS1iZy1vZmZzZXQ6IDQwMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWJnLW9mZnNldDogMzAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDcwcHgpIHtcbiAgOnJvb3Qge1xuICAgIC0tYmctb2Zmc2V0OiAyMDBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWJnLW9mZnNldDogMHB4O1xuICB9XG59XG5cbkBwcm9wZXJ0eSAtLXAxIHtcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xuICBpbmhlcml0czogdHJ1ZTtcbiAgaW5pdGlhbC12YWx1ZTogMCU7XG59XG5AcHJvcGVydHkgLS1wMiB7XG4gIHN5bnRheDogXCI8cGVyY2VudGFnZT5cIjtcbiAgaW5oZXJpdHM6IHRydWU7XG4gIGluaXRpYWwtdmFsdWU6IDAlO1xufVxuQHByb3BlcnR5IC0tcDMge1xuICBzeW50YXg6IFwiPHBlcmNlbnRhZ2U+XCI7XG4gIGluaGVyaXRzOiB0cnVlO1xuICBpbml0aWFsLXZhbHVlOiAwJTtcbn1cbkBwcm9wZXJ0eSAtLXA0IHtcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xuICBpbmhlcml0czogdHJ1ZTtcbiAgaW5pdGlhbC12YWx1ZTogMCU7XG59XG5AcHJvcGVydHkgLS1vMSB7XG4gIHN5bnRheDogXCI8bnVtYmVyPlwiO1xuICBpbmhlcml0czogdHJ1ZTtcbiAgaW5pdGlhbC12YWx1ZTogMTtcbn1cbkBwcm9wZXJ0eSAtLW8yIHtcbiAgc3ludGF4OiBcIjxudW1iZXI+XCI7XG4gIGluaGVyaXRzOiB0cnVlO1xuICBpbml0aWFsLXZhbHVlOiAxO1xufVxuQHByb3BlcnR5IC0tbzMge1xuICBzeW50YXg6IFwiPG51bWJlcj5cIjtcbiAgaW5oZXJpdHM6IHRydWU7XG4gIGluaXRpYWwtdmFsdWU6IDE7XG59XG5AcHJvcGVydHkgLS1vNCB7XG4gIHN5bnRheDogXCI8bnVtYmVyPlwiO1xuICBpbmhlcml0czogdHJ1ZTtcbiAgaW5pdGlhbC12YWx1ZTogMTtcbn1cbiNiYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDB2dztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zO1xuICB3aWR0aDogMTAwJTtcbn1cbiNiYWNrZ3JvdW5kID4gKiB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzNTBweCk7XG59XG4jYmFja2dyb3VuZCAuY292ZXItc2xpZGVyLFxuI2JhY2tncm91bmQgdmlkZW8sXG4jYmFja2dyb3VuZCAubWFpbkJnSW1nIHtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbn1cbiNiYWNrZ3JvdW5kIC5zZWN0aW9uQmdIb2xkZXIge1xuICB6LWluZGV4OiAxO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xufVxuLm1lbnVPdXQgI2JhY2tncm91bmQgLnNlY3Rpb25CZ0hvbGRlciB7XG4gIHotaW5kZXg6IDM7XG59XG4jYmFja2dyb3VuZCAuc2VjdGlvbkJnSG9sZGVyW2RhdGEtc2VjdGlvbi1iZy1vbmx5PXRydWVdIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xufVxuLmluU2VjdGlvbiAjYmFja2dyb3VuZCAuc2VjdGlvbkJnSG9sZGVyW2RhdGEtc2VjdGlvbi1iZy1vbmx5PXRydWVdIHtcbiAgb3BhY2l0eTogMTtcbn1cbiNiYWNrZ3JvdW5kIC5jb3Zlci1zbGlkZXIgLmJnSW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4jYmFja2dyb3VuZCAuYmdJbWcsXG4jYmFja2dyb3VuZCAuc2VjdGlvbkJnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSB2YXIoLS1iZy1vZmZzZXQpKTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuI2JhY2tncm91bmQgdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbiNiYWNrZ3JvdW5kLm1vdmUge1xuICB0b3A6IDA7XG4gIGhlaWdodDogMzB2aDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIDUwMG1zO1xuICBmaWx0ZXI6IGJsdXIoMnB4KTtcbn1cbiNiYWNrZ3JvdW5kLm1vdmUgdmlkZW8sXG4jYmFja2dyb3VuZC5tb3ZlIC5iZ0ltZyxcbiNiYWNrZ3JvdW5kLm1vdmUgLnNlY3Rpb25CZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuI2JhY2tncm91bmQubW92ZTphZnRlciB7XG4gIC0tcDE6IDUwJTtcbiAgLS1wMjogNTAlO1xuICAtLXAzOiA1MCU7XG4gIC0tcDQ6IDEwMCU7XG4gIC0tbzE6IDE7XG4gIC0tbzI6IDE7XG4gIC0tbzM6IDE7XG4gIC0tbzQ6IDAuMjtcbn1cbltkYXRhLXNsaWRlPWNlbnRlcmVkXS5tZW51T3V0ICNiYWNrZ3JvdW5kOmFmdGVyLCBbZGF0YS1zbGlkZT1mdWxsXS5tZW51T3V0ICNiYWNrZ3JvdW5kOmFmdGVyIHtcbiAgLS1wMTogMCU7XG4gIC0tcDI6IDQwJTtcbiAgLS1wMzogNzAlO1xuICAtLXA0OiAxMDAlO1xuICAtLW8xOiAwLjk7XG4gIC0tbzI6IDE7XG4gIC0tbzM6IDE7XG4gIC0tbzQ6IDAuOTtcbn1cbltkYXRhLXNsaWRlPWZyYW1lXS5tZW51T3V0ICNiYWNrZ3JvdW5kOmFmdGVyIHtcbiAgLS1wMTogMCU7XG4gIC0tcDI6IDQwJTtcbiAgLS1wMzogNzAlO1xuICAtLXA0OiAxMDAlO1xuICAtLW8xOiAwLjg1O1xuICAtLW8yOiAwLjk7XG4gIC0tbzM6IDAuOTtcbiAgLS1vNDogMC44NTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEwNTBweCkge1xuICAjYmFja2dyb3VuZDphZnRlciB7XG4gICAgLS1wMTogMCU7XG4gICAgLS1wMjogMjAlO1xuICAgIC0tcDM6IDU1JTtcbiAgICAtLXA0OiAxMDAlO1xuICAgIC0tbzE6IDA7XG4gICAgLS1vMjogMDtcbiAgICAtLW8zOiAwLjk1O1xuICAgIC0tbzQ6IDE7XG4gIH1cbiAgLm1lbnVPdXQgI2JhY2tncm91bmQ6YWZ0ZXIge1xuICAgIC0tcDE6IDAlO1xuICAgIC0tcDI6IDQwJTtcbiAgICAtLXAzOiA3MCU7XG4gICAgLS1wNDogMTAwJTtcbiAgICAtLW8xOiAwLjk7XG4gICAgLS1vMjogMTtcbiAgICAtLW8zOiAxO1xuICAgIC0tbzQ6IDAuOTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gICNiYWNrZ3JvdW5kIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbiAgI2JhY2tncm91bmQgLmNvdmVyLXNsaWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnVPdXQgI2JhY2tncm91bmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI2JhY2tncm91bmQ6YWZ0ZXIge1xuICAgIC0tcDE6IDAlO1xuICAgIC0tcDI6IDIwJTtcbiAgICAtLXAzOiA1NSU7XG4gICAgLS1wNDogMTAwJTtcbiAgICAtLW8xOiAwO1xuICAgIC0tbzI6IDA7XG4gICAgLS1vMzogMC45NTtcbiAgICAtLW80OiAxO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xuICAjYmFja2dyb3VuZDphZnRlciB7XG4gICAgLS1wMTogMCU7XG4gICAgLS1wMjogMjAlO1xuICAgIC0tcDM6IDEwMCU7XG4gICAgLS1wNDogMTAwJTtcbiAgICAtLW8xOiAwO1xuICAgIC0tbzI6IDE7XG4gICAgLS1vMzogMTtcbiAgICAtLW80OiAxO1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0b3A6IG1heCgxMDBweCwgMjV2aCk7XG4gICAgaGVpZ2h0OiBtYXgoMTAwJSAtIDEwMHB4LCAxMDAlIC0gNTB2aCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0KSBjYWxjKHZhcigtLW8xKSAqIDEwMCUpLCB0cmFuc3BhcmVudCkgdmFyKC0tcDEpLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQpIGNhbGModmFyKC0tbzIpICogMTAwJSksIHRyYW5zcGFyZW50KSB2YXIoLS1wMiksIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1saWdodCkgY2FsYyh2YXIoLS1vMykgKiAxMDAlKSwgdHJhbnNwYXJlbnQpIHZhcigtLXAzKSwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0KSBjYWxjKHZhcigtLW80KSAqIDEwMCUpLCB0cmFuc3BhcmVudCkgdmFyKC0tcDQpKTtcbiAgfVxuICAjYmFja2dyb3VuZCAuYmdJbWcsXG4gICNiYWNrZ3JvdW5kIC5zZWN0aW9uQmcsXG4gICNiYWNrZ3JvdW5kIHZpZGVvLFxuICAjYmFja2dyb3VuZCAubWFpbkJnSW1nLFxuICAjYmFja2dyb3VuZCAuc2VjdGlvbkJnSG9sZGVyIHtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSB7XG4gICNiYWNrZ3JvdW5kUGxheUJ0biB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gIH1cbn1cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XG59XG5cbi5idWZmZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDEyMDtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDU1cHgpO1xufVxuXG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW8ge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMzUwcHgpO1xufVxuXG5mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTVweDtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICB6LWluZGV4OiA5OTk5O1xufVxuZm9vdGVyIC5hZGdMb2dvV3JhcCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICBmb290ZXIgLmFkZ0xvZ29XcmFwIGE6aG92ZXIge1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIGZvb3RlciAuYWRnTG9nb1dyYXAgYTpob3ZlciB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmFzaWMpO1xufVxuLmllIGZvb3RlciAuYWRnTG9nb1dyYXAgYTpob3ZlciB7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmFzaWMpO1xufVxuZm9vdGVyIC5hZGdMb2dvV3JhcCBhOmZvY3VzIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG59XG5mb290ZXIgLmFkZ0xvZ29XcmFwIC5hZGdMb2dvIHtcbiAgaGVpZ2h0OiAzOHB4O1xuICB3aWR0aDogYXV0bztcbn1cblxuLnNvY2lhbE1lZGlhIHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhVGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ2FwOiAxMHB4O1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAuZmFjZWJvb2tMb2dpbiB7XG4gIGJhY2tncm91bmQ6IHJnYig4LCAxMDIsIDI1NSkgIWltcG9ydGFudDtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zIC5nb29nbGVMb2dpbiB7XG4gIGJhY2tncm91bmQ6ICNlYmViZWMgIWltcG9ydGFudDtcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zIC50d2l0dGVyTG9naW4ge1xuICBiYWNrZ3JvdW5kOiAjMTQxNzFhICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyAudHdpdHRlckxvZ2luIC50ZXh0IHtcbiAgYm9yZGVyOiAwO1xuICBjbGlwLXBhdGg6IHJlY3QoMCAwIDAgMCk7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46IC0xcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDFweDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgLmFwcGxlTG9naW4ge1xuICBiYWNrZ3JvdW5kOiBibGFjayAhaW1wb3J0YW50O1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgPiBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBoZWlnaHQ6IDUwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMWVtICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMHB4O1xufVxuLnNvY2lhbE1lZGlhIC5zb2NpYWxNZWRpYUxvZ2lucyA+IGEgLnN2Z0ljb24ge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDdweDtcbn1cbi5zb2NpYWxNZWRpYSAuc29jaWFsTWVkaWFMb2dpbnMgPiBhIC50ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zIC5hcHBsZUxvZ2luIHtcbiAgaGVpZ2h0OiA0NXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc29jaWFsTWVkaWEgLnNvY2lhbE1lZGlhTG9naW5zIC5hcHBsZUxvZ2luID4gZGl2IHtcbiAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG5cbi8qLmxvZ2luV3JhcHBlcltkYXRhLWhpZGRlbi1mb3ItZ3Vlc3Q9XCJ0cnVlXCJdIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufSovXG4uZ3Vlc3RXcmFwcGVySG9sZGVyIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogYWxsIDgwMG1zO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4uZmllbGRXcmFwcGVyLmVucm9sbGVlTmFtZSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLmZpZWxkV3JhcHBlci5waG9uZSAjUGhvbmVOdW1iZXIge1xuICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG59XG4uZmllbGRXcmFwcGVyLnBob25lIC5pdGkge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6IHZhcigtLWJhc2ljKTtcbn1cbi5maWVsZFdyYXBwZXIucGhvbmUgLml0aSAuaXRpX19jb3VudHJ5LWNvbnRhaW5lciB7XG4gIHRvcDogMThweDtcbiAgYm90dG9tOiAxcHg7XG59XG4uZmllbGRXcmFwcGVyLnBob25lIC5pdGkgLml0aV9fc2VsZWN0ZWQtY291bnRyeSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cykgMCAwIHZhcigtLXJhZGl1cyk7XG59XG4uZmllbGRXcmFwcGVyLnBob25lIC5pdGkgLml0aV9fZHJvcGRvd24tY29udGVudCB7XG4gIHotaW5kZXg6IDM7XG59XG5cbjpyb290IHtcbiAgLS1pdGktcGF0aC1mbGFncy0xeDogdXJsKFwiL0ltYWdlcy9mbGFncy5wbmdcIik7XG4gIC0taXRpLXBhdGgtZmxhZ3MtMng6IHVybChcIi9JbWFnZXMvZmxhZ3NAMngucG5nXCIpO1xuICAtLWl0aS1wYXRoLWdsb2JlLTF4OiB1cmwoXCIvSW1hZ2VzL2dsb2JlLnBuZ1wiKTtcbiAgLS1pdGktcGF0aC1nbG9iZS0yeDogdXJsKFwiL0ltYWdlcy9nbG9iZUAyeC5wbmdcIik7XG59XG5cbjpyb290IHtcbiAgLS1sb2dpbi13OiA2MDBweDtcbiAgLS1sb2dpbi1oZWFkZXItaGVpZ2h0OiAxNTVweDtcbn1cblxuLm1lbWJlcnNoaXBCdWZmZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMHB4IDVweCByZ2JhKDAsIDAsIDAsIDAuMzUpKTtcbn1cblxuI2JhY2tncm91bmQge1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwdmg7XG59XG5cbiNiYWNrZ3JvdW5kUGxheUJ0biB7XG4gIHRvcDogYXV0bztcbiAgYm90dG9tOiAxMHB4O1xufVxuXG4ubG9naW5UZWFzZXJWaWRlbyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgbGVmdDogNTBweDtcbiAgcmlnaHQ6IDY4MHB4O1xuICB6LWluZGV4OiA5OTtcbn1cbi5sb2dpblRlYXNlclZpZGVvIC52aWRlb0hvbGRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiA1Ni4yNSUgMCAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKSB1cmwoXCIvaW1hZ2VzL2xvYWQtc2NyZWVuLmpwZ1wiKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4ubG9naW5UZWFzZXJWaWRlbyAudmlkZW9Ib2xkZXJbZGF0YS12aW1lby1pbml0aWFsaXplZF0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XG59XG4ubG9naW5UZWFzZXJWaWRlbyAudmlkZW9Ib2xkZXIgLnBsYXllcixcbi5sb2dpblRlYXNlclZpZGVvIC52aWRlb0hvbGRlciBpZnJhbWUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyOiAwO1xufVxuXG5oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtaW4taGVpZ2h0OiB2YXIoLS1sb2dpbi1oZWFkZXItaGVpZ2h0KTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogdmFyKC0tbG9naW4tdyk7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItYm90dG9tOiAyMHB4IHNvbGlkIHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0LWNvbnRyYXN0KTtcbiAgcGFkZGluZzogMjVweCAwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDAgMDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmhlYWRlciAuYnJhbmRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZmxleC1ncm93OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDBweCAxMHB4O1xufVxuaGVhZGVyIC5sb2dvV3JhcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBtYXgtd2lkdGg6IDMxNXB4O1xuICBoZWlnaHQ6IDcwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyIC5sb2dvV3JhcCAubG9nbyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbn1cbmhlYWRlciAub3JpZW50YXRpb25UaXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNtZW1iZXJzaGlwIHtcbiAgLS1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgLS1mb2N1cy1zaGFkb3ctY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgbWF4LXdpZHRoOiB2YXIoLS1sb2dpbi13KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgcGFkZGluZzogNDBweCAyNXB4IDYwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cyk7XG59XG4jbWVtYmVyc2hpcCAudGl0bGVBcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDI1cHg7XG59XG4jbWVtYmVyc2hpcCAudGl0bGVBcmVhLmFjY291bnRQcm9maWxlciBoMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xufVxuI21lbWJlcnNoaXAgLmVycm9yTWVzc2FnZSxcbiNtZW1iZXJzaGlwIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdyb25nKTtcbiAgY29sb3I6IHZhcigtLXdyb25nLWNvbnRyYXN0KTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgbWFyZ2luOiAycHggYXV0byAxMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBib3JkZXI6IDFweCBzb2xpZCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQpIGNhbGMoMC40ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbn1cbiNtZW1iZXJzaGlwIC5sb2dpbk5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWxpZ2h0KSBjYWxjKDAuMyAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuI21lbWJlcnNoaXAgLmxvZ2luTmF2IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDVweDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uaWUgI21lbWJlcnNoaXAgLmxvZ2luTmF2IGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4jbWVtYmVyc2hpcCAubG9naW5OYXYgYTpmb2N1cyB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cbiNtZW1iZXJzaGlwIC5sb2dpbk5hdiA+ICoge1xuICBtYXJnaW46IDAgNXB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBzdXBwb3J0cyAoYXBwZWFyYW5jZTogbm9uZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IDFlbTtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1jaGVja2JveF06YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgYm9yZGVyLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQtZGFyaykgY2FsYygwLjcgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1jaGVja2JveF06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgICBtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7YmFzZTY0LFBITjJaeUI0Yld4dWN6MGlhSFIwY0RvdkwzZDNkeTUzTXk1dmNtY3ZNakF3TUM5emRtY2lJSFpwWlhkQ2IzZzkgSWpBZ01DQXpNVFl1TXpnZ01qVXdMallpUGp4d1lYUm9JR1E5SWswM01DNDBJREl4T1M0NFl6UXVOVFVnTkM0NCBOeUE1TGpJeUlEa3VOamNnTVRRdU1USWdNVFF1TVRrZ015NDNOU0F6TGpRM0lEY3VOekVnTmk0NE5TQXhNUzQ1IE15QTVMamMwSURVdU5TQXpMamM0SURFeExqa3lJRGN1TURnZ01UZ3VOemdnTmk0NE5TQTJMalkyTFM0eU15QXggTWk0M055MHpMamN6SURFM0xqazNMVGN1TmpJZ09DNDJMVFl1TkRJZ01UWXVOamN0TVRVdU1UY2dNak11T0RRdCBNak11TVRSTU16QTFMalk0SURVMExqWTVZemN1TWkwNElERXhMamM1TFRFNExqSTFJREV3TGpRM0xUSTVMakUzIExURXVNRFF0T0M0MU9TMDFMamN4TFRFMkxqVTFMVEV6TGpBeExUSXhMakk1TFRVdU5qVXRNeTQyTnkweE1pNHkgTmkwMExqazRMVEU0TGprdE15NDRNaTA0TGprZ01TNDFOaTB4Tmk0MU5DQTNMakl5TFRJeUxqUTRJREV6TGpjNCBMVFE0TGpNMElEVXpMak15TFRrMkxqVTVJREV3Tmk0M01TMHhORFF1T0RVZ01UWXdMakV4YkMwekxqRTVJRE11IE5UTXROakF1TkMwMk5pNDJNMk10T0M0ME1pMDVMakk1TFRFNUxqY3RNVE11T1RRdE16RXVPVEl0T1M0MU55MDAgTGpjeUlERXVOamt0T0M0NU9TQTBMalU0TFRFeUxqUTFJRGd1TVRrdE15NDROaUEwTGpBMExUWXVOemdnT1M0dyBOaTA0TGpFeklERTBMalE1TFRJdU16RWdPUzR5Tnk0eklERTRMakEzSURZdU5qSWdNalV1TVROc05qSXVPVFVnIE56QXVNelZhSWlCemRIbHNaVDBpWm1sc2JDMXlkV3hsT21WMlpXNXZaR1FpTHo0OEwzTjJaejRLXCIpO1xuICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgbWFzay1zaXplOiA2MCU7XG4gICAgbWFzay1wb3NpdGlvbjogNTAlIDUwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkOmFmdGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF0ge1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCBpbnB1dFt0eXBlPWNoZWNrYm94XVtkaXNhYmxlZF06YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmFzaWMpIGNhbGMoMC44ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbiAgfVxufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9Y2hlY2tib3hdIH4gbGFiZWwsXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb10gfiBsYWJlbCB7XG4gIHBhZGRpbmctbGVmdDogMC4zNWVtO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbkBzdXBwb3J0cyAoYXBwZWFyYW5jZTogbm9uZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgd2lkdGg6IDFlbTtcbiAgICBoZWlnaHQ6IDFlbTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb106YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxZW07XG4gICAgaGVpZ2h0OiAxZW07XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICBib3JkZXItY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1icmFuZC1kYXJrKSBjYWxjKDAuNyAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcztcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb106YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwIGlucHV0W3R5cGU9cmFkaW9dOmNoZWNrZWQ6YmVmb3JlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb106Y2hlY2tlZDphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgd2lkdGg6IDAuNDVlbTtcbiAgICBoZWlnaHQ6IDAuNDVlbTtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAgaW5wdXRbdHlwZT1yYWRpb11bZGlzYWJsZWRdOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1iYXNpYykgbWluKGwgKyBsICogMC43NSwgMSkgYyBoKTtcbiAgfVxufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIC5zdHlsZWRGaWVsZHNldCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwIC5zdHlsZWRGaWVsZHNldCBsZWdlbmQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXNtKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5zdGF0dXNNZXNzYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmxhY2spO1xuICBjb2xvcjogdmFyKC0tYmxhY2stY29udHJhc3QpO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDEwcHggYXV0bztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuaG9yekRpdmlkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwcHggMCAwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAuaG9yekRpdmlkZXIgLm9yIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWlubGluZTogMTVweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHRyYW5zbGF0ZTogMCAyMHB4O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5sb2dpbldyYXBwZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgcGFkZGluZzogMjBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sb2dpbiAubG9naW5XcmFwcGVyIC5maWVsZFdyYXBwZXIge1xuICBtaW4td2lkdGg6IDI4MHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5sb2dpbldyYXBwZXIgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxvZ2luIC5sb2dpbldyYXBwZXIgaDMge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gIC0tZ3JhcGhpYzogNzVweDtcbiAgLS1ndWVzdC1ncmFwaGljOiA2MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBnYXA6IDI1cHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDQ1MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMHB4IDI1cHggMCAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBwYWRkaW5nOiAxMHB4O1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgc2NhbGU6IDAgMC4yNTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCUgNTAlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2lyY2xlKTtcbiAgdHJhbnNpdGlvbjogYWxsIDUwMG1zIHZhcigtLXRpbWluZy1zbW9vdGgtc20pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aGFzKC5pbWFnZSkge1xuICAtLWdyYXBoaWM6IDkwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYTpoYXMoLmltYWdlKSAuaW1hZ2Uge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmhhcyguaW1hZ2UpIC5pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC50ZXh0IHtcbiAgZm9udC1zaXplOiAxLjhlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xuICB0cmFuc2l0aW9uOiBjb2xvciAzMDBtcztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC5ncmFwaGljSG9sZGVyIHtcbiAgbWluLXdpZHRoOiB2YXIoLS1ncmFwaGljKTtcbiAgd2lkdGg6IHZhcigtLWdyYXBoaWMpO1xuICBhc3BlY3QtcmF0aW86IDEvMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAzO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEgLmdyYXBoaWNIb2xkZXIgLmljb24sXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYSAuZ3JhcGhpY0hvbGRlciAuaW1hZ2Uge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2lyY2xlKTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYSAuaWNvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBmb250LXNpemU6IDIuOGVtO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctc21vb3RoLXNtKSwgY29sb3IgMzAwbXM7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYSAuaWNvbjpiZWZvcmUge1xuICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgY29udGVudDogXCJrXCI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIC5pY29uOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBpbnNldDogMDtcbiAgc2NhbGU6IDAgMC4yNTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWNpcmNsZSk7XG4gIHRyYW5zaXRpb246IGFsbCA1MDBtcyB2YXIoLS10aW1pbmctc21vb3RoLXNtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhLmVucm9sbGVlTG9naW5CdG4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAuZ3JhcGhpY0hvbGRlciB7XG4gIHRyYW5zbGF0ZTogLTIwcHggMHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biAuaWNvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5lbnJvbGxlZUxvZ2luQnRuIC5pY29uOmJlZm9yZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbnRlbnQ6IFwiQ1wiO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0biB7XG4gIC0tZ3JhcGhpYzogdmFyKC0tZ3Vlc3QtZ3JhcGhpYyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIGdhcDogMTBweDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0biAuZ3JhcGhpY0hvbGRlciB7XG4gIG1pbi13aWR0aDogdmFyKC0tZ3Vlc3QtZ3JhcGhpYyk7XG4gIHdpZHRoOiB2YXIoLS1ndWVzdC1ncmFwaGljKTtcbiAgdHJhbnNsYXRlOiAtMjBweCAwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC50ZXh0IHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgdHJhbnNsYXRlOiAtMTBweCAwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5ndWVzdExvZ2luQnRuIC5pY29uIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgZm9udC1zaXplOiAyLjVlbTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXIgLmljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICAgIHNjYWxlOiAxLjE7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXIgLmljb246YWZ0ZXIge1xuICAgIHNjYWxlOiAxIDE7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXIgLnRleHQge1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmhvdmVyOmFmdGVyIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICAgIHNjYWxlOiAxIDE7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmhvdmVyIC5pY29uIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHNjYWxlOiAxLjE7XG59XG5bZGF0YS1icm93c2VyPWllXSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYTpob3ZlciAuaWNvbjphZnRlciB7XG4gIHNjYWxlOiAxIDE7XG59XG5bZGF0YS1icm93c2VyPWllXSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYTpob3ZlciAudGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXI6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBzY2FsZTogMSAxO1xufVxuLmllICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmhvdmVyIC5pY29uIHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHNjYWxlOiAxLjE7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXIgLmljb246YWZ0ZXIge1xuICBzY2FsZTogMSAxO1xufVxuLmllICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmhvdmVyIC50ZXh0IHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6aG92ZXI6YWZ0ZXIge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBzY2FsZTogMSAxO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICBzY2FsZTogMS4xO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZm9jdXMtdmlzaWJsZSAuaWNvbjphZnRlciB7XG4gIHNjYWxlOiAxIDE7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5mb2N1cy12aXNpYmxlIC50ZXh0IHtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMgYS5mb2N1cy12aXNpYmxlOmFmdGVyIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcbiAgc2NhbGU6IDEgMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmZvY3VzLXZpc2libGUgLmljb24ge1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbiAgc2NhbGU6IDEuMTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhOmZvY3VzLXZpc2libGUgLmljb246YWZ0ZXIge1xuICBzY2FsZTogMSAxO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6Zm9jdXMtdmlzaWJsZSAudGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGE6Zm9jdXMtdmlzaWJsZTphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIHNjYWxlOiAxIDE7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnByb2ZpbGVTZXR0aW5nc0V4cGxhaW5lcixcbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnByb2ZpbGVFcnJvcldyYXAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5lcnJvck1lc3NhZ2UgbGkge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5pbnN0cnVjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLmFjY29yZGlvbldyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5zdHlsZWRGaWVsZHNldCB7XG4gIGZvbnQtc2l6ZTogMC45ZW07XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxOHB4O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAuc3R5bGVkRmllbGRzZXQgLmNvbnRyb2xXcmFwcGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAuc3R5bGVkRmllbGRzZXQgLmNvbnRyb2xXcmFwcGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5zdHlsZWRGaWVsZHNldC5waG9uZSAuZmllbGRXcmFwcGVyIHtcbiAgbWFyZ2luOiAxMHB4IDAgMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5zdHlsZWRGaWVsZHNldC5waG9uZSAuY29udHJvbFdyYXBwZXIgLmNvbnRyb2wge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAuYnV0dG9uSG9sZGVyIHtcbiAgbWFyZ2luOiAyMHB4IDAgMjBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnJlc2V0QWNjb3VudFR5cGVCdG4ge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBmb250LXNpemU6IDAuOGVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdHJhbnNpdGlvbjogMjAwbXM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1saWdodCk7XG4gIHBhZGRpbmc6IDJweDtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0bjpob3ZlciB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnJlc2V0QWNjb3VudFR5cGVCdG46aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuLmllICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnJlc2V0QWNjb3VudFR5cGVCdG46aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAucmVzZXRBY2NvdW50VHlwZUJ0bi5mb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5hY2NvdW50UHJvZmlsZXIgLnJlc2V0QWNjb3VudFR5cGVCdG46Zm9jdXMtdmlzaWJsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAuYWNjb3VudFByb2ZpbGVyIC5hY2NvcmRpb25Nb2R1bGUgLmFjY29yZGlvblRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tbGlnaHQtY29udHJhc3QpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciAuYWNjb3JkaW9uTW9kdWxlIC5hY2NvcmRpb25UaXRsZSAuaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiAuZmllbGRXcmFwcGVyIHtcbiAgbWFyZ2luOiAwIDEwcHggMCAwO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtZGFyaykgbWF4KGwgLSBsICogMC4xLCAwKSBjIGgpO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbiAuaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24gYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5pZSAjbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24gYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yIC5zaW5nbGVGaWVsZFN1Ym1pc3Npb24gYnV0dG9uLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIGJ1dHRvbltkaXNhYmxlZF0sICNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgLnNpbmdsZUZpZWxkU3VibWlzc2lvbiBidXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtZGFyaykgbWF4KGwgLSBsICogMC4xLCAwKSBjIGgpO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjVlbTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcCAuaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25BcHA6aG92ZXIge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICAgIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaWUgI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25BcHAuZm9jdXMtdmlzaWJsZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uQXBwOmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcFtkaXNhYmxlZF0sICNtZW1iZXJzaGlwIC5mb3JtV3JhcC50d29GYWN0b3IgI1RGQUJ1dHRvbkFwcFthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLnR3b0ZhY3RvciAjVEZBQnV0dG9uRW1haWwsXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNPVFBCdXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMCA1cHg7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNURkFCdXR0b25FbWFpbFtkYXRhLXdhaXQtYS1mZXc9dHJ1ZV0sXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAudHdvRmFjdG9yICNPVFBCdXR0b25bZGF0YS13YWl0LWEtZmV3PXRydWVdIHtcbiAgb3BhY2l0eTogMC42O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG59XG4jbWVtYmVyc2hpcCAuYnV0dG9uSG9sZGVyIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtZGFyaykgbWF4KGwgLSBsICogMC4xLCAwKSBjIGgpO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaWUgI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNtZW1iZXJzaGlwIC5idXR0b25Ib2xkZXIgYnV0dG9uW2Rpc2FibGVkXSwgI21lbWJlcnNoaXAgLmJ1dHRvbkhvbGRlciBidXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbiNtZW1iZXJzaGlwIC5zdHlsZWRGaWVsZHNldCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4jbWVtYmVyc2hpcCAuc3R5bGVkRmllbGRzZXQgLmdyb3VwTGVnZW5kIHtcbiAgcGFkZGluZzogNHB4IDJweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci13aWR0aDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0tYnJhbmQtZGFyaykgbWF4KGwgLSBsICogMC4xLCAwKSBjIGgpO1xuICBsaW5lLWhlaWdodDogMS4xZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZyAuaWNvbiB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAuc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZzpob3ZlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gICAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG5bZGF0YS1icm93c2VyPWllXSAuc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZzpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmllIC5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZy5mb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZzpmb2N1cy12aXNpYmxlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZ1tkaXNhYmxlZF0sIC5zaW1wbGVEaWFsb2cgLmNsb3NlRGlhbG9nW2FyaWEtZGlzYWJsZWQ9dHJ1ZV0ge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uc2ltcGxlRGlhbG9nIC5jbG9zZURpYWxvZyAuaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNyZXNldERhdGEgYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1icmFuZC1kYXJrKSBtYXgobCAtIGwgKiAwLjEsIDApIGMgaCk7XG4gIGxpbmUtaGVpZ2h0OiAxLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBvdXRsaW5lLW9mZnNldDogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNyZXNldERhdGEgYnV0dG9uIC5pY29uIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gICNyZXNldERhdGEgYnV0dG9uOmhvdmVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gICAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgICBib3JkZXItY29sb3I6IG9rbGNoKGZyb20gdmFyKC0taG92ZXIpIG1pbihsICsgbCAqIDAuMiwgMSkgYyBoKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdICNyZXNldERhdGEgYnV0dG9uOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogb2tsY2goZnJvbSB2YXIoLS1ob3ZlcikgbWluKGwgKyBsICogMC4yLCAxKSBjIGgpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaWUgI3Jlc2V0RGF0YSBidXR0b246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNyZXNldERhdGEgYnV0dG9uLmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNyZXNldERhdGEgYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWNvbG9yOiBva2xjaChmcm9tIHZhcigtLWhvdmVyKSBtaW4obCArIGwgKiAwLjIsIDEpIGMgaCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbiNyZXNldERhdGEgYnV0dG9uW2Rpc2FibGVkXSwgI3Jlc2V0RGF0YSBidXR0b25bYXJpYS1kaXNhYmxlZD10cnVlXSB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDEyODBweCkge1xuICAubG9naW5UZWFzZXJWaWRlbyB7XG4gICAgbGVmdDogMjBweDtcbiAgICByaWdodDogNjUwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMDUwcHgpIHtcbiAgLmxvZ2luVGVhc2VyVmlkZW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIHRvcDogYXV0bztcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCA2cHggMTVweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIDpyb290IHtcbiAgICAtLWxvZ2luLXc6IDU1MHB4O1xuICB9XG4gIC5tZW1iZXJzaGlwQnVmZmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICB9XG4gICNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyB7XG4gICAgaGVpZ2h0OiA3MHZoO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gICNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuYmdJbWcsXG4gICNiYWNrZ3JvdW5kLm1lbWJlcnNoaXBCZyAuc2VjdGlvbkJnLFxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcgdmlkZW8ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmc6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogNjAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQpIGNhbGMoMCAqIDEwMCUpLCB0cmFuc3BhcmVudCksIHZhcigtLWxpZ2h0KSk7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xuICAjcmVzZXREYXRhIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG4gIGJvZHk6YWZ0ZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuICBoZWFkZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAjbWVtYmVyc2hpcCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gICAgcGFkZGluZzogMHB4IDI1cHggMCAyNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyBhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZ3Vlc3RMb2dpbkJ0biwgI21lbWJlcnNoaXAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIC5idXR0b25zIGEuZW5yb2xsZWVMb2dpbkJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1MjBweCkge1xuICAubWVtYmVyc2hpcEJ1ZmZlciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxOHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4cHg7XG4gIH1cbiAgI21lbWJlcnNoaXAge1xuICAgIHBhZGRpbmc6IDIwcHggMTJweCA2MHB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcCB7XG4gICAgcGFkZGluZzogNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSAuYnV0dG9ucyB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICBnYXA6IDE1cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0NTBweCkge1xuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMge1xuICAgIC0tZ3JhcGhpYzogNjVweDtcbiAgICAtLWd1ZXN0LWdyYXBoaWM6IDUycHg7XG4gICAgZm9udC1zaXplOiAwLjdlbTtcbiAgfVxufVxuLnJ0ZSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnJ0ZSBoNCxcbi5ydGUgaDUge1xuICBtYXJnaW46IDAuOGVtIDAgMC41ZW07XG59XG4ucnRlID4gKjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbn1cbi5ydGUgPiAqOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4ucnRlIGEuZm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCBibGFjayAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4ucnRlIGE6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCBibGFjayAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4ucnRlIGE6aGFzKGltZykge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4ucnRlIGE6aGFzKGltZykgLmljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICByaWdodDogM3B4O1xuICBwYWRkaW5nOiA2cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG59XG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG4gIC5ydGUgYTpoYXMoaW1nKTpob3ZlciAuaWNvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIC5ydGUgYTpoYXMoaW1nKTpob3ZlciAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbi5pZSAucnRlIGE6aGFzKGltZyk6aG92ZXIgLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1ob3Zlci1jb250cmFzdCk7XG59XG4ucnRlIGE6aGFzKGltZykuZm9jdXMtdmlzaWJsZSAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWhvdmVyLWNvbnRyYXN0KTtcbn1cbi5ydGUgYTpoYXMoaW1nKTpmb2N1cy12aXNpYmxlIC5pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xufVxuLnJ0ZSBpZnJhbWUge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSA4MHB4KTtcbiAgbWF4LWhlaWdodDogY2FsYygoMTAwdncgLSA4MHB4KSAvIDEuNzc3OCk7IC8qIDE2OjkgKi9cbn1cbi5ydGUgaW1nIHtcbiAgbWFyZ2luOiAxMHB4O1xufVxuLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0XCJdIHtcbiAgbWFyZ2luOiAwIDAgMjBweCAyMHB4O1xufVxuLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IGxlZnRcIl0ge1xuICBtYXJnaW46IDAgMjBweCAyMHB4IDBweDtcbn1cbi5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiByaWdodFwiXSwgLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IGxlZnRcIl0ge1xuICBtYXgtd2lkdGg6IDYwJTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xuICAucnRlIGltZ1tzdHlsZSo9XCJmbG9hdDogcmlnaHRcIl0sIC5ydGUgaW1nW3N0eWxlKj1cImZsb2F0OiBsZWZ0XCJdIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSwgKG1heC13aWR0aDogMTA1MHB4KSBhbmQgKG1pbi13aWR0aDogODAxcHgpIHtcbiAgLnJ0ZSBpbWdbc3R5bGUqPVwiZmxvYXQ6IHJpZ2h0XCJdLCAucnRlIGltZ1tzdHlsZSo9XCJmbG9hdDogbGVmdFwiXSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gOHB4O1xuICB9XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpIHtcbiAgbWFyZ2luOiAyMHB4IDBweDtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgNXB4IC0gdmFyKC0tYm9yZGVyKSk7XG4gIGJvcmRlcjogdmFyKC0tYm9yZGVyKSBzb2xpZCB2YXIoLS1ncmV5KTtcbiAgcGFkZGluZzogNXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpIGltZyB7XG4gIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG4gIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMHB4IDBweDtcbn1cbi5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMCAwIDIwcHggMjBweDtcbn1cbi5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMjBweCAyMHB4IDBweDtcbn1cbi5ydGUgZmlndXJlOm5vdCgudGVybUJibClbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSwgLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiByaWdodFwiXSB7XG4gIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiA2MCU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiBsZWZ0XCJdLCAucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpW3N0eWxlKj1cInRleHQtYWxpZ246IHJpZ2h0XCJdIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUyMHB4KSwgKG1heC13aWR0aDogMTA1MHB4KSBhbmQgKG1pbi13aWR0aDogODAxcHgpIHtcbiAgLnJ0ZSBmaWd1cmU6bm90KC50ZXJtQmJsKVtzdHlsZSo9XCJ0ZXh0LWFsaWduOiBsZWZ0XCJdLCAucnRlIGZpZ3VyZTpub3QoLnRlcm1CYmwpW3N0eWxlKj1cInRleHQtYWxpZ246IHJpZ2h0XCJdIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byA4cHg7XG4gIH1cbn1cbi5ydGUgZmlndXJlOm5vdCgudGVybUJibCkgZmlnY2FwdGlvbiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDBweCAwcHggdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0LWdyZXktY29udHJhc3QpO1xuICBmb250LXNpemU6IDAuOWVtO1xufVxuLnJ0ZSBvbFtzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7XCJdID4gbGk6YmVmb3JlLCAucnRlIG9sW3N0eWxlPVwibGlzdC1zdHlsZS10eXBlOiBsb3dlci1hbHBoYTtcIl0gPiBsaTpiZWZvcmUsIC5ydGUgb2xbc3R5bGU9XCJsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWdyZWVrO1wiXSA+IGxpOmJlZm9yZSwgLnJ0ZSBvbFtzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogdXBwZXItcm9tYW47XCJdID4gbGk6YmVmb3JlLCAucnRlIG9sW3N0eWxlPVwibGlzdC1zdHlsZS10eXBlOiBsb3dlci1yb21hbjtcIl0gPiBsaTpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1saWdodCkgMzAlLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tbGlnaHQpIGNhbGMoMCAqIDEwMCUpLCB0cmFuc3BhcmVudCkpLCBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1saWdodCkgY2FsYygwICogMTAwJSksIHRyYW5zcGFyZW50KSwgdmFyKC0tbGlnaHQpIDcwJSkgMCAxMDAlLCByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCAwJSA1MCUsIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ibGFjaykgY2FsYygwLjIgKiAxMDAlKSwgdHJhbnNwYXJlbnQpLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYmxhY2spIGNhbGMoMCAqIDEwMCUpLCB0cmFuc3BhcmVudCkpLCByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCAxMDAlIDUwJSwgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJsYWNrKSBjYWxjKDAuMiAqIDEwMCUpLCB0cmFuc3BhcmVudCksIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1ibGFjaykgY2FsYygwICogMTAwJSksIHRyYW5zcGFyZW50KSkgMCAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XG4gIGJhY2tncm91bmQtc2l6ZTogNDBweCAxMDAlLCA0MHB4IDEwMCUsIDE0cHggMTAwJSwgMTRweCAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDEwMCUsIDAgMCwgMTAwJTtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBsb2NhbCwgbG9jYWwsIHNjcm9sbCwgc2Nyb2xsO1xuICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgdGFibGUge1xuICBtaW4td2lkdGg6IDUwMHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgdGFibGUgY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kOiBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tYnJhbmQtYnJpZ2h0KSBjYWxjKDAuMTcgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIHRhYmxlIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kLWJyaWdodCkgY2FsYygwLjA2ICogMTAwJSksIHRyYW5zcGFyZW50KTtcbn1cbi5ydGUgLnRhYmxlV3JhcHBlciB0YWJsZSB0aCB7XG4gIHBhZGRpbmc6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIGJvcmRlci1jb2xvcjogYmxhY2s7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgdGFibGUgdGQge1xuICBwYWRkaW5nOiAzcHg7XG4gIGZvbnQtc2l6ZTogMC45NWVtO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIHRhYmxlIGEge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLnJ0ZSAudGFibGVXcmFwcGVyIC5tb2JpbGVTY3JvbGxNZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIHBhZGRpbmc6IDVweCA4cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG59XG4ucnRlIC50YWJsZVdyYXBwZXIgLm1vYmlsZVNjcm9sbE1lc3NhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwMCU7XG4gIGxlZnQ6IGNhbGMoNXB4ICsgdmFyKC0tcmFkaXVzKSk7XG4gIHdpZHRoOiAwcHg7XG4gIGhlaWdodDogMHB4O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAgNnB4IDhweCA1cHg7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdmFyKC0tYnJhbmQtZGFyaykgdHJhbnNwYXJlbnQ7XG59XG5cbkBjb250YWluZXIgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLnJ0ZSAudGFibGVXcmFwcGVyIC5tb2JpbGVTY3JvbGxNZXNzYWdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA2NTBweCkge1xuICAucnRlIC50YWJsZVdyYXBwZXIgLm1vYmlsZVNjcm9sbE1lc3NhZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLnJ0ZSBwLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBwIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xuICBmb250LXNpemU6IDEuMTI1ZW07XG59XG4ucnRlIGgzLmhlYWRpbmcsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGgzLmhlYWRpbmcge1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1hcmdpbjogMC43NWVtIDAgMC40ZW07XG4gIGZvbnQtc2l6ZTogMS42NWVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbn1cbi5ydGUgLmhlYWRpbmdMaXN0LFxuLnJ0ZSAuc3ViaGVhZGluZ0xpc3QsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5oZWFkaW5nTGlzdCxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgLnN1YmhlYWRpbmdMaXN0IHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDAuNzVlbSAwIDAuNGVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNWVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdmFyKC0tYnJhbmQtZGFyayk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNWVtO1xuICBsaW5lLWhlaWdodDogMS4yZW07XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG59XG4ucnRlIGgzLmhlYWRpbmdMaXN0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoMy5oZWFkaW5nTGlzdCB7XG4gIGZvbnQtc2l6ZTogMS4yZW07XG59XG4ucnRlIGg0LnN1YmhlYWRpbmdMaXN0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoNC5zdWJoZWFkaW5nTGlzdCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLnJ0ZSBoNC5zdWJoZWFkaW5nLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBoNC5zdWJoZWFkaW5nIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBtYXJnaW46IDAuNzVlbSAwIDAuNGVtO1xuICBmb250LXNpemU6IDEuMzVlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgY29sb3I6IHZhcigtLWJhc2ljKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFzaWMtY29udHJhc3QpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucnRlIC5sYXJnZVRleHQsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5sYXJnZVRleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDQ1cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjRlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG4ucnRlIC5sYXJnZVRleHQ6YmVmb3JlLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGFyZ2VUZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogOHB4O1xuICBib3R0b206IC0yNnB4O1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiB3aWR0aCA1MDBtcztcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XG59XG4uY3VycmVudCAucnRlIC5sYXJnZVRleHQ6YmVmb3JlLFxuLmN1cnJlbnQgI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAubGFyZ2VUZXh0OmJlZm9yZSB7XG4gIHdpZHRoOiAyNSU7XG59XG4ucnRlIC5sYXJnZVRleHQ6YWZ0ZXIsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5sYXJnZVRleHQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taG92ZXIpO1xuICBjb2xvcjogdmFyKC0taG92ZXItY29udHJhc3QpO1xuICBvcGFjaXR5OiAwLjI1O1xuICB6LWluZGV4OiAxO1xufVxuLnJ0ZSAubGFyZ2VUZXh0IGEsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIC5sYXJnZVRleHQgYSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5LWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xufVxuLnJ0ZSAuaGlnaGxpZ2h0LFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCAuaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZDogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJyYW5kLWJyaWdodCkgY2FsYygwLjMgKiAxMDAlKSwgdHJhbnNwYXJlbnQpO1xufVxuLnJ0ZSB1bCxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgdWwge1xuICBwYWRkaW5nOiAwO1xufVxuLnJ0ZSB1bCA+IGxpLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCB1bCA+IGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xufVxuLnJ0ZSB1bCA+IGxpOjptYXJrZXIsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIHVsID4gbGk6Om1hcmtlciB7XG4gIGZvbnQtc2l6ZTogMS4yNWVtO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XG59XG4ucnRlIG9sLFxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCBvbCB7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgY291bnRlci1yZXNldDogY291bnRlcjtcbn1cbi5ydGUgb2wgPiBsaSxcbiNyZXZlYWxNb2RhbERpYWxvZyAuY29weVdyYXAgb2wgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY291bnRlci1pbmNyZW1lbnQ6IGNvdW50ZXI7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbn1cbi5ydGUgb2wgPiBsaTpiZWZvcmUsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIG9sID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogY291bnRlcihjb3VudGVyKSBcIi4gXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4ucnRlIGEsXG4jcmV2ZWFsTW9kYWxEaWFsb2cgLmNvcHlXcmFwIGEge1xuICBjb2xvcjogdmFyKC0tbGluayk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpbmstY29udHJhc3QpO1xufVxuXG4uY2FsbG91dFN1YnRsZSB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXJnaW46IDFlbSAwIDAuNGVtO1xuICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0LWdyZXkpO1xuICBjb2xvcjogdmFyKC0tbGlnaHQtZ3JleS1jb250cmFzdCk7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMHB4IDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY2FsbG91dFN1YnRsZSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XG4gIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5LWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXktY29udHJhc3QpO1xufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuICAuY2FsbG91dFN1YnRsZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIH1cbn1cbltkYXRhLWJyb3dzZXI9aWVdIC5jYWxsb3V0U3VidGxlIGE6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYXNpYy1jb250cmFzdCk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhc2ljKTtcbn1cbi5pZSAuY2FsbG91dFN1YnRsZSBhOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWJhc2ljKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFzaWMtY29udHJhc3QpO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1iYXNpYyk7XG59XG4uY2FsbG91dFN1YnRsZSBhLmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYXNpYy1jb250cmFzdCk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhc2ljKTtcbn1cbi5jYWxsb3V0U3VidGxlIGE6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYmFzaWMpO1xufVxuXG4uY2FsbG91dEJvbGQge1xuICBjbGVhcjogYm90aDtcbiAgbWFyZ2luOiAwLjc1ZW0gMCAwLjRlbTtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4yKSk7XG59XG4uY2FsbG91dEJvbGQgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyay1jb250cmFzdCk7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrLWNvbnRyYXN0KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLmNhbGxvdXRCb2xkIGE6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFzaWMtY29udHJhc3QpO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhc2ljKTtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gLmNhbGxvdXRCb2xkIGE6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tYmFzaWMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYXNpYy1jb250cmFzdCk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhc2ljKTtcbn1cbi5pZSAuY2FsbG91dEJvbGQgYTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYmFzaWMpO1xufVxuLmNhbGxvdXRCb2xkIGEuZm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYmFzaWMpO1xufVxuLmNhbGxvdXRCb2xkIGE6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1iYXNpYyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhc2ljLWNvbnRyYXN0KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYmFzaWMpO1xufVxuXG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2Uge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWxpZ2h0KTtcbn1cbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSAuZm9ybUFyZWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4jbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2UgLmZvcm1BcmVhIC5ydGUge1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xufVxuI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIC5mb3JtQXJlYSAuaWNvbiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICBmbGV4LWdyb3c6IDA7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDNlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjUwcHgpIHtcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG4gICNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSAuZm9ybUFyZWEge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAjbWVtYmVyc2hpcCAuZm9ybVdyYXAubWFpbnRlbmFuY2UgLmZvcm1BcmVhIC5pY29uIHtcbiAgICB3aWR0aDogNTVweDtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG59XG4ubWVtYmVyc2hpcFBhZ2UgLmVycm9yUGFnZSAudGl0bGVBcmVhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIC5pY29uIHtcbiAgZm9udC1zaXplOiA1ZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0byAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYm9yZGVyOiA0cHggc29saWQgdmFyKC0tbGlnaHQpO1xuICBjb2xvcjogdmFyKC0tbGlnaHQpO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB3aWR0aDogMTUwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG59XG4ubWVtYmVyc2hpcFBhZ2UgLmVycm9yUGFnZSAucnRlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBva2xjaChmcm9tIHZhcigtLWJyYW5kLWRhcmspIG1heChsIC0gbCAqIDAuMTUsIDApIGMgaCk7XG4gIHBhZGRpbmc6IDUwcHggMjBweCA0MHB4IDIwcHg7XG4gIG1hcmdpbi10b3A6IC02MHB4O1xuICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1saWdodCk7XG59XG4ubWVtYmVyc2hpcFBhZ2UgLmVycm9yUGFnZSAucnRlIGgzLmhlYWRpbmcge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIC5pY29uIHtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgfVxufVxuQGxheWVyIGJhc2Uge1xuICBkZXRhaWxzIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgNTAwbXM7XG4gIH1cbiAgZGV0YWlscyA+IHN1bW1hcnk6Om1hcmtlcixcbiAgZGV0YWlscyA+IHN1bW1hcnk6Oi13ZWJraXQtZGV0YWlscy1tYXJrZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmFjY29yZGlvbk1vZHVsZSAuYWNjb3JkaW9uVGl0bGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG4gIC5hY2NvcmRpb25Nb2R1bGVbZGF0YS1pbnRlcmFjdGlvbi1tYW5kYXRvcnk9dHJ1ZV06bm90KC5pbnRlcmFjdGVkV2l0aCkgLmljb24tbWFuZGF0b3J5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5hY2NvcmRpb25Nb2R1bGVbZGF0YS1pbnRlcmFjdGlvbi1tYW5kYXRvcnk9dHJ1ZV06bm90KC5pbnRlcmFjdGVkV2l0aCkgLmludGVyYWN0aW9uTm90aWZpY2F0aW9uIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBjbGlwLXBhdGg6IHJlY3QoMCAwIDAgMCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAtMXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDFweDtcbiAgfVxufVxuLnByaW1hcnlBY2NvcmRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuLnByaW1hcnlBY2NvcmRpb25bb3Blbl0gPiAuYWNjb3JkaW9uVGl0bGUgLmljb24teCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wcmltYXJ5QWNjb3JkaW9uW2RhdGEtaW50ZXJhY3Rpb24tbWFuZGF0b3J5PXRydWVdOm5vdCguaW50ZXJhY3RlZFdpdGgpIC5pY29uLW1hbmRhdG9yeSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IC0zcHg7XG4gIHRvcDogLTNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG4gIHBhZGRpbmc6IDNweDtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2hhZG93OiAxcHggMXB4IDhweCAwcHggY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWJsYWNrKSBjYWxjKDAuMyAqIDEwMCUpLCB0cmFuc3BhcmVudCk7XG4gIGZvbnQtc2l6ZTogMC43NWVtO1xufVxuLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xuICBwYWRkaW5nOiAyMHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMjAwbXM7XG4gIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHZhcigtLWhvdmVyKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcbiAgLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xuICB9XG4gIC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpob3ZlciAuaWNvbi14IHtcbiAgICByaWdodDogMjVweDtcbiAgfVxufVxuW2RhdGEtYnJvd3Nlcj1pZV0gLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodC1jb250cmFzdCk7XG59XG5bZGF0YS1icm93c2VyPWllXSAucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGU6aG92ZXIgLmljb24teCB7XG4gIHJpZ2h0OiAyNXB4O1xufVxuLmllIC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuLmllIC5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpob3ZlciAuaWNvbi14IHtcbiAgcmlnaHQ6IDI1cHg7XG59XG4ucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uVGl0bGUuZm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQtY29udHJhc3QpO1xufVxuLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlLmZvY3VzLXZpc2libGUgLmljb24teCB7XG4gIHJpZ2h0OiAyNXB4O1xufVxuLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvblRpdGxlOmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0LWNvbnRyYXN0KTtcbn1cbi5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZTpmb2N1cy12aXNpYmxlIC5pY29uLXgge1xuICByaWdodDogMjVweDtcbn1cbi5wcmltYXJ5QWNjb3JkaW9uIC5hY2NvcmRpb25UaXRsZSAuaWNvbi14IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMjBweDtcbiAgdHJhbnNpdGlvbjogcmlnaHQgMzAwbXM7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucHJpbWFyeUFjY29yZGlvbiAuYWNjb3JkaW9uV3JhcHBlciB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWxpZ2h0LWNvbnRyYXN0KTtcbiAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdmFyKC0taG92ZXIpO1xufVxuLnByaW1hcnlBY2NvcmRpb24gLmFjY29yZGlvbldyYXBwZXIgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbn1cbi5wcmltYXJ5QWNjb3JkaW9uICsgLnJ0ZSB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG59IiwiQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6IFwidmlsbGFub3ZhXCI7XHJcbiAgc3JjOlxyXG4gICAgdXJsKFwiL2ZvbnRzL3ZpbGxhbm92YS53b2ZmMlwiKSBmb3JtYXQoXCJ3b2ZmMlwiKSxcclxuICAgIHVybChcIi9mb250cy92aWxsYW5vdmEudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLFxyXG4gICAgdXJsKFwiL2ZvbnRzL3ZpbGxhbm92YS53b2ZmXCIpIGZvcm1hdChcIndvZmZcIik7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC1kaXNwbGF5OiBibG9jaztcclxufVxyXG4uaWNvbixcclxuW2NsYXNzXj1cImljb24tXCJdLFxyXG5bY2xhc3MqPVwiIGljb24tXCJdIHtcclxuICAvKiBVc2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGV4dGVuc2lvbnMgZnJvbSBvdmVycmlkaW5nIHRoaXMgZm9udC4gKi9cclxuICBmb250LWZhbWlseTogXCJ2aWxsYW5vdmFcIiAhaW1wb3J0YW50O1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xyXG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gIGxpbmUtaGVpZ2h0OiAxO1xyXG5cclxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cclxuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG59XHJcbi5pY29uLWFjY2Vzc2liaWxpdHk6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcN2FcIjtcclxufVxyXG4uaWNvbi1wYXVzZTpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw3OVwiO1xyXG59XHJcbi5pY29uLXBsYXk6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNzhcIjtcclxufVxyXG4uaWNvbi1tb3VzZTpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw3N1wiO1xyXG59XHJcbi5pY29uLWxvZy1vdXQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNzNcIjtcclxufVxyXG4uaWNvbi1taW51czpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw3NlwiO1xyXG59XHJcbi5pY29uLXBsdXM6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNzVcIjtcclxufVxyXG4uaWNvbi1hY2hpZXZlbWVudDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw3NFwiO1xyXG59XHJcbi5pY29uLWdsb3NzYXJ5OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDcxXCI7XHJcbn1cclxuLmljb24tZmFxOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDcyXCI7XHJcbn1cclxuLmljb24tcGRmOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDcwXCI7XHJcbn1cclxuLmljb24tcHJpbnQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNmZcIjtcclxufVxyXG4uaWNvbi1tZW51OmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDZlXCI7XHJcbn1cclxuLmljb24tYXJyb3ctbmV4dDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2ZFwiO1xyXG59XHJcbi5pY29uLWFycm93LXByZXZpb3VzOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDZjXCI7XHJcbn1cclxuLmljb24tYWNjb3VudDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2YlwiO1xyXG59XHJcbi5pY29uLXF1aWNrdmlldzpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2YVwiO1xyXG59XHJcbi5pY29uLXNsaWRldmlldzpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2OVwiO1xyXG59XHJcbi5pY29uLWxlYXJuLW1vcmU6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNjhcIjtcclxufVxyXG4uaWNvbi1ob21lOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDY3XCI7XHJcbn1cclxuLmljb24tc2VhcmNoOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDY2XCI7XHJcbn1cclxuLmljb24tYW5ub3VuY2U6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNjVcIjtcclxufVxyXG4uaWNvbi1saW5rOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXDY0XCI7XHJcbn1cclxuLmljb24teDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2MlwiO1xyXG59XHJcbi5pY29uLWxvY2s6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcNjNcIjtcclxufVxyXG4uaWNvbi1jaGVjazpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFw2MVwiO1xyXG59XHJcbiIsIkB1c2UgXCJzYXNzOm1ldGFcIjtcclxuQHVzZSBcInNhc3M6bWF0aFwiO1xyXG5AdXNlIFwic2FzczpzdHJpbmdcIjtcclxuQHVzZSBcInNhc3M6Y29sb3JcIjtcclxuQHVzZSBcInNhc3M6bGlzdFwiO1xyXG5AdXNlIFwic2FzczptYXBcIjtcclxuXHJcbi8qLS0tVEVYVCBBTkQgRk9OVC0tLSovXHJcblxyXG4vLy8gQ3JlYXRlIGEgdGV4dC1zaGFkb3cgd2l0aCBjbGVhcmVyIHByb3BlcnRpZXMuXHJcbi8vLyBAcGFyYW0geyp9ICR4IFswcHhdXHJcbi8vLyBAcGFyYW0geyp9ICR5IFsxcHhdXHJcbi8vLyBAcGFyYW0geyp9ICRibHVyIFswcHhdXHJcbi8vLyBAcGFyYW0geyp9ICRjb2xvciBbcmdiYSgwLCAwLCAwLCAwLjc1KV1cclxuQG1peGluIHRleHRTaGFkb3coJHg6IDBweCwgJHk6IDFweCwgJGJsdXI6IDBweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNzUpKSB7XHJcbiAgdGV4dC1zaGFkb3c6ICR4ICR5ICRibHVyICRjb2xvcjtcclxufVxyXG5cclxuLy8vIFNldCBpY29uIGZvbnQgYW5kIG5vcm1hbGl6ZSBhbGwgcHJvcGVydGllcy5cclxuLy8vIEBwYXJhbSB7Kn0gJGZvbnQgWyRpY29uRm9udF1cclxuQG1peGluIGljb25Gb250KCRmb250OiAkaWNvbkZvbnQpIHtcclxuICBmb250LWZhbWlseTogJGZvbnQgIWltcG9ydGFudDtcclxuICBmb250LXN0eWxlOiBub3JtYWwgIWltcG9ydGFudDtcclxuICBmb250LXdlaWdodDogbm9ybWFsICFpbXBvcnRhbnQ7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWwgIWltcG9ydGFudDtcclxuICB0ZXh0LXRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XHJcbn1cclxuXHJcbi8qLS0tQkFDS0dST1VORC0tLSovXHJcblxyXG4vLy8gU2V0cyBiYWNrZ3JvdW5kIHRvIGNvdmVyIHdpdGggNTAlIDUwJSBwb3NpdGlvbi5cclxuQG1peGluIGJhY2tncm91bmRDb3ZlciB7XHJcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbn1cclxuXHJcbi8vLyBTZXRzIGhlaWdodCBhbmQgd2lkdGggdG8gMTAwJS5cclxuQG1peGluIGZpbGxTcGFjZSB7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vLy8gQ3JlYXRlIGEgYm94IHNoYWRvdyB3aXRoIGNsZWFyZXIgcHJvcGVydGllcy5cclxuLy8vIEBwYXJhbSB7Kn0gJHggWzBweF1cclxuLy8vIEBwYXJhbSB7Kn0gJHkgWzBweF1cclxuLy8vIEBwYXJhbSB7Kn0gJGJsdXIgWzJweF1cclxuLy8vIEBwYXJhbSB7Kn0gJHNwcmVhZCBbMnB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkY29sb3IgW3JnYmEoMCwgMCwgMCwgMC4yKV1cclxuQG1peGluIGJveFNoYWRvdygkeDogMHB4LCAkeTogMHB4LCAkYmx1cjogMnB4LCAkc3ByZWFkOiAycHgsICRjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpKSB7XHJcbiAgYm94LXNoYWRvdzogJHggJHkgJGJsdXIgJHNwcmVhZCAkY29sb3I7XHJcbn1cclxuXHJcbi8vLyBDcmVhdGUgYSBib3ggc2hhZG93IHdpdGggY2xlYXJlciBwcm9wZXJ0aWVzLlxyXG4vLy8gQHBhcmFtIHsqfSAkeCBbMHB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkeSBbMXB4XVxyXG4vLy8gQHBhcmFtIHsqfSAkYmx1ciBbM3B4XVxyXG4vLy8gQHBhcmFtIHsqfSAkc3ByZWFkIFswcHhdXHJcbi8vLyBAcGFyYW0geyp9ICRjb2xvciBbcmdiYSgwLCAwLCAwLCAwLjIpXVxyXG5AbWl4aW4gc2hhZG93LWluc2V0KCR4OiAwcHgsICR5OiAxcHgsICRibHVyOiAzcHgsICRzcHJlYWQ6IDBweCwgJGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMikpIHtcclxuICBib3gtc2hhZG93OiBpbnNldCAkeCAkeSAkYmx1ciAkc3ByZWFkICRjb2xvcjtcclxufVxyXG5cclxuLyotLS1QT1NJVElPTklORy0tLSovXHJcblxyXG4vLy8gU2V0cyBlbGVtZW50IHRvIHBvc2l0aW9uIGFic29sdXRlIHRvIHdpdGggdG9wOiAwIGFuZCBsZWZ0OiAwO1xyXG5AbWl4aW4gYWJzb2x1dGUge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxufVxyXG5cclxuLy8vIFNldHMgZWxlbWVudCB0byBwb3NpdGlvbiBmaXhlZCB0byB3aXRoIHRvcDogMCBhbmQgbGVmdDogMDtcclxuQG1peGluIGZpeGVkIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbn1cclxuXHJcbi8vLyBSZXNldHMgcG9zaXRpb24gcHJvcGVydGllcyAodG9wLCBib3R0b20sIGxlZnQsIHJpZ2h0KS5cclxuLy8vIEBwYXJhbSB7Kn0gJHBvcyBbcmVsYXRpdmVdIC0gU2V0cyB0aGUgcG9zaXRpb24gcHJvcGVydHkuXHJcbkBtaXhpbiByZXNldFBvcygkcG9zOiByZWxhdGl2ZSkge1xyXG4gIHBvc2l0aW9uOiAkcG9zO1xyXG4gIHRvcDogYXV0bztcclxuICBib3R0b206IGF1dG87XHJcbiAgbGVmdDogYXV0bztcclxuICByaWdodDogYXV0bztcclxufVxyXG5cclxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyBhbiBlbGVtZW50IHVzaW5nIHBvc2l0aW9uIGFic29sdXRlIGFuZCB0cmFuc2Zvcm1zLlxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRwZXJjZW50IFs1MCVdIC0gUHJvcGVydHkgdG9wIHBlcmNlbnRhZ2UuXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHRyYW5zIFs1MCVdIC0gUHJvcGVydHkgdHJhbnNsYXRlWSBwZXJjZW50YWdlLlxyXG5AbWl4aW4gdmVydENlbnRlcigkcGVyY2VudDogNTAlLCAkdHJhbnM6IDUwJSkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6ICRwZXJjZW50O1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHRyYW5zKTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHRyYW5zKTtcclxufVxyXG5cclxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyBhbiBlbGVtZW50IHVzaW5nIHBvc2l0aW9uIGFic29sdXRlIGFuZCB0cmFuc2Zvcm1zLlxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRwZXJjZW50IFs1MCVdIC0gUHJvcGVydHkgbGVmdCBwZXJjZW50YWdlLlxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0cmFucyBbNTAlXSAtIFByb3BlcnR5IHRyYW5zbGF0ZVggcGVyY2VudGFnZS5cclxuQG1peGluIGhvcnpDZW50ZXIoJHBlcmNlbnQ6IDUwJSwgJHRyYW5zOiA1MCUpIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgbGVmdDogJHBlcmNlbnQ7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kdHJhbnMpO1xyXG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kdHJhbnMpO1xyXG59XHJcblxyXG5AbWl4aW4gdmVydEhvcnpDZW50ZXIge1xyXG4gIEBpbmNsdWRlIHZlcnRDZW50ZXI7XHJcbiAgQGluY2x1ZGUgaG9yekNlbnRlcjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuLy8vIERvZXMgd2hhdCBpdCBzYXlzIG9uIHRoZSB0aW4uIFNldHMgbWFyZ2luIGFuZCBwYWRkaW5nIHRvIDAuXHJcbkBtaXhpbiB6ZXJvTWFyZ1BhZCB7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qLS0tQ09OVEVOVC0tLSovXHJcblxyXG4vLy8gVXNlZCBpbnNpZGUgOjpiZWZvcmUgYW5kIDo6YWZ0ZXIgZWxlbWVudHMuIFNldHMgd2lkdGggYW5kIGhlaWdodCB0byAxMDAlLlxyXG5AbWl4aW4gcHNldWRvQ29udGVudCB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi8vLyBDcmVhdGVzIGFuIDo6YWZ0ZXIgZWxlbWVudCB0byBwcmV2ZW50IGZsb2F0IG92ZXJsYXAuXHJcbkBtaXhpbiBjbGVhcmZpeCB7XHJcbiAgJjphZnRlciB7XHJcbiAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBoZWlnaHQ6IDA7XHJcbiAgICBjbGVhcjogYm90aDtcclxuICB9XHJcbn1cclxuXHJcbi8qLS0tTElTVFMtLS0qL1xyXG5cclxuLy8vIFJlbW92ZSBsaXN0IHN0eWxpbmcsIG1hcmdpbiwgYW5kIHBhZGRpbmcuXHJcbkBtaXhpbiByZWZvcm1hdExpc3Qge1xyXG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcclxuICBAaW5jbHVkZSB6ZXJvTWFyZ1BhZDtcclxuXHJcbiAgbGkge1xyXG4gICAgQGluY2x1ZGUgemVyb01hcmdQYWQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKi0tLUJPUkRFUiBBUlJPV1MtLS0qL1xyXG4vLy8gRHJhdyBhbiBhcnJvdyB1c2luZyBjc3MgYm9yZGVyc1xyXG4vLy8gQHBhcmFtIHt2YXJpYWJsZX0gJGRpciBbdG9wLCByaWdodCwgYm90dG9tLCBsZWZ0LCB0b3BSaWdodCwgYm90dG9tUmlnaHQsIHRvcExlZnQsIGJvdHRvbUxlZnRdXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgWyRsaWdodF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkaGVpZ2h0IFsyMHB4XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR3aWR0aCBbMzBweF1cclxuQG1peGluIGNzc0Fycm93KCRkaXIsICRjb2xvcjogdmFyKC0tYnJhbmQtZGFyayksICRoZWlnaHQ6IDIwcHgsICR3aWR0aDogMjBweCkge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHJcbiAgQGlmICRkaXIgPT10b3Age1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGMoI3skd2lkdGh9IC8gMikgJGhlaWdodCBjYWxjKCN7JHdpZHRofSAvIDIpO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2UgaWYgJGRpciA9PXJpZ2h0IHtcclxuICAgIGJvcmRlci13aWR0aDogY2FsYygjeyRoZWlnaHR9IC8gMikgMCBjYWxjKCN7JGhlaWdodH0gLyAyKSAkd2lkdGg7XHJcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2UgaWYgJGRpciA9PWJvdHRvbSB7XHJcbiAgICBib3JkZXItd2lkdGg6ICRoZWlnaHQgY2FsYygjeyR3aWR0aH0gLyAyKSAwIGNhbGMoI3skd2lkdGh9IC8gMik7XHJcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyID09bGVmdCB7XHJcbiAgICBib3JkZXItd2lkdGg6IGNhbGMoI3skaGVpZ2h0fSAvIDIpICR3aWR0aCBjYWxjKCN7JGhlaWdodH0gLyAyKSAwO1xyXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkY29sb3I7XHJcbiAgfSBAZWxzZSBpZiAkZGlyID09dG9wUmlnaHQge1xyXG4gICAgYm9yZGVyLXdpZHRoOiAwICRoZWlnaHQgJHdpZHRoIDA7XHJcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXIgPT1ib3R0b21SaWdodCB7XHJcbiAgICBib3JkZXItd2lkdGg6IDAgMCAkaGVpZ2h0ICR3aWR0aDtcclxuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXIgPT1ib3R0b21MZWZ0IHtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAwIDAgJHdpZHRoO1xyXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRjb2xvcjtcclxuICB9IEBlbHNlIGlmICRkaXIgPT10b3BMZWZ0IHtcclxuICAgIGJvcmRlci13aWR0aDogJGhlaWdodCAkd2lkdGggMCAwO1xyXG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yIFwiVW5rbm93biBkaXJlY3Rpb24gI3skZGlyfS5cIjtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBEcmF3IGEgZG93biBhcnJvdyB1c2luZyBjc3MgYm9yZGVyc1xyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRzaXplIFs4cHhdXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemVMUiBbJHNpemVdXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgWyRsaWdodF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdG9wIFthdXRvXVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRsZWZ0IFthdXRvXVxyXG5AbWl4aW4gcmlnaHRBcnJvdygkc2l6ZTogOHB4LCAkc2l6ZVRCOiAkc2l6ZSwgJGNvbG9yOiAkbGlnaHQsICR0b3A6IGF1dG8sICRyaWdodDogYXV0bykge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci10b3A6ICRzaXplVEIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWJvdHRvbTogJHNpemVUQiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItbGVmdDogJHNpemUgc29saWQgJGNvbG9yO1xyXG4gIGJvcmRlci1yaWdodDogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAkdG9wO1xyXG4gIHJpZ2h0OiAkcmlnaHQ7XHJcbn1cclxuXHJcbi8vLyBEcmF3IGEgZG93biBhcnJvdyB1c2luZyBjc3MgYm9yZGVyc1xyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRzaXplIFs4cHhdXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemVMUiBbJHNpemVdXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgWyRsaWdodF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdG9wIFthdXRvXVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRsZWZ0IFthdXRvXVxyXG5AbWl4aW4gbGVmdEFycm93KCRzaXplOiA4cHgsICRzaXplVEI6ICRzaXplLCAkY29sb3I6ICRsaWdodCwgJHRvcDogYXV0bywgJGxlZnQ6IGF1dG8pIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIHdpZHRoOiAwO1xyXG4gIGhlaWdodDogMDtcclxuICBib3JkZXItdG9wOiAkc2l6ZVRCIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206ICRzaXplVEIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRvcDogJHRvcDtcclxuICBsZWZ0OiAkbGVmdDtcclxufVxyXG5cclxuLy8vIERyYXcgYSBkb3duIGFycm93IHVzaW5nIGNzcyBib3JkZXJzXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemUgWzhweF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkc2l6ZUxSIFskc2l6ZV1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbJGxpZ2h0XVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICR0b3AgW2F1dG9dXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJGxlZnQgW2F1dG9dXHJcbkBtaXhpbiB0b3BBcnJvdygkc2l6ZTogOHB4LCAkc2l6ZUxSOiAkc2l6ZSwgJGNvbG9yOiAkbGlnaHQsICR0b3A6IGF1dG8sICRsZWZ0OiBhdXRvKSB7XHJcbiAgY29udGVudDogXCJcIjtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgYm9yZGVyLWxlZnQ6ICRzaXplTFIgc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyLXJpZ2h0OiAkc2l6ZUxSIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206ICRzaXplIHNvbGlkICRjb2xvcjtcclxuICBib3JkZXItdG9wOiAwO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6ICR0b3A7XHJcbiAgbGVmdDogJGxlZnQ7XHJcbn1cclxuXHJcbi8vLyBEcmF3IGEgZG93biBhcnJvdyB1c2luZyBjc3MgYm9yZGVyc1xyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRzaXplIFs4cHhdXHJcbi8vLyBAcGFyYW0ge251bWJlcn0gJHNpemVMUiBbJHNpemVdXHJcbi8vLyBAcGFyYW0ge2NvbG9yfSAkY29sb3IgWyRsaWdodF1cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkdG9wIFthdXRvXVxyXG4vLy8gQHBhcmFtIHtudW1iZXJ9ICRsZWZ0IFthdXRvXVxyXG5AbWl4aW4gYm90dG9tQXJyb3coJHNpemU6IDhweCwgJHNpemVMUjogJHNpemUsICRjb2xvcjogJGxpZ2h0LCAkdG9wOiBhdXRvLCAkbGVmdDogYXV0bykge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgd2lkdGg6IDA7XHJcbiAgaGVpZ2h0OiAwO1xyXG4gIGJvcmRlci1sZWZ0OiAkc2l6ZUxSIHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1yaWdodDogJHNpemVMUiBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3JkZXItdG9wOiAkc2l6ZSBzb2xpZCAkY29sb3I7XHJcbiAgYm9yZGVyLWJvdHRvbTogMDtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAkdG9wO1xyXG4gIGxlZnQ6ICRsZWZ0O1xyXG59XHJcblxyXG4vLy8gQSBraW5kIG9mIGhhY2t5IG1peGluIHRvIGZvcmNlIHRoZSBicm93c2VyIHRvIHVzZSBhIEdQVSB0byByZW5kZXIgdGhlIGVsZW1lbnQuXHJcbkBtaXhpbiB1c2VHUFUge1xyXG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6IDEwMDBweDtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHBlcnNwZWN0aXZlOiAxMDAwcHg7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbn1cclxuXHJcbi8vLyBWaWRlbyBiYWNrZ3JvdW5kIHNpemUuXHJcbi8vLyBAcGFyYW0geyp9ICRiZ0ltZyAtIFRoZSBiYWNrZ3JvdW5kIGltYWdlLiBJbiB0aGUgZm9ybSBvZiB1cmwoL2ltYWdlL215LWltYWdlLmpwZykuXHJcbkBtaXhpbiB2aWRlb0JHKCRiZ0ltZykge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIEBpbmNsdWRlIGFic29sdXRlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gIHZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgei1pbmRleDogLTEwMDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6ICRiZ0ltZztcclxuICAgIEBpbmNsdWRlIGJhY2tncm91bmRDb3ZlcjtcclxuICB9XHJcbn1cclxuXHJcbi8qKkZvcm1zKiovXHJcblxyXG4vLy8gSW5wdXQgUGxhY2Vob2xkZXIgc3R5bGluZ1xyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJGNvbG9yIFtsaWdodGVuKCRiYXNpYywgNjAlKV0gLSBUaGUgY29sb3Igb2YgdGhlIHBsYWNlaG9sZGVyIHRleHQuXHJcbi8vLyBAcGFyYW0geyp9ICRzdHlsZSBbaXRhbGljXSAtIEZvbnQgc3R5bGUuXHJcbi8vLyBAcGFyYW0geyp9ICRmb250IFskYmFzaWNGb250XSAtIEZvbnQgZmFtaWx5LlxyXG4vLy8gQHBhcmFtIHsqfSAkc2l6ZSBbMWVtXSAtIEZvbnQgc2l6ZS5cclxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogdmFyKC0tZGFyay1ncmV5KSwgJHN0eWxlOiBpdGFsaWMsICRmb250OiAkYmFzaWNGb250LCAkc2l6ZTogMWVtKSB7XHJcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogJGNvbG9yO1xyXG5cclxuICAgIGZvbnQ6IHtcclxuICAgICAgc3R5bGU6ICRzdHlsZTtcclxuICAgICAgZmFtaWx5OiAkZm9udDtcclxuICAgICAgc2l6ZTogJHNpemU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgLyogRmlyZWZveCAxOC0gKi9cclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgZm9udDoge1xyXG4gICAgICBzdHlsZTogJHN0eWxlO1xyXG4gICAgICBmYW1pbHk6ICRmb250O1xyXG4gICAgICBzaXplOiAkc2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgLyogRmlyZWZveCAxOSsgKi9cclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgZm9udDoge1xyXG4gICAgICBzdHlsZTogJHN0eWxlO1xyXG4gICAgICBmYW1pbHk6ICRmb250O1xyXG4gICAgICBzaXplOiAkc2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAkY29sb3I7XHJcblxyXG4gICAgZm9udDoge1xyXG4gICAgICBzdHlsZTogJHN0eWxlO1xyXG4gICAgICBmYW1pbHk6ICRmb250O1xyXG4gICAgICBzaXplOiAkc2l6ZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBCcmVha3MgbG9uZyB3b3JkcyBhbmQgdXJsc1xyXG4vLy8gQGF1dGhvciBLYXJsIFJvc3NcclxuQG1peGluIHdvcmRCcmVhayB7XHJcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XHJcblxyXG4gIC8qIEFkZHMgYSBoeXBoZW4gd2hlcmUgdGhlIHdvcmQgYnJlYWtzLCBpZiBzdXBwb3J0ZWQgKE5vIEJsaW5rKSAqL1xyXG4gIC1tcy1oeXBoZW5zOiBhdXRvO1xyXG4gIC1tb3otaHlwaGVuczogYXV0bztcclxuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XHJcbiAgaHlwaGVuczogYXV0bztcclxufVxyXG5cclxuLy8vIEhpZGVzIGFuIGVsZW1lbnQgYnV0IHN0aWxsIGFsbG93cyBpdCB0byBiZSByZWFkIGJ5IGEgc2NyZWVuIHJlYWRlci5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuQG1peGluIHNjcmVlblJlYWRlcigpIHtcclxuICBib3JkZXI6IDA7XHJcbiAgY2xpcC1wYXRoOiByZWN0KDAgMCAwIDApO1xyXG4gIGhlaWdodDogMXB4O1xyXG4gIG1hcmdpbjogLTFweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxcHg7XHJcbn1cclxuXHJcbi8vIEZpeGVzIGxlZ2VuZHMgb24gb2xkZXIgYnJvd3NlcnMgYW5kIHNtYWxsZXIgYnJvd3NlcnMuXHJcbkBtaXhpbiBsZWdlbmRGaXgge1xyXG4gIC8vVGhpcyBmaXhlcyBmb3IgcmVzcG9uc2l2ZVxyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG4gIC8qIEVuYWJsZSBsaW5lLXdyYXBwaW5nIGluIElFOCsgKi9cclxuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gIC8qIEVuYWJsZSBsaW5lLXdyYXBwaW5nIGluIG9sZCB2ZXJzaW9ucyBvZiBzb21lIG90aGVyIGJyb3dzZXJzICovXHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8vLyBTdHlsZSBzY3JvbGxiYXJzIHdpdGggYWxsIGJyb3dzZXIgdmVuZG9yIHByb3BlcnRpZXMuXHJcbi8vLyBAYXV0aG9yIEtvdXJ0bmV5IFN0cmlja2xhbmRcclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkd2lkdGggWzVweF0gLSBUaGUgd2lkdGggb2YgdGhlIHNjcm9sbGJhci5cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbIzQ0NDQ0NF0gLSBUaGUgY29sb3Igb2YgdGhlIHNjcm9sbCBrbm9iLlxyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJGJnQ29sb3IgWyNmNWY1ZjVdIC0gVGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHNjcm9sbGJhci5cclxuLy8vIEBwYXJhbSB7Ym9vbGVhbn0gJHNoYWRvdyBbdHJ1ZV0gLSBXaGV0aGVyIHRvIGRyYXcgYSBib3ggc2hhZG93IG9uIHRoZSBzY3JvbGxiYXIuXHJcbkBtaXhpbiBzY3JvbGxiYXIoJHdpZHRoOiA1cHgsICRjb2xvcjogIzQ0NDQ0NCwgJGJnQ29sb3I6ICNmNWY1ZjUsICRzaGFkb3c6IHRydWUpIHtcclxuICAvLyBOb25zdGFuZGFyZCB3ZWJraXQgcHJvcGVydGllcywgd29ya3Mgb24gQ2hyb21lLCBNb2Rlcm4gRWRnZSwgYW5kIFNhZmFyaVxyXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcclxuICAgIEBpZiAkc2hhZG93IHtcclxuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiBpbnNldCAwIDAgNnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICAgIH1cclxuXHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdDb2xvcjtcclxuICB9XHJcblxyXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIHdpZHRoOiAkd2lkdGg7XHJcbiAgICBoZWlnaHQ6ICR3aWR0aDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0NvbG9yO1xyXG4gIH1cclxuXHJcbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gIH1cclxuXHJcbiAgLy8gVGhlIHByb3Blciwgc3RhbmRhcmQgd2F5IHRvIHN0eWxlIHNjcm9sbGJhcnMuIFN1cHBvcnRlZCBpbiBGaXJlZm94LCBFZGdlIDEyMSssIGFuZCBDaHJvbWUgMTIxK1xyXG4gIHNjcm9sbGJhci1jb2xvcjogJGNvbG9yICRiZ0NvbG9yO1xyXG5cclxuICBAaWYgKCR3aWR0aCA8IDE1cHgpIHtcclxuICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBTaG9ydGhhbmQgZm9yIGEgZmxleGJveCBjb250YWluZXIgdGhhdCBqdXN0aWZlcyBjb250ZW50IGF0IHRoZSBzdGFydC5cclxuLy8vIEBhdXRob3IgS291cnRuZXkgU3RyaWNrbGFuZFxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRkaXIgW3Jvd10gLSBUaGUgZmxleC1kaXJlY3Rpb24gb2YgdGhlIGVsZW1lbnQuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGp1c3RpZnkgW3NwYWNlLWJldHdlZW5dIC0gVGhlIGp1c3RpZnktY29udGVudCBwcm9wZXJ0eSBvZiB0aGUgZWxlbWVudC5cclxuQG1peGluIGZsZXhKdXN0aWZ5KCRkaXI6IHJvdywgJGp1c3RpZnk6IHNwYWNlLWJldHdlZW4pIHtcclxuICAvL2FsdGVybmF0ZSB3b3VsZCBiZSBzcGFjZS1hcm91bmRcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogJGp1c3RpZnk7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcclxufVxyXG5cclxuLy8vIFNob3J0aGFuZCBmb3IgYSBmbGV4Ym94IGNvbnRhaW5lciB0aGF0IGp1c3RpZmVzIGNvbnRlbnQgaW4gY2VudGVyLlxyXG4vLy8gQGF1dGhvciBLb3VydG5leSBTdHJpY2tsYW5kXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpciBbcm93XSAtIFRoZSBmbGV4LWRpcmVjdGlvbiBvZiB0aGUgZWxlbWVudC5cclxuQG1peGluIGZsZXhDZW50ZXIoJGRpcjogcm93KSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyO1xyXG59XHJcblxyXG4vLy8gU2hvcnRoYW5kIGZvciBhIGZsZXhib3ggY29udGFpbmVyIHRoYXQganVzdGlmZXMgY29udGVudCBhdCB0aGUgZW5kLlxyXG4vLy8gQGF1dGhvciBLb3VydG5leSBTdHJpY2tsYW5kXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpciBbcm93XSAtIFRoZSBmbGV4LWRpcmVjdGlvbiBvZiB0aGUgZWxlbWVudC5cclxuQG1peGluIGZsZXhFbmQoJGRpcjogcm93KSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZmxleC1kaXJlY3Rpb246ICRkaXI7XHJcbn1cclxuXHJcbi8vLyBTaG9ydGhhbmQgZm9yIGEgZmxleGJveCBjb250YWluZXIgdGhhdCBqdXN0aWZlcyBjb250ZW50IGF0IHRoZSBzdGFydC5cclxuLy8vIEBhdXRob3IgS291cnRuZXkgU3RyaWNrbGFuZFxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRkaXIgW3Jvd10gLSBUaGUgZmxleC1kaXJlY3Rpb24gb2YgdGhlIGVsZW1lbnQuXHJcbkBtaXhpbiBmbGV4U3RhcnQoJGRpcjogcm93KSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBmbGV4LWRpcmVjdGlvbjogJGRpcjtcclxufVxyXG5cclxuLy8vIENyZWF0ZXMgYSBmbGV4aWJsZSBob3Jpem9udGFsIGxheW91dCBvZiBhYnNvbHV0ZWx5LXBvc2l0aW9uZWQgY2hpbGQgZWxlbWVudHMgb2YgZXF1YWwgd2lkdGguXHJcbi8vLyBWZXJ5IHVzZWZ1bCBmb3Igc29tZXRoaW5nIGxpa2UgYSBtYWluIG5hdiB0aGF0IHRyYW5zaXRpb25zLiBCZWNhdXNlIGV2ZXJ5dGhpbmcgaXMgYWxyZWFkeSBhYnNvbHV0ZSxcclxuLy8vIHlvdSBjYW4gZWFzaWx5IG1vdmUgc2VjdGlvbnMgb3V0IGFuZCBpbiB1c2luZyB0aGUgdG9wL2xlZnQgcHJvcGVydGllcy5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbWF4LW51bS1vZi1jaGlsZHJlbiBbN10gLSBJZiB0aGUgbnVtYmVyIG9mIGNoaWxkcmVuIGV4Y2VlZHMgdGhpcyBudW1iZXIsIHRoZSBsYXlvdXQgd2lsbCBicmVhay5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkb3JpZW50YXRpb24gW3ZlcnRpY2FsXSAtIFRoZSBkaXJlY3Rpb24gb2YgdGhlIGZsZXggY29udGFpbmVyLiBFaXRoZXIgXCJ2ZXJ0aWNhbFwiIG9yIFwiaG9yaXpvbnRhbFwiLlxyXG5AbWl4aW4gYWJzb2x1dGVGbGV4KCRtYXgtbnVtLW9mLWNoaWxkcmVuOiA3LCAkb3JpZW50YXRpb246IFwidmVydGljYWxcIiwgJGd1dHRlcjogMCUpIHtcclxuICBAaWYgdHlwZS1vZigkbWF4LW51bS1vZi1jaGlsZHJlbikgIT1udW1iZXIge1xyXG4gICAgQGVycm9yIFwiSW5wdXQgYCRtYXgtbnVtLW9mLWNoaWxkcmVuYCBtdXN0IGJlIGEgbnVtYmVyLlwiO1xyXG4gIH1cclxuXHJcbiAgQGlmICRvcmllbnRhdGlvbiAhPSBcImhvcml6b250YWxcIiBhbmQgJG9yaWVudGF0aW9uICE9IFwidmVydGljYWxcIiB7XHJcbiAgICBAZXJyb3IgXCJJbnB1dCBgJG1heC1udW0tb2YtY2hpbGRyZW5gIG11c3QgYmUgc2V0IHRvIGVpdGhlciBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYFwiO1xyXG4gIH1cclxuXHJcbiAgQHdoaWxlICRtYXgtbnVtLW9mLWNoaWxkcmVuPjEge1xyXG4gICAgJHNpemU6IG1hdGguZGl2KDEwMCUsICRtYXgtbnVtLW9mLWNoaWxkcmVuKTtcclxuICAgICRndXR0ZXJTaXplT2Zmc2V0OiBtYXRoLmRpdigkZ3V0dGVyLCAkbWF4LW51bS1vZi1jaGlsZHJlbik7XHJcblxyXG4gICAgLy8gV2UgY2FuIGRldGVjdCB0aGUgbnVtYmVyIG9mIGl0ZW1zIGEgcGFyZW50IGhhcyBwdXJlbHkgd2l0aCBDU1MuIENyYXp5LCBodWghXHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skbWF4LW51bS1vZi1jaGlsZHJlbn0pLFxyXG4gICAgPiAqOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JG1heC1udW0tb2YtY2hpbGRyZW59KSB+ICoge1xyXG4gICAgICBAaWYgKCRvcmllbnRhdGlvbj09IFwiaG9yaXpvbnRhbFwiKSB7XHJcbiAgICAgICAgd2lkdGg6IGNhbGMoI3skc2l6ZX0gLSAjeyRndXR0ZXIgLSAkZ3V0dGVyU2l6ZU9mZnNldH0pO1xyXG4gICAgICB9IEBlbHNlIGlmICgkb3JpZW50YXRpb249PSBcInZlcnRpY2FsXCIpIHtcclxuICAgICAgICBoZWlnaHQ6IGNhbGMoI3skc2l6ZX0gLSAjeyRndXR0ZXIgLSAkZ3V0dGVyU2l6ZU9mZnNldH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBDYWxjdWxhdGUgYW5kIHNldCBjaGlsZCBwb3NpdGlvbi5cclxuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbWF4LW51bS1vZi1jaGlsZHJlbiB7XHJcbiAgICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcclxuICAgICAgICAgIEBpZiAoJG9yaWVudGF0aW9uPT0gXCJob3Jpem9udGFsXCIpIHtcclxuICAgICAgICAgICAgbGVmdDogY2FsYygjeyRzaXplICogJGkgLSAkc2l6ZX0gKyAjeyRndXR0ZXIgLSAkZ3V0dGVyU2l6ZU9mZnNldCAqICRpfSk7XHJcbiAgICAgICAgICB9IEBlbHNlIGlmICgkb3JpZW50YXRpb249PSBcInZlcnRpY2FsXCIpIHtcclxuICAgICAgICAgICAgdG9wOiAkc2l6ZSAqICRpIC0gJHNpemU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJG1heC1udW0tb2YtY2hpbGRyZW46ICRtYXgtbnVtLW9mLWNoaWxkcmVuIC0gMTtcclxuICB9XHJcblxyXG4gID4gKiB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gQ3JlYXRlIGEgYmx1ciBlZmZlY3Qgd2l0aCBmYWxsYmFja3MgZm9yIHVuc3VwcG9ydGVkIGJyb3dzZXJzLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQHBhcmFtIHtjb2xvcn0gJGNvbG9yIC0gVGhlIGJhY2tncm91bmQtY29sb3Igb2YgdGhlIGVsZW1lbnQuXHJcbi8vLyBAcGFyYW0ge251bX0gJG9wYWNpdHkgWzg1JV0gLSBUaGUgbGV2ZWwgb2Ygb3BhY2l0eSBkZXNpcmVkLlxyXG5AbWl4aW4gZnJvc3RlZEdsYXNzKCRjb2xvcjogJGxpZ2h0LCAkb3BhY2l0eTogODUlKSB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsICRvcGFjaXR5KTtcclxuXHJcbiAgQHN1cHBvcnRzIChiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCkpIHtcclxuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcclxuXHJcbiAgICBAaWYgKCRvcGFjaXR5IC0gMjAlID4gMCkge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgJG9wYWNpdHkgLSAyMCUpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gRGVsaXZlcnMgYnVsbGV0cHJvb2YgaG92ZXIgc3R5bGluZyB0aGF0IHByZXZlbnRzIHRvdWNoIGV2ZW50cyBmcm9tIHRyaWdnZXJpbmdcclxuLy8vIHNpbmNlIDk5JSBvZiB0aGUgdGltZSB0aGF0J3Mgbm90IHdoYXQgeW91IHdhbnQuIEluY2x1ZGVzIGZhbGxiYWNrcyBmb3Igb2xkZXIgYnJvd3NlcnMuXHJcbi8vLyBXZSB1c2VkIHRvIHVzZSBhbnktcG9pbnRlcjogZmluZSBidXQgZm9yIHNvbWUgcmVhc29uIHRoYXQgd2FzIGFsd2F5cyByZXR1cm5pbmcgdHJ1ZVxyXG4vLy8gb24gQW5kcm9pZCBkZXZpY2VzLCBldmVuIHdpdGggbm8gbW91c2UgYXR0YWNoZWQuIFNvIGl0J3MgYmFjayB0byByZWd1bGFyIG9sZCBwb2ludGVyOiBmaW5lLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQGNvbnRlbnRcclxuQG1peGluIGhvdmVyKCkge1xyXG4gIEBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFtkYXRhLWJyb3dzZXI9XCJpZVwiXSAmOmhvdmVyIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgLmllICY6aG92ZXIge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gRGVsaXZlcnMgYnVsbGV0cHJvb2YgZm9jdXMtdmlzaWJsZSBzdHlsaW5nIHdpdGggZmFsbGJhY2tzIGZvciBvbGRlciBicm93c2Vycy4gUmVxdWlyZXNcclxuLy8vIGEgSlMgcG9seWZpbGwgKFdJQ0cgZm9jdXMtdmlzaWJsZSkgZm9yIG9sZGVyIGJyb3dzZXJzLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQGNvbnRlbnRcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9XSUNHL2ZvY3VzLXZpc2libGVcclxuQG1peGluIGZvY3VzKCkge1xyXG4gICYuZm9jdXMtdmlzaWJsZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcblxyXG4gICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBAbWl4aW4gaG92ZXIgYW5kIEBtaXhpbiBmb2N1cyBzdHlsaW5nIGluIG9uZSBtaXhpbi5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBjb250ZW50XHJcbkBtaXhpbiBob3ZlckFuZEZvY3VzKCkge1xyXG4gIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgIEBjb250ZW50O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgZm9jdXMge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gQWNjZXNzaWJsZSBiYWNrZ3JvdW5kcyEgRW5zdXJlIHlvdXIgZWxlbWVudHMgYWx3YXlzIGhhdmUgcHJvcGVyIGNvbnRyYXN0IGJ5IHNldHRpbmcgYm90aCBiYWNrZ3JvdW5kLWNvbG9yIGFuZCBjb2xvciBwcm9wZXJ0aWVzLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRiZyAtIFRoZSBiYWNrZ3JvdW5kIHRvIHVzZSBmb3IgdGhlIGVsZW1lbnQuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJHRleHREYXJrIFtkYXJrXSAtIFRleHQgY29sb3IgdG8gdXNlIHdoZW4gZWxlbWVudCdzIGJhY2tncm91bmQgaXMgYWJvdmUgYSBjZXJ0YWluIHRocmVzaG9sZCBpbiBsaWdodG5lc3MuIE9ubHkgdXNlZCBpZiAkYmcgaXMgYSBzYXNzIHZhcmlhYmxlLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICR0ZXh0TGlnaHQgW3doaXRlXSAtIFRleHQgY29sb3IgdG8gdXNlIHdoZW4gZWxlbWVudCdzIGJhY2tncm91bmQgaXMgYmVsb3cgYSBjZXJ0YWluIHRocmVzaG9sZCBpbiBsaWdodG5lc3MuIE9ubHkgdXNlZCBpZiAkYmcgaXMgYSBzYXNzIHZhcmlhYmxlLlxyXG5AbWl4aW4gYmdXaXRoQ29udHJhc3QoJGJnLCAkdGV4dERhcms6IGJsYWNrLCAkdGV4dExpZ2h0OiB3aGl0ZSkge1xyXG4gIC8vIENoZWNrIGlmIHBhcmFtZXRlciBpcyBhIGNzcyBjdXN0b20gcHJvcGVydHkuIFRoZSB2YWx1ZSBvZiBjdXN0b20gcHJvcGVydGllcyBhcmUgbm90XHJcbiAgLy8ga25vd24gYXQgY29tcGlsZSB0aW1lIHRoZXJlZm9yZSB3ZSBkbyBub3QgY2FsY3VsYXRlIGNvbnRyYXN0IGhlcmUuXHJcbiAgQGlmIChzdHJpbmcuaW5kZXgoXCIjeyRiZ31cIiwgXCItLVwiKSkge1xyXG4gICAgJGJnOiB1bndyYXAtY3VzdG9tLXByb3AoJGJnKTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigjeyRiZ30pO1xyXG4gICAgY29sb3I6IHZhcigjeyRiZ30jey1jb250cmFzdH0pO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xyXG5cclxuICAgICRyYXRpb1dpdGhEYXJrOiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCRiZywgJHRleHREYXJrKTtcclxuICAgICRyYXRpb1dpdGhMaWdodDogd2NhZy1jb250cmFzdC1yYXRpbygkYmcsICR0ZXh0TGlnaHQpO1xyXG5cclxuICAgIEBpZiAkcmF0aW9XaXRoRGFyayA8IDMgYW5kICRyYXRpb1dpdGhMaWdodCA8IDMge1xyXG4gICAgICBAZXJyb3IgXCJUaGUgY29sb3IgI3skYmd9IGRvZXMgbm90IG1lZXQgV0NBRyBBQSBtaW5pbXVtIGFjY2Vzc2liaWxpdHkgY29udHJhc3QgcmF0aW8gb2YgMzoxLiBQbGVhc2UgY2hvb3NlIGEgZGlmZmVyZW50IGNvbG9yIGNvbWJpbmF0aW9uLlwiO1xyXG4gICAgfSBAZWxzZSBpZiAkcmF0aW9XaXRoRGFyayA8IDQuNSBhbmQgJHJhdGlvV2l0aExpZ2h0IDwgNC41IHtcclxuICAgICAgQHdhcm4gXCJUaGUgY29sb3IgI3skYmd9IGRvZXMgbm90IG1lZXQgV0NBRyBBQSBtaW5pbXVtIGFjY2Vzc2liaWxpdHkgY29udHJhc3QgcmF0aW8gb2YgNC41OjEuIFBsZWFzZSBjb25maXJtIHRoYXQgYW55IHRleHQgaW5zaWRlIHRoaXMgZWxlbWVudCBpcyBncmVhdGVyIHRoYW4gMThweC5cIjtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJHJhdGlvV2l0aERhcmsgPj0kcmF0aW9XaXRoTGlnaHQge1xyXG4gICAgICBjb2xvcjogJHRleHREYXJrO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGNvbG9yOiAkdGV4dExpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIEFjY2Vzc2libGUgdGV4dCEgRW5zdXJlIHlvdXIgZWxlbWVudHMgYWx3YXlzIGhhdmUgcHJvcGVyIGNvbnRyYXN0IGJ5IHNldHRpbmcgYm90aCBjb2xvciBhbmQgYmFja2dyb3VuZC1jb2xvciBwcm9wZXJ0aWVzLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICR0ZXh0Q29sb3IgLSBUaGUgdGV4dCBjb2xvciB0byB1c2UgZm9yIHRoZSBlbGVtZW50LlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRiZ0RhcmsgW2RhcmtdIC0gQmFja2dyb3VuZCBjb2xvciB0byB1c2Ugd2hlbiBlbGVtZW50J3MgdGV4dCBpcyBhYm92ZSBhIGNlcnRhaW4gdGhyZXNob2xkIGluIGxpZ2h0bmVzcy4gT25seSB1c2VkIGlmICR0ZXh0Q29sb3IgaXMgYSBzYXNzIHZhcmlhYmxlLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRiZ0xpZ2h0IFt3aGl0ZV0gLSBCYWNrZ3JvdW5kIGNvbG9yIHRvIHVzZSB3aGVuIGVsZW1lbnQncyB0ZXh0IGlzIGJlbG93IGEgY2VydGFpbiB0aHJlc2hvbGQgaW4gbGlnaHRuZXNzLiBPbmx5IHVzZWQgaWYgJHRleHRDb2xvciBpcyBhIHNhc3MgdmFyaWFibGUuXHJcbkBtaXhpbiBjb2xvcldpdGhDb250cmFzdCgkdGV4dENvbG9yLCAkYmdEYXJrOiBibGFjaywgJGJnTGlnaHQ6IHdoaXRlKSB7XHJcbiAgLy8gQ2hlY2sgaWYgcGFyYW1ldGVyIGlzIGEgY3NzIGN1c3RvbSBwcm9wZXJ0eS4gVGhlIHZhbHVlIG9mIGN1c3RvbSBwcm9wZXJ0aWVzIGFyZSBub3RcclxuICAvLyBrbm93biBhdCBjb21waWxlIHRpbWUgdGhlcmVmb3JlIHdlIGRvIG5vdCBjYWxjdWxhdGUgY29udHJhc3QgaGVyZS5cclxuICBAaWYgKHN0cmluZy5pbmRleChcIiN7JHRleHRDb2xvcn1cIiwgXCItLVwiKSkge1xyXG4gICAgJHRleHRDb2xvcjogdW53cmFwLWN1c3RvbS1wcm9wKCR0ZXh0Q29sb3IpO1xyXG4gICAgY29sb3I6IHZhcigjeyR0ZXh0Q29sb3J9KTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigjeyR0ZXh0Q29sb3J9I3stY29udHJhc3R9KTtcclxuICB9IEBlbHNlIHtcclxuICAgIGNvbG9yOiAkdGV4dENvbG9yO1xyXG5cclxuICAgICRyYXRpb1dpdGhEYXJrOiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCR0ZXh0Q29sb3IsICRiZ0RhcmspO1xyXG4gICAgJHJhdGlvV2l0aExpZ2h0OiB3Y2FnLWNvbnRyYXN0LXJhdGlvKCR0ZXh0Q29sb3IsICRiZ0xpZ2h0KTtcclxuXHJcbiAgICBAaWYgJHJhdGlvV2l0aERhcmsgPCAzIGFuZCAkcmF0aW9XaXRoTGlnaHQgPCAzIHtcclxuICAgICAgQGVycm9yIFwiVGhlIGNvbG9yICN7JHRleHRDb2xvcn0gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiAzOjEuIFBsZWFzZSBjaG9vc2UgYSBkaWZmZXJlbnQgY29sb3IgY29tYmluYXRpb24uXCI7XHJcbiAgICB9IEBlbHNlIGlmICRyYXRpb1dpdGhEYXJrIDwgNC41IGFuZCAkcmF0aW9XaXRoTGlnaHQgPCA0LjUge1xyXG4gICAgICBAd2FybiBcIlRoZSBjb2xvciAjeyR0ZXh0Q29sb3J9IGRvZXMgbm90IG1lZXQgV0NBRyBBQSBtaW5pbXVtIGFjY2Vzc2liaWxpdHkgY29udHJhc3QgcmF0aW8gb2YgNC41OjEuIFBsZWFzZSBjb25maXJtIHRoYXQgYW55IHRleHQgaW5zaWRlIHRoaXMgZWxlbWVudCBpcyBncmVhdGVyIHRoYW4gMThweC5cIjtcclxuICAgIH1cclxuXHJcbiAgICBAaWYgJHJhdGlvV2l0aERhcmsgPj0kcmF0aW9XaXRoTGlnaHQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmdEYXJrO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiZ0xpZ2h0O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIFJldHVybnMgYSBjb250cmFzdGluZyBjb2xvciB2YWx1ZSB0byB0aGUgZ2l2ZW4gY29sb3IuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGNvbG9yIC0gVGhlIGNvbG9yIHRvIGNvbnRyYXN0IGFnYWluLlxyXG4vLy8gQHBhcmFtIHtzdHJpbmd9ICRkYXJrIFtkYXJrXSAtIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIHdoZW4gJGNvbG9yIGlzIGFib3ZlIGEgY2VydGFpbiB0aHJlc2hvbGQgaW4gbGlnaHRuZXNzLiBPbmx5IHVzZWQgaWYgJGNvbG9yIGlzIGEgc2FzcyB2YXJpYWJsZS5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkbGlnaHQgW3doaXRlXSAtIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIHdoZW4gJGNvbG9yIGlzIGJlbG93IGEgY2VydGFpbiB0aHJlc2hvbGQgaW4gbGlnaHRuZXNzLiBPbmx5IHVzZWQgaWYgJGNvbG9yIGlzIGEgc2FzcyB2YXJpYWJsZS5cclxuLy8vIEByZXR1cm4ge3N0cmluZ30gLSBMaWdodCBvciBkYXJrIGRlcGVuZGluZyBvbiB0aGUgY29sb3IgZ2l2ZW4uXHJcbkBmdW5jdGlvbiBjYWxjLWNvbnRyYXN0KCRjb2xvciwgJGRhcms6IGJsYWNrLCAkbGlnaHQ6IHdoaXRlKSB7XHJcbiAgQGlmIChzdHJpbmcuaW5kZXgoXCIjeyRjb2xvcn1cIiwgXCItLVwiKSkge1xyXG4gICAgJGNvbG9yOiB1bndyYXAtY3VzdG9tLXByb3AoJGNvbG9yKTtcclxuICAgIEByZXR1cm4gdmFyKCN7JGNvbG9yfSN7LWNvbnRyYXN0fSk7XHJcbiAgfSBAZWxzZSB7XHJcbiAgICAkcmF0aW9XaXRoRGFyazogd2NhZy1jb250cmFzdC1yYXRpbygkY29sb3IsICRkYXJrKTtcclxuICAgICRyYXRpb1dpdGhMaWdodDogd2NhZy1jb250cmFzdC1yYXRpbygkY29sb3IsICRsaWdodCk7XHJcblxyXG4gICAgQGlmICRyYXRpb1dpdGhEYXJrIDwgMyBhbmQgJHJhdGlvV2l0aExpZ2h0IDwgMyB7XHJcbiAgICAgIEBlcnJvciBcIlRoZSBjb2xvciAjeyRjb2xvcn0gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiAzOjEuIFBsZWFzZSBjaG9vc2UgYSBkaWZmZXJlbnQgY29sb3IgY29tYmluYXRpb24uXCI7XHJcbiAgICB9IEBlbHNlIGlmICRyYXRpb1dpdGhEYXJrIDwgNC41IGFuZCAkcmF0aW9XaXRoTGlnaHQgPCA0LjUge1xyXG4gICAgICBAd2FybiBcIlRoZSBjb2xvciAjeyRjb2xvcn0gZG9lcyBub3QgbWVldCBXQ0FHIEFBIG1pbmltdW0gYWNjZXNzaWJpbGl0eSBjb250cmFzdCByYXRpbyBvZiA0LjU6MS4gUGxlYXNlIGNvbmZpcm0gdGhhdCBhbnkgdGV4dCBpbnNpZGUgdGhpcyBlbGVtZW50IGlzIGdyZWF0ZXIgdGhhbiAxOHB4LlwiO1xyXG4gICAgfVxyXG5cclxuICAgIEBpZiAkcmF0aW9XaXRoRGFyayA+PSRyYXRpb1dpdGhMaWdodCB7XHJcbiAgICAgIEByZXR1cm4gJGRhcms7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQHJldHVybiAkbGlnaHQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AZnVuY3Rpb24gdmFyLXJnYmEoJGNvbG9yLCAkb3BhY2l0eTogMSkge1xyXG4gICRvcGFjaXR5OiB2YWxpZGF0ZS1hbmQtd3JhcC1pZi1jdXN0b20tcHJvcCgkb3BhY2l0eSk7XHJcbiAgJGNvbG9yOiB2YWxpZGF0ZS1hbmQtd3JhcC1pZi1jdXN0b20tcHJvcCgkY29sb3IpO1xyXG5cclxuICAkcGVyY2VudGFnZTogY2FsYygjeyRvcGFjaXR5fSAqIDEwMCUpO1xyXG5cclxuICBAcmV0dXJuIGNvbG9yLW1peChpbiBzcmdiLCAjeyRjb2xvcn0gI3skcGVyY2VudGFnZX0sIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuQGZ1bmN0aW9uIHZhci1saWdodGVuKCRjb2xvciwgJGFkanVzdG1lbnQ6IDAlKSB7XHJcbiAgQGlmIChnZXQtdW5pdCgkYWRqdXN0bWVudCkgPT0gXCIlXCIpIHtcclxuICAgICRhZGp1c3RtZW50OiBtYXRoLmRpdigkYWRqdXN0bWVudCwgMTAwJSk7XHJcbiAgICAkY29sb3I6IHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCRjb2xvcik7XHJcblxyXG4gICAgQHJldHVybiBva2xjaChmcm9tICN7JGNvbG9yfSBtaW4oY2FsYyhsICsgKGwgKiAjeyRhZGp1c3RtZW50fSkpLCAjezF9KSBjIGgpO1xyXG4gIH0gQGVsc2Uge1xyXG4gICAgQGVycm9yIFwiVGhlIGFkanVzdG1lbnQgI3skYWRqdXN0bWVudH0gbXVzdCBiZSBhIHBlcmNlbnRhZ2UuXCI7XHJcbiAgfVxyXG59XHJcblxyXG5AZnVuY3Rpb24gdmFyLWRhcmtlbigkY29sb3IsICRhZGp1c3RtZW50OiAwJSkge1xyXG4gIEBpZiAoZ2V0LXVuaXQoJGFkanVzdG1lbnQpID09IFwiJVwiKSB7XHJcbiAgICAkYWRqdXN0bWVudDogbWF0aC5kaXYoJGFkanVzdG1lbnQsIDEwMCUpO1xyXG4gICAgJGNvbG9yOiB2YWxpZGF0ZS1hbmQtd3JhcC1pZi1jdXN0b20tcHJvcCgkY29sb3IpO1xyXG5cclxuICAgIEByZXR1cm4gb2tsY2goZnJvbSAjeyRjb2xvcn0gbWF4KGNhbGMobCAtIChsICogI3skYWRqdXN0bWVudH0pKSwgI3swfSkgYyBoKTtcclxuICB9IEBlbHNlIHtcclxuICAgIEBlcnJvciBcIlRoZSBhZGp1c3RtZW50ICN7JGFkanVzdG1lbnR9IG11c3QgYmUgYSBwZXJjZW50YWdlLlwiO1xyXG4gIH1cclxufVxyXG5cclxuLy8vIFNldHMgYmFja2dyb3VuZC1wb3NpdGlvbiBjc3MgYmFzZWQgb24gW2RhdGEtYmctcG9zPVwieCB5XCJdLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG5AbWl4aW4gYmdQb3MoKSB7XHJcbiAgJltkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlO1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDA7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwidG9wIHJpZ2h0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLWJnLXBvcz1cImNlbnRlclwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLWJnLXBvcz1cImNlbnRlciByaWdodFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcclxuICB9XHJcblxyXG4gICZbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgfVxyXG5cclxuICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIHJpZ2h0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgMTAwJTtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBUcmlnZ2VycyBzdHlsaW5nIGJhc2VkIG9uIHdoZXRoZXIgYSBnaXZlbiBkaWFsb2cgaXMgYWN0aXZlIG9yIG5vdC4gQ2FuIGJlIHVzZWQgbmVzdGVkIG9yIHN0YW5kYWxvbmUuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGlkIC0gVGhlIGlkIG9mIGEgZGlhbG9nLlxyXG4vLy8gQGNvbnRlbnQgLSBvcHRpb25hbFxyXG5AbWl4aW4gYWN0aXZlRGlhbG9nKCRpZCkge1xyXG4gIEBpZiAmIHtcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCIjeyRpZH1cIl0gJiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cIiN7JGlkfVwiXSB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLy8vIFRyaWdnZXJzIHN0eWxpbmcgYmFzZWQgb24gd2hldGhlciBhIGdpdmVuIHpvbmUgaXMgYWN0aXZlIG9yIG5vdC4gQ2FuIGJlIHVzZWQgbmVzdGVkIG9yIHN0YW5kYWxvbmUuXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGlkIC0gVGhlIGlkIG9mIGEgem9uZS5cclxuLy8vIEBjb250ZW50IC0gb3B0aW9uYWxcclxuQG1peGluIGFjdGl2ZVpvbmUoJGlkKSB7XHJcbiAgQGlmICYge1xyXG4gICAgW2RhdGEtYWN0aXZlLXpvbmU9XCIjeyRpZH1cIl0gJiB7XHJcbiAgICAgIEBjb250ZW50O1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgW2RhdGEtYWN0aXZlLXpvbmU9XCIjeyRpZH1cIl0ge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBSZXR1cm5zIGFzcGVjdC1yYXRpbyB3aXRoIHN1cHBvcnQgZm9yIG9sZGVyIGJyb3dzZXJzIHVzaW5nIHBhZGRpbmctYm90dG9tIHBlcmNlbnRhZ2UgdHJpY2suXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbi8vLyBAcGFyYW0ge251bX0gJGggLSBUaGUgaG9yaXpvbnRhbCBhc3BlY3QgcmF0aW8gb2YgdGhlIGVsZW1lbnQuXHJcbi8vLyBAcGFyYW0ge251bX0gJHYgLSBUaGUgdmVydGljYWwgYXNwZWN0IHJhdGlvIG9mIHRoZSBlbGVtZW50LlxyXG5AbWl4aW4gYXNwZWN0UmF0aW8oJGgsICR2KSB7XHJcbiAgQHN1cHBvcnRzIChhc3BlY3QtcmF0aW86IDEgLyAxKSB7XHJcbiAgICBhc3BlY3QtcmF0aW86ICRoICN7XCIvXCJ9ICR2O1xyXG4gIH1cclxuXHJcbiAgQHN1cHBvcnRzIG5vdCAoYXNwZWN0LXJhdGlvOiAxIC8gMSkge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogbWF0aC5kaXYoJHYsICRoKSAqIDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLy8gVHJpZ2dlcnMgc3R5bGluZyBiYXNlZCBvbiB3aGV0aGVyIGFueSBkaXNjb3ZlcnkgdG9vbCBkaWFsb2dzIGFyZSBhY3RpdmUuIENhbiBiZSB1c2VkIG5lc3RlZCBvciBzdGFuZGFsb25lLlxyXG4vLy8gQGF1dGhvciBCZW4gUmljaGFyZHNvblxyXG4vLy8gQGNvbnRlbnQgLSBvcHRpb25hbFxyXG5AbWl4aW4gZGlzY292ZXJ5VG9vbHNBY3RpdmUoKSB7XHJcbiAgQGlmICYge1xyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImNoZWNrbGlzdFwiXSAmLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImZhcVwiXSAmLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImdsb3NzYXJ5XCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiYWNoaWV2ZW1lbnRzXCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwicmVzb3VyY2VzXCJdICYsXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxQ29uZmlybVF1ZXN0aW9uTWVzc2FnZVwiXSAmLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImZhcVF1ZXN0aW9uU3VibWl0dGVkTWVzc2FnZVwiXSAmIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiY2hlY2tsaXN0XCJdLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImZhcVwiXSxcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJnbG9zc2FyeVwiXSxcclxuICAgIFtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJhY2hpZXZlbWVudHNcIl0sXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwicmVzb3VyY2VzXCJdLFxyXG4gICAgW2RhdGEtYWN0aXZlLWRpYWxvZz1cImZhcUNvbmZpcm1RdWVzdGlvbk1lc3NhZ2VcIl0sXHJcbiAgICBbZGF0YS1hY3RpdmUtZGlhbG9nPVwiZmFxUXVlc3Rpb25TdWJtaXR0ZWRNZXNzYWdlXCJdIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AZnVuY3Rpb24gd2NhZy1jb250cmFzdC1yYXRpbygkY29sb3IxLCAkY29sb3IyKSB7XHJcbiAgJGwxOiB3Y2FnLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XHJcbiAgJGwyOiB3Y2FnLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XHJcbiAgJHJhdGlvOiBtYXRoLmRpdigkbDEsICRsMik7XHJcblxyXG4gIEBpZiAkbDIgPiRsMSB7XHJcbiAgICAkcmF0aW86IG1hdGguZGl2KDEsICRyYXRpbyk7XHJcbiAgfVxyXG5cclxuICBAcmV0dXJuICRyYXRpbztcclxufVxyXG5cclxuLy8vIFJldHVybnMgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYCBhcyBhIGZsb2F0IChiZXR3ZWVuIDAgYW5kIDEpXHJcbi8vLyAxIGlzIHB1cmUgd2hpdGUsIDAgaXMgcHVyZSBibGFja1xyXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3JcclxuLy8vIEByZXR1cm4ge051bWJlcn1cclxuLy8vIEBsaW5rIGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWYgUmVmZXJlbmNlXHJcbkBmdW5jdGlvbiB3Y2FnLWx1bWluYW5jZSgkY29sb3IpIHtcclxuICAkcmdiOiAoXHJcbiAgICBcInJcIjogY29sb3IuY2hhbm5lbCgkY29sb3IsIFwicmVkXCIsICRzcGFjZTogcmdiKSxcclxuICAgIFwiZ1wiOiBjb2xvci5jaGFubmVsKCRjb2xvciwgXCJncmVlblwiLCAkc3BhY2U6IHJnYiksXHJcbiAgICBcImJcIjogY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiYmx1ZVwiLCAkc3BhY2U6IHJnYilcclxuICApO1xyXG5cclxuICBAZWFjaCAkY2hhbm5lbCwgJHZhbHVlIGluICRyZ2Ige1xyXG4gICAgJHZhbHVlOiBtYXRoLmRpdigkdmFsdWUsIDI1NSk7XHJcblxyXG4gICAgQGlmICR2YWx1ZSA8IDAuMDM5Mjgge1xyXG4gICAgICAkdmFsdWU6IG1hdGguZGl2KCR2YWx1ZSwgMTIuOTIpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICR2YWx1ZTogbWF0aC5kaXYoJHZhbHVlICsgMC4wNTUsIDEuMDU1KTtcclxuICAgICAgJHZhbHVlOiBtYXRoLnBvdygkdmFsdWUsIDIuNCk7XHJcbiAgICB9XHJcblxyXG4gICAgJHJnYjogbWFwLm1lcmdlKFxyXG4gICAgICAkcmdiLFxyXG4gICAgICAoXHJcbiAgICAgICAgJGNoYW5uZWw6ICR2YWx1ZVxyXG4gICAgICApXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgQHJldHVybiAobWFwLmdldCgkcmdiLCBcInJcIikgKiAwLjIxMjYpICsgKG1hcC5nZXQoJHJnYiwgXCJnXCIpICogMC43MTUyKSArIChtYXAuZ2V0KCRyZ2IsIFwiYlwiKSAqIDAuMDcyMik7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiB2YWxpZGF0ZS1hbmQtd3JhcC1pZi1jdXN0b20tcHJvcCgkcHJvcCkge1xyXG4gIEBpZiAoc3RyaW5nLmluZGV4KCN7JHByb3B9LCBcInZhcihcIikpIHtcclxuICAgICR1bndyYXBwZWQ6IHN0cmluZy5zbGljZSgjeyRwcm9wfSwgJHN0YXJ0LWF0OiBzdHJpbmcuaW5kZXgoI3skcHJvcH0sIFwidmFyKFwiKSArIDQsICRlbmQtYXQ6IHN0cmluZy5sZW5ndGgoI3skcHJvcH0pIC0gMSk7XHJcbiAgICBAcmV0dXJuIHZhbGlkYXRlLWFuZC13cmFwLWlmLWN1c3RvbS1wcm9wKCR1bndyYXBwZWQpO1xyXG4gIH0gQGVsc2UgaWYgKHN0cmluZy5pbmRleChcIiN7JHByb3B9XCIsIFwiLS1cIikpIHtcclxuICAgIEByZXR1cm4gdmFyKCN7JHByb3B9KTtcclxuICB9IEBlbHNlIHtcclxuICAgIEByZXR1cm4gJHByb3A7XHJcbiAgfVxyXG59XHJcblxyXG5AZnVuY3Rpb24gdW53cmFwLWN1c3RvbS1wcm9wKCRwcm9wKSB7XHJcbiAgQGlmIChzdHJpbmcuaW5kZXgoI3skcHJvcH0sIFwidmFyKFwiKSkge1xyXG4gICAgJHVud3JhcHBlZDogc3RyaW5nLnNsaWNlKCN7JHByb3B9LCAkc3RhcnQtYXQ6IHN0cmluZy5pbmRleCgjeyRwcm9wfSwgXCJ2YXIoXCIpICsgNCwgJGVuZC1hdDogc3RyaW5nLmxlbmd0aCgjeyRwcm9wfSkgLSAxKTtcclxuXHJcbiAgICBAaWYgKHN0cmluZy5pbmRleCgkdW53cmFwcGVkLCBcInZhcihcIikpIHtcclxuICAgICAgQHJldHVybiB1bndyYXAtY3VzdG9tLXByb3AoJHVud3JhcHBlZCk7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgQHJldHVybiAkdW53cmFwcGVkO1xyXG4gICAgfVxyXG4gIH0gQGVsc2Uge1xyXG4gICAgQHJldHVybiAkcHJvcDtcclxuICB9XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBzdHItbGFzdC1pbmRleCgkc3RyaW5nLCAkc3Vic3RyaW5nKSB7XHJcbiAgJGxhc3QtaW5kZXg6IG51bGw7XHJcbiAgJGxlbmd0aDogc3RyaW5nLmxlbmd0aCgkc3RyaW5nKTtcclxuICAkc3ViLWxlbmd0aDogc3RyaW5nLmxlbmd0aCgkc3Vic3RyaW5nKTtcclxuXHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGxlbmd0aCAtICRzdWItbGVuZ3RoICsgMSkge1xyXG4gICAgQGlmIHN0cmluZy5zbGljZSgkc3RyaW5nLCAkaSwgJGkgKyAkc3ViLWxlbmd0aCAtIDEpID09JHN1YnN0cmluZyB7XHJcbiAgICAgICRsYXN0LWluZGV4OiAkaTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEByZXR1cm4gJGxhc3QtaW5kZXg7XHJcbn1cclxuXHJcbkBmdW5jdGlvbiBnZXQtdW5pdCgkdmFsdWUpIHtcclxuICBAcmV0dXJuIHN0cmluZy5zbGljZSgkdmFsdWUgKiAwICsgXCJcIiwgMiwgLTEpO1xyXG59XHJcblxyXG5AZnVuY3Rpb24gc2xpY2UtbGlzdCgkbGlzdCwgJHN0YXJ0LCAkZW5kOiBudWxsKSB7XHJcbiAgJGVuZDogaWYoJGVuZCA9PSBudWxsLCBsaXN0Lmxlbmd0aCgkbGlzdCksICRlbmQpO1xyXG4gICRyZXN1bHQ6ICgpO1xyXG4gIEBmb3IgJGkgZnJvbSAkc3RhcnQgdGhyb3VnaCAkZW5kIHtcclxuICAgICRyZXN1bHQ6IGxpc3QuYXBwZW5kKCRyZXN1bHQsIGxpc3QubnRoKCRsaXN0LCAkaSkpO1xyXG4gIH1cclxuICBAcmV0dXJuICRyZXN1bHQ7XHJcbn1cclxuXHJcbi8qKiBERUZBVUxUIE9WRVJSSURFUyAqKi9cclxuXHJcbi8vLyBSZW1vdmUgYWxsIGRlZmF1bHQgc3R5bGVzIGZyb20gYnV0dG9uc1xyXG4vLy8gQGF1dGhvciBLb3VydG5leSBTdHJpY2tsYW5kXHJcbkBtaXhpbiByZXNldEJ1dHRvbigpIHtcclxuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IDBweDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIG91dGxpbmU6IDBweDtcclxuICBkaXNwbGF5OiBibG9jaztcclxuICB0ZXh0LWFsaWduOiB1bnNldDtcclxuICBhbGlnbi1pdGVtczogdW5zZXQ7XHJcbiAgcGFkZGluZzogMHB4O1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBjb2xvcjogdW5zZXQ7XHJcbn1cclxuXHJcbi8vLyBBcHBseSBzdHlsaW5nIHRvIGEgcGFyZW50IGJhc2VkIG9uIG51bWJlciBvZiBjaGlsZHJlbi5cclxuLy8vIEBhdXRob3IgQmVuIFJpY2hhcmRzb25cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkbnVtIC0gVGhlIG51bWJlciBvZiBjaGlsZHJlbiB0byBjaGVjay5cclxuLy8vIEBwYXJhbSB7Ym9vbGVhbn0gJG9yTW9yZSBbZmFsc2VdIC0gQXBwbGllcyBpZiBlbGVtZW50IGhhcyBhYm92ZSB0aGUgZ2l2ZW4gbnVtYmVyIG9mIGNoaWxkcmVuLlxyXG4vLy8gQHBhcmFtIHtib29sZWFufSAkb3JMZXNzIFtmYWxzZV0gLSBBcHBsaWVzIGlmIGVsZW1lbnQgaGFzIGJlbG93IHRoZSBnaXZlbiBudW1iZXIgb2YgY2hpbGRyZW4uXHJcbi8vLyBAbGluayBodHRwczovL2Nzcy10aXAuY29tL251bWJlci1lbGVtZW50cy1oYXMtc2VsZWN0b3IvXHJcbkBtaXhpbiBoYXNOdW1iZXJPZkNoaWxkcmVuKCRudW0sICRvck1vcmU6IGZhbHNlLCAkb3JMZXNzOiBmYWxzZSkge1xyXG4gIEBpZiAoJG9yTW9yZSA9PXRydWUgYW5kICRvckxlc3MgPT10cnVlKSB7XHJcbiAgICBAZXJyb3IgXCJBYm92ZSBhbmQgYmVsb3cgY2Fubm90IGJvdGggYmUgdHJ1ZS5cIjtcclxuICB9XHJcblxyXG4gIEBpZiAoJG51bSA9PTApIHtcclxuICAgICY6bm90KDpoYXMoKikpIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBAaWYgKCRvck1vcmUgPT10cnVlKSB7XHJcbiAgICAgICY6aGFzKD4gOm50aC1jaGlsZCgjeyRudW19KSkge1xyXG4gICAgICAgIEBjb250ZW50O1xyXG4gICAgICB9XHJcbiAgICB9IEBlbHNlIGlmICgkb3JMZXNzID09dHJ1ZSkge1xyXG4gICAgICAmOmhhcyg+IDpsYXN0LWNoaWxkOm50aC1jaGlsZCgtbiArICN7JG51bX0pKSB7XHJcbiAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmhhcyg+IDpsYXN0LWNoaWxkOm50aC1jaGlsZCgjeyRudW19KSkge1xyXG4gICAgICBAY29udGVudDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBUcmlnZ2VyIHN0eWxpbmcgYmFzZWQgb24gd2hldGhlciBhbnkgZGlhbG9nIGlzIG9wZW4uXHJcbi8vLyBAYXV0aG9yIEJlbiBSaWNoYXJkc29uXHJcbkBtaXhpbiBpc0FueURpYWxvZ09wZW4oKSB7XHJcbiAgQGlmICYge1xyXG4gICAgaHRtbFtkYXRhLWRpYWxvZy1oaWRlLW92ZXJmbG93PVwidHJ1ZVwiXSAmIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSB7XHJcbiAgICBodG1sW2RhdGEtZGlhbG9nLWhpZGUtb3ZlcmZsb3c9XCJ0cnVlXCJdIHtcclxuICAgICAgQGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuQHVzZSBcInNoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5AdXNlIFwibWV0YS1taXhpbnNcIiBhcyAqO1xyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gIC5maWVsZFdyYXBwZXIsXHJcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuc2hvcnRhbnN3ZXIsXHJcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSxcclxuICAudW1icmFjby1mb3Jtcy1maWVsZC5wYXNzd29yZCB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG5cclxuICAgIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCkge1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pIHtcclxuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0OjotbXMtcmV2ZWFsLFxyXG4gICAgaW5wdXQ6Oi1tcy1jbGVhciB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICBmb250LXNpemU6IDAuODRlbTtcclxuICAgICAgY29sb3I6IHZhci1yZ2JhKC0tYmFzaWMsIDAuODUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZpZWxkV3JhcHBlcixcclxuICAudW1icmFjby1mb3Jtcy1maWVsZC5sb25nYW5zd2VyIHtcclxuICAgIHRleHRhcmVhIHtcclxuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgbWluLXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRyb3Bkb3duV3JhcHBlcixcclxuICAudW1icmFjby1mb3Jtcy1maWVsZC5kcm9wZG93biB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xyXG5cclxuICAgIHNlbGVjdCB7XHJcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyBmaWxsPSdibGFjaycgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDI0IDI0JyB3aWR0aD0nMjQnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zyc+PHBhdGggZD0nTTcgMTBsNSA1IDUtNXonLz48cGF0aCBkPSdNMCAwaDI0djI0SDB6JyBmaWxsPSdub25lJy8+PC9zdmc+XCIpO1xyXG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcclxuICAgICAgYmFja2dyb3VuZC1zaXplOiAyNXB4IDUwcHg7XHJcblxyXG4gICAgICAmOjotbXMtZXhwYW5kIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbFdyYXBwZXIsXHJcbiAgLmFkZy11bWJyYWNvLWZvcm1zLWNvbnRyb2x3cmFwcGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1saWdodC1ncmV5KTtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgIH1cclxuXHJcbiAgICAuY29udHJvbCB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgbGFiZWwge1xyXG4gICAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogNnB4O1xyXG4gICAgICBmb250LXNpemU6IDAuODRlbTtcclxuICAgICAgY29sb3I6IHZhci1yZ2JhKC0tYmFzaWMsIDAuODUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9UaGVzZSBzdHlsZSBpcyBqdXN0IHVzZWQgZm9yIHRoZSBIb25leXBvdCBmZWF0dXJlLiBUaGVzZSBzdHlsZXMga2VlcCB0aGUgZmllbGQgZnJvbSBiZWluZyBzZWVuIGJ5IGh1bWFucyBhbmQgdGhleSBzaG91bGQgbm90IGJlIGNoYW5nZWQgb3IgcmVtb3ZlZC5cclxuICAuZmllbGRXcmFwcGVyLmVucm9sbGVlTmFtZSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgQGluY2x1ZGUgYWJzb2x1dGU7XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHotaW5kZXg6IC0xO1xyXG4gIH1cclxuXHJcbiAgLnN0eWxlZEZpZWxkc2V0LFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkc2V0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhci1yZ2JhKC0tbGlnaHQtZ3JleSwgMC40KTtcclxuICAgIG1pbi13aWR0aDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIGxlZ2VuZCxcclxuICAgIC5ncm91cExlZ2VuZCB7XHJcbiAgICAgIHBhZGRpbmc6IDRweCA4cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYmFzaWMpO1xyXG4gICAgfVxyXG5cclxuICAgIC5ncm91cExlZ2VuZCB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5maWVsZHNldEdyaWQge1xyXG4gICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcbiAgICAgIGdhcDogMTJweDtcclxuXHJcbiAgICAgIC5maWVsZFdyYXBwZXIsXHJcbiAgICAgIC5jb250cm9sV3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZmllbGRXcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLnNob3J0YW5zd2VyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRhdGUsXHJcbiAgLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQge1xyXG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XHJcblxyXG4gICAgbGFiZWw6bm90KC5jaGVja2JveExhYmVsKSB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA4cHg7XHJcbiAgICAgIGxlZnQ6IDhweDtcclxuICAgICAgei1pbmRleDogMjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIG1hcmdpbjogMCAwIDVweDtcclxuICAgICAgYm9yZGVyOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgICAgY29sb3I6IHZhcigtLWJhc2ljKTtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dDpub3QoW3R5cGU9XCJjaGVja2JveFwiXSk6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdCguaXRpX19zZWFyY2gtaW5wdXQpLFxyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNDhweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogMjNweCA4cHggNnB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnNob3dIaWRlIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBoZWlnaHQ6IDUzcHg7XHJcbiAgICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG5cclxuICAgICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1icmlnaHQpO1xyXG5cclxuICAgICAgICAuaWNvbjphZnRlciB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWJyaWdodCkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJlthcmlhLWNoZWNrZWQ9XCJ0cnVlXCJdIHtcclxuICAgICAgICAuaWNvbjphZnRlciB7XHJcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgd2lkdGg6IDNweDtcclxuICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goLTQ1ZGVnKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgI1Bhc3N3b3JkOmZvY3VzICsgI3JlcXVpcmVtZW50cyB7XHJcbiAgICAgIG1heC1oZWlnaHQ6IDEwMDBweDtcclxuICAgIH1cclxuICAgICNyZXF1aXJlbWVudHMge1xyXG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xyXG4gICAgICBwYWRkaW5nOiAxMHB4IDAgMCAwO1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIG1heC1oZWlnaHQ6IDA7XHJcbiAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgJHNsb3cgZWFzZS1pbi1vdXQ7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgICAmLnZhbGlkIHtcclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1jb3JyZWN0KTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg4ZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjFlbTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0td3JvbmcpO1xyXG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgICAgaGVpZ2h0OiAxNnB4O1xyXG4gICAgICAgICAgZm9udC1zaXplOiAwLjk1ZW07XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4xZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZHJvcGRvd25XcmFwcGVyLFxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmRyb3Bkb3duIHtcclxuICAgIGxhYmVsOm5vdCguY2hlY2tib3hMYWJlbCkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogOHB4O1xyXG4gICAgICBsZWZ0OiA4cHg7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDAgMCA1cHg7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgZm9udC1zaXplOiAwLjhlbTtcclxuICAgICAgZm9udC1mYW1pbHk6IHZhcigtLXByaW1hcnktZm9udCk7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1iYXNpYyk7XHJcbiAgICB9XHJcbiAgICBzZWxlY3Qge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNTJweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogMjZweCA0NXB4IDhweCA4cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC51bWJyYWNvLWZvcm1zLWZpZWxkLmxvbmdhbnN3ZXIge1xyXG4gICAgdGV4dGFyZWEge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNTZweDtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICAgICAgcGFkZGluZzogNnB4IDhweCA2cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvcm0sXHJcbiAgLmZvcm1XcmFwIHtcclxuICAgIC5lcnJvciB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBtYXJnaW46IDRweCAwO1xyXG4gICAgICBwYWRkaW5nOiAycHggNHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0td3JvbmcpO1xyXG4gICAgICAmOmVtcHR5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgICAuc3R5bGVkRmllbGRzZXQsXHJcbiAgICAudW1icmFjby1mb3Jtcy1maWVsZHNldCB7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcblxyXG4gICAgICAuZmllbGRzZXRHcmlkIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkeHhzKSB7XHJcbiAgICAuY29udHJvbFdyYXBwZXIge1xyXG4gICAgICBsYWJlbCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxZW07XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAbWVkaWEgKG1heC13aWR0aDogJHRpbnkpIHtcclxuICAgIC5jb250cm9sV3JhcHBlciB7XHJcbiAgICAgIGxhYmVsIHtcclxuICAgICAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uZmllbGRXcmFwcGVyLFxyXG4udW1icmFjby1mb3Jtcy1maWVsZC5zaG9ydGFuc3dlcixcclxuLnVtYnJhY28tZm9ybXMtZmllbGQuZGF0ZSxcclxuLnVtYnJhY28tZm9ybXMtZmllbGQucGFzc3dvcmQge1xyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udHJvbFdyYXBwZXIsXHJcbi5hZGctdW1icmFjby1mb3Jtcy1jb250cm9sd3JhcHBlciB7XHJcbiAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gID4gKjpsYXN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuICB9XHJcblxyXG4gIC5kZXNjcmlwdGlvbiB7XHJcbiAgICA+ICo6Zmlyc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi5zdHlsZWRGaWVsZHNldCxcclxuLnVtYnJhY28tZm9ybXMtZmllbGRzZXQge1xyXG4gID4gOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtZm9ybXNcIjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5cclxuI3JlcXVpcmVtZW50cyB7XHJcbiAgbGkge1xyXG4gICAgJi52YWxpZCB7XHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb250ZW50OiBcImFcIjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcInNoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5AdXNlIFwic2hhcmVkLW1peGluc1wiIGFzICo7XHJcblxyXG5AbGF5ZXIgcmVzZXQge1xyXG4gIC8vIEJveCBzaXppbmcgcnVsZXNcclxuICAqLFxyXG4gICo6OmJlZm9yZSxcclxuICAqOjphZnRlciB7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gIH1cclxuXHJcbiAgaHRtbCB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDBkdmg7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgb3ZlcmZsb3c6IGF1dG87XHJcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBib2R5IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVTcGVlZDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7IC8vIENoYW5naW5nIHRoaXMgd2lsbCBicmVhayB0aGUgdmFsdWUgb2YgLS1zY3JvbGxiYXItd2lkdGgsIHNvIHByb2NlZWQgd2l0aCBjYXV0aW9uLlxyXG4gICAgaGVpZ2h0OiAxMDBkdmg7XHJcbiAgfVxyXG5cclxuICAvLyBNYWtlIGltYWdlcyBlYXNpZXIgdG8gd29yayB3aXRoXHJcbiAgaW1nIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gIH1cclxuXHJcbiAgLy8gTmF0dXJhbCBmbG93IGFuZCByaHl0aG0gaW4gYXJ0aWNsZXMgYnkgZGVmYXVsdFxyXG4gIGFydGljbGUgPiAqICsgKiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxZW07XHJcbiAgfVxyXG5cclxuICAvLyBJbmhlcml0IGZvbnRzIGZvciBpbnB1dHMgYW5kIGJ1dHRvbnNcclxuICBpbnB1dCxcclxuICBidXR0b24sXHJcbiAgdGV4dGFyZWEsXHJcbiAgc2VsZWN0IHtcclxuICAgIGZvbnQ6IGluaGVyaXQ7XHJcbiAgfVxyXG5cclxuICBoMSxcclxuICBoMixcclxuICBoMyxcclxuICBoNCxcclxuICBoNSxcclxuICBoNiB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgfVxyXG5cclxuICBwIHtcclxuICAgIG1hcmdpbjogMC4zNWVtIDAgMC43NWVtO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNTVlbTtcclxuICB9XHJcblxyXG4gIG9sLFxyXG4gIHVsIHtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBtYXJnaW46IDAuNGVtIDAgMC43NWVtO1xyXG4gIH1cclxuXHJcbiAgbGkge1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xyXG4gIH1cclxuXHJcbiAgYnV0dG9uIHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgcGFkZGluZzogMDtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG4gIGlmcmFtZSB7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG5AbGF5ZXIgYmFzZSB7XHJcbiAgYm9keSB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgQGluY2x1ZGUgY29sb3JXaXRoQ29udHJhc3QoLS1saW5rKTtcclxuICAgIHBhZGRpbmctaW5saW5lOiAycHg7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tbGluayk7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjE1cztcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnRhcmdldEJsYW5rTm90aWZpZXIge1xyXG4gICAgICBAaW5jbHVkZSBzY3JlZW5SZWFkZXI7XHJcbiAgICB9XHJcbiAgICAuaWNvbi1tYWlsIHtcclxuICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjI1ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmljb24tZXh0ZXJuYWwtbGluayB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBhY3RpdmVab25lKFwiaG9tZVwiKSB7XHJcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xyXG4gIH1cclxufVxyXG5cclxuLy8gRm9jdXMgc3R5bGVzXHJcbio6bm90KGEpIHtcclxuICAmOmZvY3VzLXZpc2libGUsXHJcbiAgJi5mb2N1cy12aXNpYmxlIHtcclxuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLWZvY3VzLW91dGxpbmUtY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lLW9mZnNldDogdmFyKC0tZm9jdXMtb3V0bGluZS1vZmZzZXQpICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lLXN0eWxlOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXN0eWxlKSAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZS13aWR0aDogdmFyKC0tZm9jdXMtb3V0bGluZS13aWR0aCkgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIHZhcigtLWZvY3VzLW91dGxpbmUtb2Zmc2V0KSB2YXIoLS1mb2N1cy1zaGFkb3ctY29sb3IpICFpbXBvcnRhbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4uc29jaWFsTWVkaWFMb2dpbnMge1xyXG4gIGE6Zm9jdXMtdmlzaWJsZSxcclxuICBhLmZvY3VzLXZpc2libGUge1xyXG4gICAgb3V0bGluZS1jb2xvcjogdmFyKC0tZm9jdXMtb3V0bGluZS1jb2xvcikgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmUtb2Zmc2V0OiB2YXIoLS1mb2N1cy1vdXRsaW5lLW9mZnNldCkgIWltcG9ydGFudDtcclxuICAgIG91dGxpbmUtc3R5bGU6IHZhcigtLWZvY3VzLW91dGxpbmUtc3R5bGUpICFpbXBvcnRhbnQ7XHJcbiAgICBvdXRsaW5lLXdpZHRoOiB2YXIoLS1mb2N1cy1vdXRsaW5lLXdpZHRoKSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDAgdmFyKC0tZm9jdXMtb3V0bGluZS1vZmZzZXQpIHZhcigtLWZvY3VzLXNoYWRvdy1jb2xvcikgIWltcG9ydGFudDtcclxuICB9XHJcbn1cclxuXHJcbi8vIEFuaW1hdGlvblxyXG5ib2R5W2RhdGEtcmVkdWNlLWFuaW1hdGlvbj1cInRydWVcIl0ge1xyXG4gICosXHJcbiAgKjo6YmVmb3JlLFxyXG4gICo6OmFmdGVyIHtcclxuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XHJcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XHJcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcclxuICAgIHNjcm9sbC1iZWhhdmlvcjogYXV0byAhaW1wb3J0YW50O1xyXG4gIH1cclxufVxyXG4vLyBXZSdyZSBubyBsb25nZXIgcmVhZGluZyB0aGUgYnJvd3NlciBwcmVmZXJlbmNlIGFuZCByZWx5aW5nIHNvbGVseSBvbiB0aGUgdXNlcidzIHN0b3JlZCBwcmVmZXJlbmNlLlxyXG4vLyBLZWVwaW5nIHRoaXMgY29kZSBjb21tZW50ZWQgb3V0IGZvciBwb3N0ZXJpdHkgYmVjYXVzZSB0aGUgamF2YXNjcmlwdCBsb2dpYyB3YXMgdHJpY2t5IGFuZCBpbiBjYXNlIHdlIG5lZWQgaXQgYWdhaW4uXHJcbi8vIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcbi8vICAgYm9keTpub3QoW2RhdGEtcmVkdWNlLWFuaW1hdGlvbj1cImZhbHNlXCJdKSB7XHJcbi8vICAgICAqLFxyXG4vLyAgICAgKjo6YmVmb3JlLFxyXG4vLyAgICAgKjo6YWZ0ZXIge1xyXG4vLyAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xyXG4vLyAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xyXG4vLyAgICAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcclxuLy8gICAgIH1cclxuLy8gICB9XHJcbi8vIH1cclxuXHJcbi8vIFNraXAgQnV0dG9uc1xyXG4uc2xpZGVTa2lwLFxyXG4uaG9tZVNraXAsXHJcbi5tZW1iZXJzaGlwU2tpcCB7XHJcbiAgQGluY2x1ZGUgc2NyZWVuUmVhZGVyO1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgQGluY2x1ZGUgZm9jdXMge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAxMHB4O1xyXG4gICAgbGVmdDogMTBweDtcclxuICAgIHotaW5kZXg6IDk5OTk5OTk5OTk5OTk5OTtcclxuICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGNsaXAtcGF0aDogaW5pdGlhbDtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICB9XHJcbn1cclxuXHJcbi5ob21lU2tpcCB7XHJcbiAgQGluY2x1ZGUgYWN0aXZlWm9uZShcImhvbWVcIikge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG59XHJcblxyXG4uc2xpZGVTa2lwIHtcclxuICBAaW5jbHVkZSBhY3RpdmVab25lKFwic2xpZGVzXCIpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gIH1cclxufVxyXG5cclxuLm1lbWJlcnNoaXBTa2lwIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcIm1peGluc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1nbG9iYWxcIjtcclxuXHJcbmh0bWwge1xyXG4gIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgJltkYXRhLWFjdGl2ZS16b25lPVwiaG9tZVwiXVtkYXRhLWFjdGl2ZS1kaWFsb2c9XCJcIl0ge1xyXG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeSBtYW5kYXRvcnk7XHJcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcclxuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgIHNjcm9sbC1wYWRkaW5nLXRvcDogY2FsYygoKDEwMHZoIC0gdmFyKC0tZm9vdGVyLWhlaWdodCkpIC8gNSkgKiAyKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbiIsIkB1c2UgXCJzaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuXHJcbndpbGxpcy16b25lIHtcclxuICBkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuW2luZXJ0XSB7XHJcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxud2lsbGlzLWRpYWxvZzpub3QoW2RhdGEtb3Blbj1cInRydWVcIl0pIHtcclxuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIEhpZGUgaHRtbCBzY3JvbGxiYXIgd2hlbiB0aGVyZSdzIGFuIGFjdGl2ZSBkaWFsb2cuXHJcbmh0bWxbZGF0YS1kaWFsb2ctaGlkZS1vdmVyZmxvdz1cInRydWVcIl0ge1xyXG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxufVxyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gIC5kaWFsb2dCYWNrZHJvcCB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwdncgLSB2YXIoLS1zY3JvbGxiYXItd2lkdGgpKTtcclxuICAgIGhlaWdodDogMTAwZHZoO1xyXG4gICAgQHN1cHBvcnRzIChoZWlnaHQ6IDEwMGR2aCkge1xyXG4gICAgICBoZWlnaHQ6IDEwMGR2aDtcclxuICAgIH1cclxuXHJcbiAgICAuc2xpZGUgJiB7XHJcbiAgICAgIGhlaWdodDogMTAwJTsgLy9BcHBsaWVkIHRoaXMgYmVjYXVzZSBvZiBpc3N1ZXMgcmVzcG9uc2l2bGV5IHdpdGggZGlhbG9ncyB3aXRoaW4gdGhlIHNsaWRlcyBhdCBzbWFsbGVyIHNjcmVlbiBzaXplcy4gSWYgaXQgbWVzc2VzIHRoaW5ncyB1cCwgd2UgY2FuIHJlbW92ZS4gLSBLU1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmRpYWxvZ0lubmVyIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB9XHJcblxyXG4gIGRpdltyb2xlPVwiZGlhbG9nXCJdIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XHJcbiAgfVxyXG5cclxuICBbZGF0YS1kaWFsb2ctc3R5bGU9XCJtb2RhbFwiXSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICB3aWR0aDogNzgwcHg7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZGlhbG9nSW5uZXIge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPVwibGFyZ2VNb2RhbFwiXSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcblxyXG4gICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICB3aWR0aDogODAwcHg7XHJcbiAgICAgIG1heC13aWR0aDogMTAwdnc7XHJcbiAgICAgIG1hcmdpbjogYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuZGlhbG9nSW5uZXIge1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbGcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPVwic2hhZGVcIl0ge1xyXG4gICAgb3ZlcmZsb3cteTogYXV0bztcclxuXHJcbiAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgICAuZGlhbG9nTGFiZWwge1xyXG4gICAgICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kaWFsb2dDb250ZW50IHtcclxuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZGlhbG9nQWN0aW9ucyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kaWFsb2dJbm5lciB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBbZGF0YS1kaWFsb2ctc3R5bGVePVwic2lkZWJhclwiXSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XHJcblxyXG4gICAgJltkYXRhLWRpYWxvZy1zdHlsZT1cInNpZGViYXJMZWZ0XCJdIHtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gICAgfVxyXG5cclxuICAgICZbZGF0YS1kaWFsb2ctc3R5bGU9XCJzaWRlYmFyUmlnaHRcIl0ge1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gICAgfVxyXG5cclxuICAgIGRpdltyb2xlPVwiZGlhbG9nXCJdIHtcclxuICAgICAgd2lkdGg6IDQ0MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1cImZ1bGxcIl0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xyXG4gICAgW2RhdGEtZGlhbG9nLXN0eWxlXj1cInNpZGViYXJcIl0ge1xyXG4gICAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLXdpZHRoOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgW2RhdGEtZGlhbG9nLXN0eWxlPVwibW9kYWxcIl0ge1xyXG4gICAgICBkaXZbcm9sZT1cImRpYWxvZ1wiXSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIEFuaW1hdGlvbnNcclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tc3BlZWQ9XCJnbGFjaWFsXCJdIHtcclxuICBhbmltYXRpb24tZHVyYXRpb246ICRnbGFjaWFsO1xyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPVwidmVyeVNsb3dcIl0ge1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJHZlcnlTbG93O1xyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPVwic2xvd1wiXSB7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkc2xvdztcclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1cIm1lZGl1bVwiXSB7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkbWVkaXVtO1xyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLXNwZWVkPVwiZmFzdFwiXSB7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZmFzdDtcclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1zcGVlZD1cInZlcnlGYXN0XCJdIHtcclxuICBhbmltYXRpb24tZHVyYXRpb246ICR2ZXJ5RmFzdDtcclxufVxyXG5cclxuLmRpYWxvZ0JhY2tkcm9wIHtcclxuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xyXG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogJHZlcnlGYXN0O1xyXG5cclxuICAmLmluIHtcclxuICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XHJcbiAgfVxyXG5cclxuICAmLm91dCB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcclxuICB9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZUluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJmYWRlT3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlVG9wSW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZVRvcEluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZVRvcEluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVUb3BPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZVRvcE91dFwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVUb3BPdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUJvdHRvbUluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNTAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZUJvdHRvbUluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUJvdHRvbUluO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVCb3R0b21PdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDUwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJmYWRlQm90dG9tT3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZUJvdHRvbU91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlUmlnaHRJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cImZhZGVSaWdodEluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZVJpZ2h0SW47XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZVJpZ2h0T3V0IHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZVJpZ2h0T3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogZmFkZVJpZ2h0T3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVMZWZ0SW4ge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZUxlZnRJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVMZWZ0SW47XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUxlZnRPdXQge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwiZmFkZUxlZnRPdXRcIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlTGVmdE91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVRvcEluIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVUb3BJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlVG9wSW47XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzbSkge1xyXG4gICAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlQm90dG9tSW47XHJcbiAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlVG9wT3V0IHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVUb3BPdXRcIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZVRvcE91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUJvdHRvbUluIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJzbGlkZUJvdHRvbUluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVCb3R0b21JbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUJvdHRvbU91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDE1MCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVCb3R0b21PdXRcIl0ge1xyXG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUJvdHRvbU91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVJpZ2h0SW4ge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlUmlnaHRJblwiXSB7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlUmlnaHRJbjtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVJpZ2h0T3V0IHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcbiAgfVxyXG59XHJcblxyXG5kaXZbZGF0YS1kaWFsb2ctYW5pbWF0aW9uLW5hbWU9XCJzbGlkZVJpZ2h0T3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVSaWdodE91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUxlZnRJbiB7XHJcbiAgZnJvbSB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gIH1cclxuXHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcclxuICB9XHJcbn1cclxuXHJcbmRpdltkYXRhLWRpYWxvZy1hbmltYXRpb24tbmFtZT1cInNsaWRlTGVmdEluXCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVMZWZ0SW47XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc2xpZGVMZWZ0T3V0IHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuZGl2W2RhdGEtZGlhbG9nLWFuaW1hdGlvbi1uYW1lPVwic2xpZGVMZWZ0T3V0XCJdIHtcclxuICBhbmltYXRpb24tbmFtZTogc2xpZGVMZWZ0T3V0O1xyXG59XHJcbiIsIi8vIFdpZHRoc1xyXG4kdGVlbnk6IDM4MHB4O1xyXG4kdGlueTogNDUwcHg7XHJcbiR4eHM6IDUyMHB4O1xyXG4keHM6IDY1MHB4O1xyXG4kc206IDgwMHB4O1xyXG4kdHdlZW46IDkwMHB4O1xyXG4kbWQ6IDEwNTBweDtcclxuJG1pZDogMTE4MHB4O1xyXG4kbGc6IDEyODBweDtcclxuJHhsOiAxNDI1cHg7XHJcbiR4eGw6IDE2MDBweDtcclxuXHJcbi8vIENvbnRhaW5lciBXaWR0aHNcclxuJHhzQ29udGFpbmVyOiA0MDBweDtcclxuJHNtQ29udGFpbmVyOiA1MDBweDtcclxuJG1kQ29udGFpbmVyOiA3NzBweDtcclxuJGxnQ29udGFpbmVyOiAxMDAwcHg7XHJcbiR4bENvbnRhaW5lcjogMTIwMHB4O1xyXG5cclxuLy8gQW5pbWF0aW9uIFNwZWVkcyAtIHRoZXNlIGFsc28gbmVlZCB0byBiZSBjaGFuZ2VkIGluIGFuaW1hdGlvbi50cyBpZiBtb2RpZmllZFxyXG4kdmVyeUZhc3Q6IDIwMG1zO1xyXG4kZmFzdDogMzAwbXM7XHJcbiRtZWRpdW06IDUwMG1zO1xyXG4kc2xvdzogODAwbXM7XHJcbiR2ZXJ5U2xvdzogMTAwMG1zO1xyXG4kZ2xhY2lhbDogMzAwMG1zO1xyXG4iLCJAdXNlIFwibWl4aW5zXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC1kaWFsb2dzXCI7XHJcblxyXG4uZGlhbG9nQmFja2Ryb3Age1xyXG4gIGJhY2tncm91bmQ6IHZhci1yZ2JhKC0tYnJhbmQtZGFyaywgMC45OCk7XHJcbiAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1kYXJrLWdyZXkpIHZhcigtLWxpZ2h0LWdyZXkpO1xyXG59XHJcblxyXG4uZGlhbG9nQ29udGVudCB7XHJcbiAgbWFyZ2luOiAxMHB4IDA7XHJcbn1cclxuXHJcbi5kaWFsb2dBY3Rpb25zLmdlbmVyYXRlZCB7XHJcbiAgYnV0dG9uLmNsb3NlRGlhbG9nIHtcclxuICAgIC5pY29uOmJlZm9yZSB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1pY29uLWZvbnQpO1xyXG4gICAgICBjb250ZW50OiBcImJcIjtcclxuICAgIH1cclxuICB9XHJcbn1cclxuYnV0dG9uLmNsb3NlRGlhbG9nIHtcclxuICAuaWNvbjpiZWZvcmUge1xyXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWljb24tZm9udCk7XHJcbiAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgIGNvbnRlbnQ6IFwiYlwiO1xyXG4gIH1cclxufVxyXG5cclxuLmRpYWxvZ0xhYmVsIGgyIHtcclxuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxufVxyXG5cclxuW2RhdGEtZGlhbG9nLXN0eWxlPVwibW9kYWxcIl0ge1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgLnNhZmFyaSAmIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMjBweCAxNTBweDtcclxuICB9XHJcbiAgLmRpYWxvZ0lubmVyIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBwYWRkaW5nOiAzMHB4IDYwcHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCB2YXIoLS1ob3Zlcik7XHJcbiAgICBidXR0b24ge1xyXG4gICAgICBAaW5jbHVkZSBidXR0b24odmFyKC0tYnJhbmQtYnJpZ2h0KSk7XHJcbiAgICAgIGdhcDogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuW2RhdGEtZGlhbG9nLXN0eWxlPVwibGFyZ2VNb2RhbFwiXSB7XHJcbiAgLnNhZmFyaSAmIHtcclxuICAgIHBhZGRpbmc6IDIwcHggMjBweCAxNTBweDtcclxuICB9XHJcbiAgLmRpYWxvZ0lubmVyIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1saWdodCk7XHJcbiAgfVxyXG5cclxuICAuZGlhbG9nTGFiZWwge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIHBhZGRpbmc6IDVweCAxMHB4IDIwcHg7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgaDIge1xyXG4gICAgICBAaW5jbHVkZSB6ZXJvTWFyZ1BhZDtcclxuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbltkYXRhLWRpYWxvZy1zdHlsZT1cInNoYWRlXCJdIHtcclxuICAuZGlhbG9nSW5uZXIge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMCAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxNzVkZWcsIHZhcigtLWJyYW5kLWRhcmspIDQwJSwgdmFyLWRhcmtlbih2YXIoLS1icmFuZC1kYXJrKSwgNSUpIDEwMCUpO1xyXG4gICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgLmRpYWxvZ0xhYmVsIHtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgfVxyXG4gICAgLmRpYWxvZ0FjdGlvbnMge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGdhcDogN3B4O1xyXG4gICAgfVxyXG4gICAgLmNsb3NlRGlhbG9nIHtcclxuICAgICAgQGluY2x1ZGUgYnV0dG9uKHZhcigtLWJyYW5kLWJyaWdodCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuW2RhdGEtZGlhbG9nLXN0eWxlXj1cInNpZGViYXJcIl0ge1xyXG4gIC5kaWFsb2dJbm5lciB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuICAmW2RhdGEtZGlhbG9nLXN0eWxlPVwic2lkZWJhckxlZnRcIl0ge1xyXG4gICAgLmRpYWxvZ0lubmVyIHtcclxuICAgICAgLy9ib3JkZXItcmFkaXVzOiAwIHZhcigtLXJhZGl1cykgdmFyKC0tcmFkaXVzKSAwO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJltkYXRhLWRpYWxvZy1zdHlsZT1cInNpZGViYXJSaWdodFwiXSB7XHJcbiAgICAuZGlhbG9nSW5uZXIge1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIDAgMCB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuW2RhdGEtZGlhbG9nLXN0eWxlXj1cImZ1bGxcIl0ge1xyXG4gIC5kaWFsb2dJbm5lciB7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnNpbXBsZURpYWxvZyB7XHJcbiAgLy8gQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1saWdodCk7XHJcbiAgLy8gYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxufVxyXG5cclxuI3JldHVybk1lc3NhZ2Uge1xyXG4gIC5jbG9zZURpYWxvZyB7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5AbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlXj1cInNpZGViYXJcIl0ge1xyXG4gICAgJltkYXRhLWRpYWxvZy1zdHlsZT1cInNpZGViYXJMZWZ0XCJdIHtcclxuICAgICAgLmRpYWxvZ0lubmVyIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLWRpYWxvZy1zdHlsZT1cInNpZGViYXJSaWdodFwiXSB7XHJcbiAgICAgIC5kaWFsb2dJbm5lciB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgW2RhdGEtZGlhbG9nLXN0eWxlPVwibW9kYWxcIl0ge1xyXG4gICAgZGl2W3JvbGU9XCJkaWFsb2dcIl0ge1xyXG4gICAgICAmLnJlcG9ydE5lZWRlZCB7XHJcbiAgICAgICAgLy9VbmlxdWUgc3R5bGluZyBmb3IgdGhlIFJlcG9ydCBhIEJhcnJpZXIgZmVhdHVyZS4gLSBERlRcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAZm9yd2FyZCBcIi4uL19nbG9iYWwvc2hhcmVkLW1peGluc1wiO1xyXG5AdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtbWl4aW5zXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJzYXNzOm1hdGhcIjtcclxuQHVzZSBcInNhc3M6c3RyaW5nXCI7XHJcblxyXG5AbWl4aW4gYmdQb3MoKSB7XHJcbiAgJltkYXRhLWJnLXBvcz1cInRvcCBsZWZ0XCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwidG9wIG1pZGRsZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwiY2VudGVyXCJdIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgfVxyXG4gICZbZGF0YS1iZy1wb3M9XCJjZW50ZXIgcmlnaHRcIl0ge1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAwJSA1MCU7XHJcbiAgfVxyXG4gICZbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSAxMDAlO1xyXG4gIH1cclxuICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIG1pZGRsZVwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMTAwJTtcclxuICB9XHJcbiAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSByaWdodFwiXSB7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDEwMCU7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uKCRjb2xvcjogdmFyKC0tYnJhbmQtZGFyayksICRob3ZlckNvbG9yOiB2YXIoLS1ob3ZlcikpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBwYWRkaW5nOiAxMHB4IDIwcHg7XHJcbiAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gIGJvcmRlci1jb2xvcjogdmFyLWRhcmtlbigkY29sb3IsIDEwJSk7XHJcbiAgbGluZS1oZWlnaHQ6IDEuMWVtO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgb3V0bGluZS1vZmZzZXQ6IDA7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRjb2xvcik7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAuaWNvbiB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjAzKTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRob3ZlckNvbG9yKTtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyLWxpZ2h0ZW4oJGhvdmVyQ29sb3IsIDIwJSk7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgfVxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICB9XHJcbn1cclxuXHJcbi8vLyBGb3IgYnV0dG9ucyB0aGF0IGZlYXR1cmUgYm90aCBhbiBpY29uIGFuZCB0ZXh0LiBVc3VhbGx5IHNlZW4gaW4gZGlhbG9ncy5cclxuLy8vIEBwYXJhbSB7bnVtfSAkc2l6ZSAtIFRoZSB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSBidXR0b24uIERvZXMgbm90IGFwcGx5IHdoZW4gYnV0dG9uIG9ubHkgY29udGFpbnMgdGV4dC5cclxuLy8vIEBwYXJhbSB7c3RyaW5nfSAkdHlwZSBbdG9vbFRpcF0gLSBQb3NzaWJsZSB2YWx1ZXM6IHRvb2xUaXAsIGljb24sIHRleHQuXHJcbkBtaXhpbiBhY3Rpb25CdXR0b24oJGNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpLCAkaG92ZXJDb2xvcjogdmFyKC0taG92ZXIpLCAkc2l6ZTogNDVweCwgJHR5cGU6IHRvb2xUaXApIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtYXJnaW46IDA7XHJcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1jaXJjbGUpO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgkY29sb3IpO1xyXG4gIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICBAaWYgJHR5cGUgPT0gdG9vbFRpcCB7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgIC5pY29uIHtcclxuICAgICAgZm9udC1zaXplOiBjYWxjKCN7JHNpemV9ICogMC40KTtcclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgdG9vbFRpcDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBzY2FsZTogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJHR5cGUgPT0gaWNvbiB7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYXNwZWN0LXJhdGlvOiAxIC8gMTtcclxuICAgIC5pY29uIHtcclxuICAgICAgZm9udC1zaXplOiBjYWxjKCN7JHNpemV9ICogMC40KTtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgIH1cclxuICAgIC50ZXh0IHtcclxuICAgICAgQGluY2x1ZGUgc2NyZWVuUmVhZGVyO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJHR5cGUgPT0gdGV4dCB7XHJcbiAgICBwYWRkaW5nOiAwLjVlbSAxZW07XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3cpO1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoJGhvdmVyQ29sb3IpO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIG9wZW5BbGxUb2dnbGVCdXR0b24oJGlubmVyLXNpemU6IDIwcHgpIHtcclxuICAvLyBUaGVzZSBwYXJhbWV0ZXIgY2FsY3VsYXRpb25zIGVuc3VyZSB0aGF0IGNoYW5naW5nIHRoZSAkaW5uZXItc2l6ZSB2YWx1ZSBrZWVwcyB0aGUgdG9nZ2xlIGJ1dHRvbidzIHNwYWNpbmcgYmV0d2VlbiBpdHMgZWxlbWVudHMgY29uc2lzdGVudC5cclxuICAkdG9nZ2xlLWhlaWdodDogJGlubmVyLXNpemUgKyA2cHg7XHJcbiAgJHRvZ2dsZS13aWR0aDogJGlubmVyLXNpemUgKiAyLjI1O1xyXG4gICR0b2dnbGUtcmFkaXVzOiBtYXRoLmRpdigkdG9nZ2xlLWhlaWdodCwgMik7IC8vIFRoaXMgZGl2aXNpb24gZW5zdXJlcyB0aGUgcGlsbCBzaGFwZS4gWW91IGNhbiBhZGp1c3QgdGhpcyB0byB5b3VyIHByb2plY3QncyBuZWVkcyBieSByZXBsYWNpbmcgd2l0aCBhIHBpeGVsIHZhbHVlLlxyXG4gICRwYWRkaW5nOiAoJGlubmVyLXNpemUgKiAwLjYpICgkaW5uZXItc2l6ZSAqIDAuNzUpICgkaW5uZXItc2l6ZSAqIDAuNikgKCR0b2dnbGUtd2lkdGggKyAkaW5uZXItc2l6ZSAqIDAuNSArIDEwcHgpO1xyXG5cclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIG1hcmdpbjogMjBweCBhdXRvIDE1cHg7XHJcbiAgcGFkZGluZzogJHBhZGRpbmc7XHJcbiAgZm9udC1zaXplOiAxZW07XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmV5KTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodC1ncmV5KTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgdHJhbnNpdGlvbjogJGZhc3Q7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuXHJcbiAgLmJ0biB7XHJcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgfVxyXG5cclxuICAudG9nZ2xlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogJGlubmVyLXNpemUgKiAwLjU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICBoZWlnaHQ6ICR0b2dnbGUtaGVpZ2h0O1xyXG4gICAgd2lkdGg6ICR0b2dnbGUtd2lkdGg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkdG9nZ2xlLXJhZGl1cztcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyZXkpO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG5cclxuICAgIC5pbm5lciB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSAtICN7JGlubmVyLXNpemUgKyAzcHh9KTtcclxuICAgICAgaGVpZ2h0OiAkaW5uZXItc2l6ZTtcclxuICAgICAgd2lkdGg6ICRpbm5lci1zaXplO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiBtYXRoLmRpdigkaW5uZXItc2l6ZSwgMik7IC8vVGhpcyBkaXZpc2lvbiBlbnN1cmVzIHRoZSB0b2dnbGUncyBpbm5lciBpcyByb3VuZC4gWW91IGNhbiBhZGp1c3QgdGhpcyB0byB5b3VyIHByb2plY3QncyBuZWVkcyBieSByZXBsYWNpbmcgd2l0aCBhIHBpeGVsIHZhbHVlLlxyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgdHJhbnNpdGlvbjogcmlnaHQgJGZhc3Q7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmW2FyaWEtcHJlc3NlZD1cInRydWVcIl0ge1xyXG4gICAgLnRvZ2dsZSB7XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgcmlnaHQ6IDRweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgLnRvZ2dsZSB7XHJcbiAgICAgIC5pbm5lciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmJ0biB7XHJcbiAgICAgIGNvbG9yOiBjYWxjLWNvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vLyBIaWRlcyB0ZXh0IGFuZCBwcmVwcyBmb3IgaG92ZXIuIEJlY2F1c2UgdGhpcyBtaXhpbiBpcyB1c3VhbGx5IGJlaW5nIHVzZWQgaW4gYSBidXR0b24sXHJcbi8vLyB0aGUgaG92ZXIgc3R5bGUgbmVlZHMgdG8gYmUgbWFudWxseSBzZXQgaW4gd2hhdGV2ZXIgcGFyZW50IHRoaXMgbWl4aW4gaXMgYmVpbmcgdXNlZCBpbi5cclxuLy8vXHJcbi8vLyBAZXhhbXBsZVxyXG4vLy8gICBidXR0b24ge1xyXG4vLy8gICAgIC50ZXh0IHtcclxuLy8vICAgICAgIEBpbmNsdWRlIHRvb2xUaXAoJGRpcjogdG9wLCAkY29sb3I6IHZhcigtLWJsdWUpLCAkb2Zmc2V0OiAxMHB4KTtcclxuLy8vICAgICB9XHJcbi8vLyAgICAgQGluY2x1ZGUgaG92ZXJXaXRoRm9jdXMge1xyXG4vLy8gICAgICAgLnRleHQge1xyXG4vLy8gICAgICAgICAvLyBCeSBkZWZhdWx0IHRoZXNlIGFyZSB0aGUgdHdvIHByb3BlcnRpZXMgdGhhdCBuZWVkIHRvIGJlIG92ZXJ3cml0dGVuLlxyXG4vLy8gICAgICAgICBvcGFjaXR5OiAxO1xyXG4vLy8gICAgICAgICBzY2FsZTogMTtcclxuLy8vICAgICAgIH1cclxuLy8vICAgICB9XHJcbi8vLyAgIH1cclxuLy8vXHJcbi8vLyBAdG9kbyBBZGQgYSB0b29sVGlwU2hvdyBtaXhpbiB0aGF0IG92ZXJyaWRlcyBhbGwgdGhlIHByb3BlcnRpZXMgbGlzdGVkIGluIHRvb2xUaXAuXHJcbi8vLyBAcGFyYW0ge3N0cmluZ30gJGRpciBbdG9wIHwgdG9wLWxlZnQgfCB0b3AtcmlnaHRdIFtib3R0b20gfCBib3R0b20tbGVmdCB8IGJvdHRvbS1yaWdodF0gW2xlZnQgfCByaWdodF1cclxuLy8vIEBwYXJhbSB7Y29sb3J9ICRjb2xvciBbdmFyKC0tbGlnaHQpXSAtIFRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB0aGUgdG9vbCB0aXAuXHJcbi8vLyBAcGFyYW0ge2Jvb2xlYW59ICRhcnJvdyBbdHJ1ZV0gLSBEcmF3cyBhIHRyaWFuZ2xlIHRoYXQgcG9pbnRzIHRvd2FyZHMgdGhlIHBhcmVudC5cclxuLy8vIEBwYXJhbSB7bnVtYmVyfSAkb2Zmc2V0IFs1cHhdIC0gVGhlIGFtb3VudCB0aGUgYXJyb3cgc2hvdWxkIGJlIHNoaWZ0ZWQgaWYgdGlwIGlzbid0IGNlbnRlcmVkLlxyXG4vLy8gQHNpbmNlIEZ1Z3UgOC4wXHJcbkBtaXhpbiB0b29sVGlwKCRkaXI6IGJvdHRvbSwgJGNvbG9yOiB2YXIoLS1saWdodCksICRhcnJvdzogdHJ1ZSwgJG9mZnNldDogNXB4KSB7XHJcbiAgJGRpc3RhbmNlOiAycHg7XHJcbiAgJGJvcmRlcldpZHRoOiAycHg7XHJcbiAgJGJvcmRlckNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgJGFycm93U2l6ZTogMTBweDtcclxuICAkYm9yZGVyQXJyb3dTaXplOiAkYXJyb3dTaXplICsgKCRib3JkZXJXaWR0aCAqIDIpO1xyXG4gICRjb2xvcjogdmFsaWRhdGUtYW5kLXdyYXAtaWYtY3VzdG9tLXByb3AoJGNvbG9yKTtcclxuXHJcbiAgJGJveFRyYW5zbGF0aW9uOiAwIC01MCU7XHJcbiAgJGFycm93VHJhbnNsYXRpb246IDAgLTUwJTtcclxuICAkYWxpZ246IGNlbnRlcjtcclxuICAkc2lkZTogYm90dG9tO1xyXG4gIEBpZiBzdHJpbmcuaW5kZXgoJGRpciwgXCJib3R0b21cIikgb3Igc3RyaW5nLmluZGV4KCRkaXIsIFwidG9wXCIpIHtcclxuICAgIEBpZiBzdHJpbmcuaW5kZXgoJGRpciwgXCJib3R0b21cIikge1xyXG4gICAgICAkc2lkZTogYm90dG9tO1xyXG4gICAgfSBAZWxzZSBpZiBzdHJpbmcuaW5kZXgoJGRpciwgXCJ0b3BcIikge1xyXG4gICAgICAkc2lkZTogdG9wO1xyXG4gICAgfVxyXG4gICAgQGlmIHN0cmluZy5pbmRleCgkZGlyLCBcImxlZnRcIikge1xyXG4gICAgICAkYWxpZ246IGxlZnQ7XHJcbiAgICB9IEBlbHNlIGlmIHN0cmluZy5pbmRleCgkZGlyLCBcInJpZ2h0XCIpIHtcclxuICAgICAgJGFsaWduOiByaWdodDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmIHN0cmluZy5pbmRleCgkZGlyLCBcImxlZnRcIikge1xyXG4gICAgJHNpZGU6IGxlZnQ7XHJcbiAgfSBAZWxzZSBpZiBzdHJpbmcuaW5kZXgoJGRpciwgXCJyaWdodFwiKSB7XHJcbiAgICAkc2lkZTogcmlnaHQ7XHJcbiAgfVxyXG5cclxuICBAaWYgJHNpZGUgPT0gYm90dG9tIG9yICRzaWRlID09IHRvcCB7XHJcbiAgICAkYm94VHJhbnNsYXRpb246IC01MCUgMDtcclxuICAgICRhcnJvd1RyYW5zbGF0aW9uOiAtNTAlIDA7XHJcbiAgfVxyXG5cclxuICAkb3JpZ2luWDogNTAlO1xyXG4gIEBpZiAkc2lkZSA9PSBsZWZ0IHtcclxuICAgICRvcmlnaW5YOiAxMDAlO1xyXG4gIH1cclxuICBAaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgJG9yaWdpblg6IDAlO1xyXG4gIH1cclxuXHJcbiAgJG9yaWdpblk6IDUwJTtcclxuICBAaWYgJHNpZGUgPT0gYm90dG9tIHtcclxuICAgICRvcmlnaW5ZOiAwJTtcclxuICB9XHJcbiAgQGlmICRzaWRlID09IHRvcCB7XHJcbiAgICAkb3JpZ2luWTogMTAwJTtcclxuICB9XHJcblxyXG4gICRib3hTdGFydFBvczogNTAlO1xyXG4gICRhcnJvd1BvczogNTAlO1xyXG4gIEBpZiAkYWxpZ24gIT0gY2VudGVyIHtcclxuICAgICRib3hTdGFydFBvczogMHB4O1xyXG4gICAgJGJveFRyYW5zbGF0aW9uOiAwIDA7XHJcbiAgICAkYXJyb3dUcmFuc2xhdGlvbjogMCAwO1xyXG4gIH1cclxuXHJcbiAgQGlmICRhbGlnbiA9PSBsZWZ0IHtcclxuICAgICRvcmlnaW5YOiBjYWxjKCRvZmZzZXQgLSB2YXIoLS1yYWRpdXMpKTtcclxuICB9XHJcbiAgQGlmICRhbGlnbiA9PSByaWdodCB7XHJcbiAgICAkb3JpZ2luWDogY2FsYygxMDAlIC0gJG9mZnNldCAtIHZhcigtLXJhZGl1cykpO1xyXG4gIH1cclxuXHJcbiAgLy8gQWJzdHJhY3Qgb3V0IHRoZSBzdGFydGluZyBheGlzIGFuZCBwb3NpdGlvbnMgb2YgdGhlIHRvb2x0aXAgYm94IGFuZCBhcnJvdyB0byBrZWVwIHRoaW5ncyBzYW5lLlxyXG4gICRib3hEaXN0YW5jZVByb3A6IFwiXCI7XHJcbiAgJGJveFN0YXJ0UHJvcDogXCJcIjtcclxuICAkYXJyb3dQb3NQcm9wOiBcIlwiO1xyXG5cclxuICBAaWYgJHNpZGUgPT0gYm90dG9tIHtcclxuICAgICRib3hEaXN0YW5jZVByb3A6IHRvcDtcclxuICAgIEBpZiAkYWxpZ24gPT0gcmlnaHQge1xyXG4gICAgICAkYm94U3RhcnRQcm9wOiByaWdodDtcclxuICAgICAgJGFycm93UG9zUHJvcDogcmlnaHQ7XHJcbiAgICB9IEBlbHNlIHtcclxuICAgICAgJGJveFN0YXJ0UHJvcDogbGVmdDtcclxuICAgICAgJGFycm93UG9zUHJvcDogbGVmdDtcclxuICAgIH1cclxuICB9IEBlbHNlIGlmICRzaWRlID09IHRvcCB7XHJcbiAgICAkYm94RGlzdGFuY2VQcm9wOiBib3R0b207XHJcbiAgICBAaWYgJGFsaWduID09IHJpZ2h0IHtcclxuICAgICAgJGJveFN0YXJ0UHJvcDogcmlnaHQ7XHJcbiAgICAgICRhcnJvd1Bvc1Byb3A6IHJpZ2h0O1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IGxlZnQ7XHJcbiAgICAgICRhcnJvd1Bvc1Byb3A6IGxlZnQ7XHJcbiAgICB9XHJcbiAgfSBAZWxzZSBpZiAkc2lkZSA9PSBsZWZ0IHtcclxuICAgICRib3hEaXN0YW5jZVByb3A6IHJpZ2h0O1xyXG4gICAgQGlmICRhbGlnbiA9PSByaWdodCB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IGJvdHRvbTtcclxuICAgICAgJGFycm93UG9zUHJvcDogYm90dG9tO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICRib3hTdGFydFByb3A6IHRvcDtcclxuICAgICAgJGFycm93UG9zUHJvcDogdG9wO1xyXG4gICAgfVxyXG4gIH0gQGVsc2UgaWYgJHNpZGUgPT0gcmlnaHQge1xyXG4gICAgJGJveERpc3RhbmNlUHJvcDogbGVmdDtcclxuICAgIEBpZiAkYWxpZ24gPT0gcmlnaHQge1xyXG4gICAgICAkYm94U3RhcnRQcm9wOiBib3R0b207XHJcbiAgICAgICRhcnJvd1Bvc1Byb3A6IGJvdHRvbTtcclxuICAgIH0gQGVsc2Uge1xyXG4gICAgICAkYm94U3RhcnRQcm9wOiB0b3A7XHJcbiAgICAgICRhcnJvd1Bvc1Byb3A6IHRvcDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICN7JGJveERpc3RhbmNlUHJvcH06IGNhbGMoMTAwJSArICN7JGRpc3RhbmNlfSk7XHJcbiAgI3skYm94U3RhcnRQcm9wfTogJGJveFN0YXJ0UG9zO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBzY2FsZTogMC4xO1xyXG4gIGJvcmRlcjogJGJvcmRlcldpZHRoIHNvbGlkICRib3JkZXJDb2xvcjtcclxuICBwYWRkaW5nOiAycHggN3B4O1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMteHMpO1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRjb2xvcik7XHJcbiAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLWJvdW5jZSk7XHJcbiAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpblggJG9yaWdpblk7XHJcbiAgdHJhbnNsYXRlOiAkYm94VHJhbnNsYXRpb247XHJcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG5cclxuICBAaWYgJGFycm93ID09IHRydWUge1xyXG4gICAgLy8gQm9yZGVyIFRyaWFuZ2xlXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLWJvdW5jZSk7XHJcbiAgICAgIHRyYW5zbGF0ZTogJGFycm93VHJhbnNsYXRpb247XHJcbiAgICAgIHdpZHRoOiAkYXJyb3dTaXplO1xyXG4gICAgICBoZWlnaHQ6ICRhcnJvd1NpemU7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRib3JkZXJDb2xvcjtcclxuICAgICAgQGlmICRhbGlnbiA9PSBcImNlbnRlclwiIHtcclxuICAgICAgICAjeyRhcnJvd1Bvc1Byb3B9OiA1MCU7XHJcbiAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICN7JGFycm93UG9zUHJvcH06IGNhbGMoJG9mZnNldCArIHZhcigtLXJhZGl1cykpO1xyXG4gICAgICB9XHJcbiAgICAgIEBpZiAkc2lkZSA9PSBib3R0b20ge1xyXG4gICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICB3aWR0aDogJGJvcmRlckFycm93U2l6ZTtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDAlLCAwJSAxMDAlLCAxMDAlIDEwMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IHRvcCB7XHJcbiAgICAgICAgdG9wOiAxMDAlO1xyXG4gICAgICAgIHdpZHRoOiAkYm9yZGVyQXJyb3dTaXplO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbig1MCUgMTAwJSwgMCUgMCUsIDEwMCUgMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IGxlZnQge1xyXG4gICAgICAgIGxlZnQ6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAkYm9yZGVyQXJyb3dTaXplO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigxMDAlIDUwJSwgMCUgMTAwJSwgMCUgMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IHJpZ2h0IHtcclxuICAgICAgICByaWdodDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6ICRib3JkZXJBcnJvd1NpemU7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDUwJSwgMTAwJSAwJSwgMTAwJSAxMDAlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gQWN0dWFsIFRyaWFuZ2xlXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJG1lZGl1bSB2YXIoLS10aW1pbmctYm91bmNlKTtcclxuICAgICAgdHJhbnNsYXRlOiAkYXJyb3dUcmFuc2xhdGlvbjtcclxuICAgICAgd2lkdGg6ICRhcnJvd1NpemU7XHJcbiAgICAgIGhlaWdodDogJGFycm93U2l6ZTtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICBAaWYgJGFsaWduID09IGNlbnRlciB7XHJcbiAgICAgICAgI3skYXJyb3dQb3NQcm9wfTogNTAlO1xyXG4gICAgICB9IEBlbHNlIHtcclxuICAgICAgICAjeyRhcnJvd1Bvc1Byb3B9OiBjYWxjKCRvZmZzZXQgKyB2YXIoLS1yYWRpdXMpICsgJGJvcmRlcldpZHRoKTtcclxuICAgICAgfVxyXG4gICAgICBAaWYgJHNpZGUgPT0gYm90dG9tIHtcclxuICAgICAgICBib3R0b206IGNhbGMoMTAwJSAtICN7JGJvcmRlcldpZHRofSk7XHJcbiAgICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDUwJSAwJSwgMCUgMTAwJSwgMTAwJSAxMDAlKTtcclxuICAgICAgfSBAZWxzZSBpZiAkc2lkZSA9PSB0b3Age1xyXG4gICAgICAgIHRvcDogY2FsYygxMDAlIC0gI3skYm9yZGVyV2lkdGh9KTtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oNTAlIDEwMCUsIDAlIDAlLCAxMDAlIDAlKTtcclxuICAgICAgfSBAZWxzZSBpZiAkc2lkZSA9PSBsZWZ0IHtcclxuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgLSAjeyRib3JkZXJXaWR0aH0pO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigxMDAlIDUwJSwgMCUgMTAwJSwgMCUgMCUpO1xyXG4gICAgICB9IEBlbHNlIGlmICRzaWRlID09IHJpZ2h0IHtcclxuICAgICAgICByaWdodDogY2FsYygxMDAlIC0gI3skYm9yZGVyV2lkdGh9KTtcclxuICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgNTAlLCAxMDAlIDAlLCAxMDAlIDEwMCUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gY2hlY2tib3goJHNpemU6IDFlbSwgJGJvcmRlckNvbG9yOiB2YXIoLS1iYXNpYyksICRzZWxlY3RlZENvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSwgJHNlbGVjdGVkQm9yZGVyOiB2YXIoLS1icmFuZC1kYXJrKSkge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDA7XHJcbiAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICBAc3VwcG9ydHMgKGFwcGVhcmFuY2U6IG5vbmUpIHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICBoZWlnaHQ6ICRzaXplO1xyXG5cclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXItcmdiYSgkYm9yZGVyQ29sb3IsIDAuNyk7XHJcblxyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6ICRzaXplO1xyXG4gICAgICBoZWlnaHQ6ICRzaXplO1xyXG5cclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjYWxjLWNvbnRyYXN0KCRzZWxlY3RlZENvbG9yKTtcclxuICAgICAgbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5IElqQWdNQ0F6TVRZdU16Z2dNalV3TGpZaVBqeHdZWFJvSUdROUlrMDNNQzQwSURJeE9TNDRZelF1TlRVZ05DNDQgTnlBNUxqSXlJRGt1TmpjZ01UUXVNVElnTVRRdU1Ua2dNeTQzTlNBekxqUTNJRGN1TnpFZ05pNDROU0F4TVM0NSBNeUE1TGpjMElEVXVOU0F6TGpjNElERXhMamt5SURjdU1EZ2dNVGd1TnpnZ05pNDROU0EyTGpZMkxTNHlNeUF4IE1pNDNOeTB6TGpjeklERTNMamszTFRjdU5qSWdPQzQyTFRZdU5ESWdNVFl1TmpjdE1UVXVNVGNnTWpNdU9EUXQgTWpNdU1UUk1NekExTGpZNElEVTBMalk1WXpjdU1pMDRJREV4TGpjNUxURTRMakkxSURFd0xqUTNMVEk1TGpFMyBMVEV1TURRdE9DNDFPUzAxTGpjeExURTJMalUxTFRFekxqQXhMVEl4TGpJNUxUVXVOalV0TXk0Mk55MHhNaTR5IE5pMDBMams0TFRFNExqa3RNeTQ0TWkwNExqa2dNUzQxTmkweE5pNDFOQ0EzTGpJeUxUSXlMalE0SURFekxqYzQgTFRRNExqTTBJRFV6TGpNeUxUazJMalU1SURFd05pNDNNUzB4TkRRdU9EVWdNVFl3TGpFeGJDMHpMakU1SURNdSBOVE10TmpBdU5DMDJOaTQyTTJNdE9DNDBNaTA1TGpJNUxURTVMamN0TVRNdU9UUXRNekV1T1RJdE9TNDFOeTAwIExqY3lJREV1TmprdE9DNDVPU0EwTGpVNExURXlMalExSURndU1Ua3RNeTQ0TmlBMExqQTBMVFl1TnpnZ09TNHcgTmkwNExqRXpJREUwTGpRNUxUSXVNekVnT1M0eU55NHpJREU0TGpBM0lEWXVOaklnTWpVdU1UTnNOakl1T1RVZyBOekF1TXpWYUlpQnpkSGxzWlQwaVptbHNiQzF5ZFd4bE9tVjJaVzV2WkdRaUx6NDhMM04yWno0S1wiKTtcclxuICAgICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgICAgbWFzay1zaXplOiA2MCU7XHJcbiAgICAgIG1hc2stcG9zaXRpb246IDUwJSA1MCU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpjaGVja2VkIHtcclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogJHNlbGVjdGVkQ29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdGVkQ29sb3I7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2VsZWN0ZWRCb3JkZXI7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2Rpc2FibGVkXSB7XHJcbiAgICAgIG9wYWNpdHk6IDAuMztcclxuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXItcmdiYSgtLWJhc2ljLCAwLjgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcmFkaW8oJHNpemU6IDFlbSwgJGJvcmRlckNvbG9yOiB2YXIoLS1iYXNpYyksICRzZWxlY3RlZENvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSwgJHNlbGVjdGVkQm9yZGVyOiAkc2VsZWN0ZWRDb2xvcikge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBtYXJnaW46IDA7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gIEBzdXBwb3J0cyAoYXBwZWFyYW5jZTogbm9uZSkge1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHdpZHRoOiAkc2l6ZTtcclxuICAgIGhlaWdodDogJHNpemU7XHJcblxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgd2lkdGg6ICRzaXplO1xyXG4gICAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICBib3JkZXItd2lkdGg6IDJweDtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXItcmdiYSgkYm9yZGVyQ29sb3IsIDAuNyk7XHJcblxyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIHRyYW5zaXRpb246IGFsbCAkdmVyeUZhc3Q7XHJcbiAgICB9XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHotaW5kZXg6IDU7XHJcblxyXG4gICAgICB3aWR0aDogMDtcclxuICAgICAgaGVpZ2h0OiAwO1xyXG5cclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gICAgfVxyXG5cclxuICAgICY6Y2hlY2tlZCB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItY29sb3I6ICRzZWxlY3RlZEJvcmRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0ZWRDb2xvcjtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjYWxjLWNvbnRyYXN0KCRzZWxlY3RlZENvbG9yKTtcclxuICAgICAgICB3aWR0aDogJHNpemUgKiAwLjQ1O1xyXG4gICAgICAgIGhlaWdodDogJHNpemUgKiAwLjQ1O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJltkaXNhYmxlZF0ge1xyXG4gICAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblxyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyLWxpZ2h0ZW4odmFyKC0tYmFzaWMpLCA3NSUpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gc3dpdGNoKCRzaXplOiAxLjI1ZW0sICRjb2xvcjogdmFyKC0tYmFzaWMpLCAkc2VsZWN0ZWRDb2xvcjogdmFyKC0tYnJhbmQtZGFyaykpIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgQHN1cHBvcnRzIChhcHBlYXJhbmNlOiBub25lKSB7XHJcbiAgICAka25vYlNpemU6IGNhbGMoI3skc2l6ZX0gLSA4cHgpO1xyXG4gICAgYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIHdpZHRoOiAxLjI1ZW0gKiAyO1xyXG4gICAgaGVpZ2h0OiAkc2l6ZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3I7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgJGZhc3Q7XHJcblxyXG4gICAgLyogVGhlIHRvZ2dsZSBrbm9iICovXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gICAgICBsZWZ0OiAycHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgd2lkdGg6ICRrbm9iU2l6ZTtcclxuICAgICAgaGVpZ2h0OiAka25vYlNpemU7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICRmYXN0O1xyXG4gICAgfVxyXG5cclxuICAgIC8qIENoYW5nZSBjb2xvciBhbmQgcG9zaXRpb24gd2hlbiBjaGVja2VkICovXHJcbiAgICAmOmNoZWNrZWQge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkc2VsZWN0ZWRDb2xvcjtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlbGVjdGVkQ29sb3I7XHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoMTAwJSAtICN7JGtub2JTaXplfSAtIDJweCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogY2FsYy1jb250cmFzdCgkc2VsZWN0ZWRDb2xvcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBEcm9wIHRoZSBvcGFjaXR5IG9mIHRoZSB0b2dnbGUga25vYiB3aGVuIHRoZSBpbnB1dCBpcyBkaXNhYmxlZCAqL1xyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgIG9wYWNpdHk6IDAuNDtcclxuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBzdWJ0bGVHcmFkaWVudCgkY29sb3IsICRkZWc6IDEyOGRlZykge1xyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkY29sb3IgNDAlLCB2YXItZGFya2VuKCRjb2xvciwgNSUpIDEwMCUpO1xyXG59XHJcblxyXG5AbWl4aW4gcmVzZXRCdXR0b24oKSB7XHJcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgYm9yZGVyOiAwcHg7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxuICBvdXRsaW5lOiAwcHg7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogdW5zZXQ7XHJcbiAgYWxpZ24taXRlbXM6IHVuc2V0O1xyXG4gIHBhZGRpbmc6IDBweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgY29sb3I6IHVuc2V0O1xyXG59XHJcblxyXG5AbWl4aW4gYnV0dG9uQURBKCRjb2xvcjogdmFyKC0tYnJhbmQtZGFyayksICRob3ZlckNvbG9yOiB2YXIoLS1hZGEtaG92ZXIpKSB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDAuNmVtIDEuMmVtO1xyXG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0LWdyZXkpO1xyXG5cclxuICBsaW5lLWhlaWdodDogMS4xZW07XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgZm9udC1mYW1pbHk6IHZhcigtLWJhc2ljLWZvbnQpO1xyXG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRjb2xvcik7XHJcblxyXG4gICZbZGlzYWJsZWRdLFxyXG4gICZbYXJpYS1kaXNhYmxlZD1cInRydWVcIl0ge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAmOm5vdChbZGlzYWJsZWRdKTpub3QoW2FyaWEtZGlzYWJsZWQ9XCJ0cnVlXCJdKSB7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KCRob3ZlckNvbG9yKTtcclxuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1saWdodC1ncmV5KTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwic2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJzaGFyZWQtbWl4aW5zXCIgYXMgKjtcclxuXHJcbi8vIEtFWUZSQU1FIEFOSU1BVElPTlMgRk9SIFpPT00gU0xJREVTSE9XIC8vXHJcbkBrZXlmcmFtZXMgem9vbUluIHtcclxuICBmcm9tIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcclxuICB9XHJcbiAgdG8ge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xyXG4gIH1cclxufVxyXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xyXG4gIGZyb20ge1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZmFkZUluIHtcclxuICBmcm9tIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcbkBrZXlmcmFtZXMgZmFkZU91dCB7XHJcbiAgZnJvbSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuICB0byB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGxheWVyIGJhc2Uge1xyXG4gICNiYWNrZ3JvdW5kIHtcclxuICAgIFtkYXRhLXNsaWRlc2hvdz1cInpvb21TbGlkZXNob3dcIl0ge1xyXG4gICAgICAmLnJldHVyblBhdXNlIHtcclxuICAgICAgICAuYmdJbWdXcmFwcGVyOmZpcnN0LWNoaWxkIHtcclxuICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5iZ0ltZ1dyYXBwZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjg1cztcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcblxyXG4gICAgICAgICYuY3VycmVudCB7XHJcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XHJcbiAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLnByZXYge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XHJcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XHJcbiAgICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbUluO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgICBhbmltYXRpb24tbmFtZTogem9vbU91dDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmJnSW1nIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XHJcbiAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxMHM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcblxyXG4gICAgICAgIC8vYmFja2dyb3VuZCBwb3N0aW9uIChYLFkpXHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImNlbnRlclwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwiY2VudGVyIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDUwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImNlbnRlciByaWdodFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgNTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwidG9wIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDEwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cInRvcCBtaWRkbGVcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cInRvcCByaWdodFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgMTAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYmctcG9zPVwiYm90dG9tIGxlZnRcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMTAlIDkwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJltkYXRhLWJnLXBvcz1cImJvdHRvbSBtaWRkbGVcIl0ge1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlIDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1iZy1wb3M9XCJib3R0b20gbGVmdFwiXSB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5MCUgOTAlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy9lc3RhYmxpc2hpbmcgdGhlIG9yaWdpbiBvZiB0aGUgem9vbSBhbmltYXRpb24gd2hpY2hcclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwiY2VudGVyXCJdIHtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1hbmltYXRpb249XCJ0b3AgcmlnaHRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwidG9wIGxlZnRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICZbZGF0YS1hbmltYXRpb249XCJib3R0b20gcmlnaHRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIHJpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmW2RhdGEtYW5pbWF0aW9uPVwiYm90dG9tIGxlZnRcIl0ge1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tIGxlZnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLnBhdXNlZCB7XHJcbiAgICAgICAgLmJnSW1nV3JhcHBlci50cmFucyB7XHJcbiAgICAgICAgICBhbmltYXRpb24tcGxheS1zdGF0ZTogcGF1c2VkO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYmdJbWcudHJhbnMge1xyXG4gICAgICAgICAgYW5pbWF0aW9uLXBsYXktc3RhdGU6IHBhdXNlZDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5iZ0ltZyxcclxuICAgIC5zZWN0aW9uQmcge1xyXG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICBAaW5jbHVkZSBiZ1BvcygpO1xyXG4gICAgfVxyXG4gICAgdmlkZW8ge1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQtZ3JleSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jYmFja2dyb3VuZCB7XHJcbiAgW2RhdGEtaXMtbG9hZGluZz1cInRydWVcIl0gJiB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuI2JhY2tncm91bmRQbGF5QnRuIHtcclxuICAvLyBAaW5jbHVkZSBkaXNjb3ZlcnlUb29sc0FjdGl2ZSB7XHJcbiAgLy8gICBkaXNwbGF5OiBub25lO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gQGluY2x1ZGUgYWN0aXZlRGlhbG9nKFwidXRpbGl0eU1lbnVcIikge1xyXG4gIC8vICAgZGlzcGxheTogbm9uZTtcclxuICAvLyB9XHJcblxyXG4gIC8vIEBpbmNsdWRlIGFjdGl2ZVpvbmUoXCJzbGlkZXNcIikge1xyXG4gIC8vICAgZGlzcGxheTogbm9uZTtcclxuICAvLyB9XHJcblxyXG4gIFtkYXRhLWlzLWxvYWRpbmc9XCJ0cnVlXCJdICYge1xyXG4gICAgb3BhY2l0eTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuXHJcbiAgLmljb24tcGxheSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuICAudGV4dCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgJjpiZWZvcmUsXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgIC5pY29uIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIC50ZXh0LnBhdXNlIHtcclxuICAgICAgYWxsOiB1bnNldDtcclxuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG4gICYucGF1c2Uge1xyXG4gICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgIC5pY29uLFxyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICAudGV4dC5wbGF5IHtcclxuICAgICAgICBhbGw6IHVuc2V0O1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmljb24tcGxheSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG4gICAgLmljb24tcGF1c2Uge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLWJhY2tncm91bmRcIjtcclxuQHVzZSBcIm1peGluc1wiIGFzICo7XHJcblxyXG46cm9vdCB7XHJcbiAgLS1iZy1vZmZzZXQ6IDUwMHB4O1xyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuICAgIC0tYmctb2Zmc2V0OiA0MDBweDtcclxuICB9XHJcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG4gICAgLS1iZy1vZmZzZXQ6IDMwMHB4O1xyXG4gIH1cclxuICBAbWVkaWEgKG1heC13aWR0aDogMTA3MHB4KSB7XHJcbiAgICAtLWJnLW9mZnNldDogMjAwcHg7XHJcbiAgfVxyXG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkdHdlZW4pIHtcclxuICAgIC0tYmctb2Zmc2V0OiAwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5AcHJvcGVydHkgLS1wMSB7XHJcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xyXG4gIGluaGVyaXRzOiB0cnVlO1xyXG4gIGluaXRpYWwtdmFsdWU6IDAlO1xyXG59XHJcblxyXG5AcHJvcGVydHkgLS1wMiB7XHJcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xyXG4gIGluaGVyaXRzOiB0cnVlO1xyXG4gIGluaXRpYWwtdmFsdWU6IDAlO1xyXG59XHJcblxyXG5AcHJvcGVydHkgLS1wMyB7XHJcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xyXG4gIGluaGVyaXRzOiB0cnVlO1xyXG4gIGluaXRpYWwtdmFsdWU6IDAlO1xyXG59XHJcblxyXG5AcHJvcGVydHkgLS1wNCB7XHJcbiAgc3ludGF4OiBcIjxwZXJjZW50YWdlPlwiO1xyXG4gIGluaGVyaXRzOiB0cnVlO1xyXG4gIGluaXRpYWwtdmFsdWU6IDAlO1xyXG59XHJcblxyXG5AcHJvcGVydHkgLS1vMSB7XHJcbiAgc3ludGF4OiBcIjxudW1iZXI+XCI7XHJcbiAgaW5oZXJpdHM6IHRydWU7XHJcbiAgaW5pdGlhbC12YWx1ZTogMTtcclxufVxyXG5cclxuQHByb3BlcnR5IC0tbzIge1xyXG4gIHN5bnRheDogXCI8bnVtYmVyPlwiO1xyXG4gIGluaGVyaXRzOiB0cnVlO1xyXG4gIGluaXRpYWwtdmFsdWU6IDE7XHJcbn1cclxuXHJcbkBwcm9wZXJ0eSAtLW8zIHtcclxuICBzeW50YXg6IFwiPG51bWJlcj5cIjtcclxuICBpbmhlcml0czogdHJ1ZTtcclxuICBpbml0aWFsLXZhbHVlOiAxO1xyXG59XHJcblxyXG5AcHJvcGVydHkgLS1vNCB7XHJcbiAgc3ludGF4OiBcIjxudW1iZXI+XCI7XHJcbiAgaW5oZXJpdHM6IHRydWU7XHJcbiAgaW5pdGlhbC12YWx1ZTogMTtcclxufVxyXG5cclxuI2JhY2tncm91bmQge1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwdnc7XHJcbiAgaGVpZ2h0OiAxMDB2aDtcclxuICB0cmFuc2l0aW9uOiBoZWlnaHQgJG1lZGl1bTtcclxuXHJcbiAgLy8gIFtkYXRhLXNob3djYXNlLWJhY2tncm91bmQ9XCJ0cnVlXCJdICYge1xyXG4gIHdpZHRoOiAxMDAlO1xyXG5cclxuICA+ICoge1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDM1MHB4KTtcclxuICB9XHJcbiAgLy8gIH1cclxuXHJcbiAgLmNvdmVyLXNsaWRlcixcclxuICB2aWRlbyxcclxuICAubWFpbkJnSW1nIHtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBpbnNldDogMDtcclxuICB9XHJcbiAgLnNlY3Rpb25CZ0hvbGRlciB7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICAubWVudU91dCAmIHtcclxuICAgICAgei1pbmRleDogMztcclxuICAgIH1cclxuICAgICZbZGF0YS1zZWN0aW9uLWJnLW9ubHk9XCJ0cnVlXCJdIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzO1xyXG4gICAgICAuaW5TZWN0aW9uICYge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jb3Zlci1zbGlkZXIge1xyXG4gICAgLmJnSW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYmdJbWcsXHJcbiAgLnNlY3Rpb25CZyB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDA7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLWJnLW9mZnNldCkpO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgdmlkZW8ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJi5tb3ZlIHtcclxuICAgIHRvcDogMDtcclxuICAgIGhlaWdodDogMzB2aDtcclxuICAgIHRyYW5zaXRpb246IGhlaWdodCAkbWVkaXVtICRtZWRpdW07XHJcbiAgICBmaWx0ZXI6IGJsdXIoMnB4KTtcclxuICAgIHZpZGVvLFxyXG4gICAgLmJnSW1nLFxyXG4gICAgLnNlY3Rpb25CZyB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC0tcDE6IDUwJTtcclxuICAgICAgLS1wMjogNTAlO1xyXG4gICAgICAtLXAzOiA1MCU7XHJcbiAgICAgIC0tcDQ6IDEwMCU7XHJcbiAgICAgIC0tbzE6IDE7XHJcbiAgICAgIC0tbzI6IDE7XHJcbiAgICAgIC0tbzM6IDE7XHJcbiAgICAgIC0tbzQ6IDAuMjtcclxuICAgIH1cclxuICB9XHJcbiAgW2RhdGEtc2xpZGU9XCJjZW50ZXJlZFwiXS5tZW51T3V0ICYsXHJcbiAgW2RhdGEtc2xpZGU9XCJmdWxsXCJdLm1lbnVPdXQgJiB7XHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgLS1wMTogMCU7XHJcbiAgICAgIC0tcDI6IDQwJTtcclxuICAgICAgLS1wMzogNzAlO1xyXG4gICAgICAtLXA0OiAxMDAlO1xyXG4gICAgICAtLW8xOiAwLjk7XHJcbiAgICAgIC0tbzI6IDE7XHJcbiAgICAgIC0tbzM6IDE7XHJcbiAgICAgIC0tbzQ6IDAuOTtcclxuICAgIH1cclxuICB9XHJcbiAgW2RhdGEtc2xpZGU9XCJmcmFtZVwiXS5tZW51T3V0ICYge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC0tcDE6IDAlO1xyXG4gICAgICAtLXAyOiA0MCU7XHJcbiAgICAgIC0tcDM6IDcwJTtcclxuICAgICAgLS1wNDogMTAwJTtcclxuICAgICAgLS1vMTogMC44NTtcclxuICAgICAgLS1vMjogMC45O1xyXG4gICAgICAtLW8zOiAwLjk7XHJcbiAgICAgIC0tbzQ6IDAuODU7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5AbWVkaWEgKG1heC13aWR0aDogJG1kKSB7XHJcbiAgI2JhY2tncm91bmQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC8vIFZhcmlhYmxlcyB0byBjb250cm9sIGVhY2ggc2VnbWVudCBvZiB0aGUgZ3JhZGllbnQsIHVzZWQgZm9yIGFuaW1hdGlvbi5cclxuICAgICAgLS1wMTogMCU7XHJcbiAgICAgIC0tcDI6IDIwJTtcclxuICAgICAgLS1wMzogNTUlO1xyXG4gICAgICAtLXA0OiAxMDAlO1xyXG4gICAgICAtLW8xOiAwO1xyXG4gICAgICAtLW8yOiAwO1xyXG4gICAgICAtLW8zOiAwLjk1O1xyXG4gICAgICAtLW80OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIC5tZW51T3V0ICYge1xyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICAtLXAxOiAwJTtcclxuICAgICAgICAtLXAyOiA0MCU7XHJcbiAgICAgICAgLS1wMzogNzAlO1xyXG4gICAgICAgIC0tcDQ6IDEwMCU7XHJcbiAgICAgICAgLS1vMTogMC45O1xyXG4gICAgICAgIC0tbzI6IDE7XHJcbiAgICAgICAgLS1vMzogMTtcclxuICAgICAgICAtLW80OiAwLjk7XHJcbiAgICAgICAgLy8gbGVmdDogMDtcclxuICAgICAgICAvLyByaWdodDogYXV0bztcclxuICAgICAgICAvLyB3aWR0aDogMTAwJTtcclxuICAgICAgICAvLyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoLTkwZGVnLCB2YXItcmdiYSgtLWxpZ2h0LCAwLjkpLCB2YXItcmdiYSgtLWxpZ2h0LCAxKSAzMCUsIHZhci1yZ2JhKC0tbGlnaHQsIDEpIDYwJSwgdmFyLXJnYmEoLS1saWdodCwgMC45KSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkdHdlZW4pIHtcclxuICAjYmFja2dyb3VuZCB7XHJcbiAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgei1pbmRleDogMTtcclxuICAgIC5jb3Zlci1zbGlkZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICAgIC5tZW51T3V0ICYge1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC8vIFZhcmlhYmxlcyB0byBjb250cm9sIGVhY2ggc2VnbWVudCBvZiB0aGUgZ3JhZGllbnQsIHVzZWQgZm9yIGFuaW1hdGlvbi5cclxuICAgICAgLS1wMTogMCU7XHJcbiAgICAgIC0tcDI6IDIwJTtcclxuICAgICAgLS1wMzogNTUlO1xyXG4gICAgICAtLXA0OiAxMDAlO1xyXG4gICAgICAtLW8xOiAwO1xyXG4gICAgICAtLW8yOiAwO1xyXG4gICAgICAtLW8zOiAwLjk1O1xyXG4gICAgICAtLW80OiAxO1xyXG4gICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyAjYmFja2dyb3VuZFBsYXlCdG4ge1xyXG4gIC8vICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIC8vICAgYm90dG9tOiBhdXRvO1xyXG4gIC8vICAgbGVmdDogYXV0bztcclxuICAvLyAgIHJpZ2h0OiAxMHB4O1xyXG4gIC8vICAgdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgMTBweCk7XHJcbiAgLy8gfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHNtKSB7XHJcbiAgI2JhY2tncm91bmQge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC0tcDE6IDAlO1xyXG4gICAgICAtLXAyOiAyMCU7XHJcbiAgICAgIC0tcDM6IDEwMCU7XHJcbiAgICAgIC0tcDQ6IDEwMCU7XHJcbiAgICAgIC0tbzE6IDA7XHJcbiAgICAgIC0tbzI6IDE7XHJcbiAgICAgIC0tbzM6IDE7XHJcbiAgICAgIC0tbzQ6IDE7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgdG9wOiBtYXgoMTAwcHgsIDI1dmgpO1xyXG4gICAgICBoZWlnaHQ6IG1heChjYWxjKDEwMCUgLSAxMDBweCksIGNhbGMoMTAwJSAtIDUwdmgpKTtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdmFyLXJnYmEoLS1saWdodCwgLS1vMSkgdmFyKC0tcDEpLCB2YXItcmdiYSgtLWxpZ2h0LCAtLW8yKSB2YXIoLS1wMiksIHZhci1yZ2JhKC0tbGlnaHQsIC0tbzMpIHZhcigtLXAzKSwgdmFyLXJnYmEoLS1saWdodCwgLS1vNCkgdmFyKC0tcDQpKTtcclxuICAgIH1cclxuICAgIC5iZ0ltZyxcclxuICAgIC5zZWN0aW9uQmcsXHJcbiAgICB2aWRlbyxcclxuICAgIC5tYWluQmdJbWcsXHJcbiAgICAuc2VjdGlvbkJnSG9sZGVyIHtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBoZWlnaHQ6IDEwMHZoO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR4eHMpIHtcclxuICAjYmFja2dyb3VuZFBsYXlCdG4ge1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwibWl4aW5zXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcblxyXG4vLyBCRUdJTiBCQVNFIFNUWUxFUyAtIERPIE5PVCBDSEFOR0UgVEhFU0UgVU5MRVNTIFlPVSBLTk9XIFdIQVQgWU9VJ1JFIERPSU5HIC8vXHJcblxyXG5ib2R5IHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1saWdodCk7XHJcbn1cclxuXHJcbi5idWZmZXIge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICB6LWluZGV4OiAxMjA7XHJcbiAgLy8gZmxleC1ncm93OiAxO1xyXG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1NXB4KTtcclxufVxyXG4jYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcge1xyXG4gIHZpZGVvIHtcclxuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAzNTBweCk7XHJcbiAgfVxyXG59XHJcblxyXG5mb290ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogNTVweDtcclxuICBwYWRkaW5nOiAwIDE1cHg7XHJcbiAgYmFja2dyb3VuZDogIzAwMDtcclxuICB6LWluZGV4OiA5OTk5O1xyXG5cclxuICAuYWRnTG9nb1dyYXAge1xyXG4gICAgYSB7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcclxuICAgICAgQGluY2x1ZGUgaG92ZXIge1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYXNpYyk7XHJcbiAgICAgIH1cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hZGdMb2dvIHtcclxuICAgICAgaGVpZ2h0OiAzOHB4O1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5zb2NpYWxNZWRpYSB7XHJcbiAgbWF4LXdpZHRoOiA1MDBweDtcclxuICB3aWR0aDogMTAwJTtcclxuICAuc29jaWFsTWVkaWFUaXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICB9XHJcblxyXG4gIC5zb2NpYWxNZWRpYUxvZ2lucyB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xyXG4gICAgZ2FwOiAxMHB4O1xyXG4gICAgLmZhY2Vib29rTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiByZ2IoOCwgMTAyLCAyNTUpICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLmdvb2dsZUxvZ2luIHtcclxuICAgICAgYmFja2dyb3VuZDogI2ViZWJlYyAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC50d2l0dGVyTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAjMTQxNzFhICFpbXBvcnRhbnQ7XHJcbiAgICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgLnRleHQge1xyXG4gICAgICAgIEBpbmNsdWRlIHNjcmVlblJlYWRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcGxlTG9naW4ge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBibGFjayAhaW1wb3J0YW50O1xyXG4gICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgID4gYSB7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXhDZW50ZXI7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgcGFkZGluZzogMWVtICFpbXBvcnRhbnQ7XHJcbiAgICAgIGJvcmRlcjogMHB4O1xyXG5cclxuICAgICAgLnN2Z0ljb24ge1xyXG4gICAgICAgIHdpZHRoOiAxNnB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcclxuICAgICAgfVxyXG4gICAgICAudGV4dCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFwcGxlTG9naW4ge1xyXG4gICAgICBoZWlnaHQ6IDQ1cHg7XHJcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgPiBkaXYge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4vKi5sb2dpbldyYXBwZXJbZGF0YS1oaWRkZW4tZm9yLWd1ZXN0PVwidHJ1ZVwiXSB7XHJcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG59Ki9cclxuXHJcbi5ndWVzdFdyYXBwZXJIb2xkZXIge1xyXG4gIG1heC1oZWlnaHQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRyYW5zaXRpb246IGFsbCAkc2xvdztcclxuICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4vL1RoZXNlIHN0eWxlIGlzIGp1c3QgdXNlZCBmb3IgdGhlIEhvbmV5cG90IGZlYXR1cmUuIFRoZXNlIHN0eWxlcyBrZWVwIHRoZSBmaWVsZCBmcm9tIGJlaW5nIHNlZW4gYnkgaHVtYW5zIGFuZCB0aGV5IHNob3VsZCBub3QgYmUgY2hhbmdlZCBvciByZW1vdmVkLlxyXG4uZmllbGRXcmFwcGVyLmVucm9sbGVlTmFtZSB7XHJcbiAgb3BhY2l0eTogMDtcclxuICBAaW5jbHVkZSBhYnNvbHV0ZTtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbi5maWVsZFdyYXBwZXIucGhvbmUge1xyXG4gICNQaG9uZU51bWJlciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcbiAgfVxyXG5cclxuICAuaXRpIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgY29sb3I6IHZhcigtLWJhc2ljKTtcclxuXHJcbiAgICAuaXRpX19jb3VudHJ5LWNvbnRhaW5lciB7XHJcbiAgICAgIHRvcDogMThweDtcclxuICAgICAgYm90dG9tOiAxcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLml0aV9fc2VsZWN0ZWQtY291bnRyeSB7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cykgMCAwIHZhcigtLXJhZGl1cyk7XHJcbiAgICB9XHJcblxyXG4gICAgLml0aV9fZHJvcGRvd24tY29udGVudCB7XHJcbiAgICAgIHotaW5kZXg6IDM7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG46cm9vdCB7XHJcbiAgLS1pdGktcGF0aC1mbGFncy0xeDogdXJsKFwiL0ltYWdlcy9mbGFncy5wbmdcIik7XHJcbiAgLS1pdGktcGF0aC1mbGFncy0yeDogdXJsKFwiL0ltYWdlcy9mbGFnc0AyeC5wbmdcIik7XHJcbiAgLS1pdGktcGF0aC1nbG9iZS0xeDogdXJsKFwiL0ltYWdlcy9nbG9iZS5wbmdcIik7XHJcbiAgLS1pdGktcGF0aC1nbG9iZS0yeDogdXJsKFwiL0ltYWdlcy9nbG9iZUAyeC5wbmdcIik7XHJcbn1cclxuXHJcbi8vIEVORCBCQVNFIFNUWUxFUyAvL1xyXG5cclxuOnJvb3Qge1xyXG4gIC0tbG9naW4tdzogNjAwcHg7XHJcbiAgLS1sb2dpbi1oZWFkZXItaGVpZ2h0OiAxNTVweDtcclxufVxyXG5cclxuLm1lbWJlcnNoaXBCdWZmZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICBwYWRkaW5nLXRvcDogMzBweDtcclxuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAwcHggNXB4IHJnYmEoYmxhY2ssIDAuMzUpKTtcclxufVxyXG5cclxuI2JhY2tncm91bmQge1xyXG4gIHRvcDogMDtcclxuICBoZWlnaHQ6IDEwMHZoO1xyXG59XHJcblxyXG4jYmFja2dyb3VuZFBsYXlCdG4ge1xyXG4gIHRvcDogYXV0bztcclxuICBib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi5sb2dpblRlYXNlclZpZGVvIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIGxlZnQ6IDUwcHg7XHJcbiAgcmlnaHQ6IDY4MHB4O1xyXG4gIHotaW5kZXg6IDk5O1xyXG5cclxuICAudmlkZW9Ib2xkZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIGhlaWdodDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBwYWRkaW5nOiA1Ni4yNSUgMCAwO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspIHVybChcIi9pbWFnZXMvbG9hZC1zY3JlZW4uanBnXCIpIG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcblxyXG4gICAgJltkYXRhLXZpbWVvLWluaXRpYWxpemVkXSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJhc2ljKTtcclxuICAgIH1cclxuXHJcbiAgICAucGxheWVyLFxyXG4gICAgaWZyYW1lIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmhlYWRlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBtaW4taGVpZ2h0OiB2YXIoLS1sb2dpbi1oZWFkZXItaGVpZ2h0KTtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXgtd2lkdGg6IHZhcigtLWxvZ2luLXcpO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGJvcmRlci1ib3R0b206IDIwcHggc29saWQgdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCh2YXIoLS1saWdodCkpO1xyXG4gIHBhZGRpbmc6IDI1cHggMHB4IDIwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpIDAgMDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cclxuICAuYnJhbmRpbmcge1xyXG4gICAgQGluY2x1ZGUgZmxleENlbnRlcigkZGlyOiBjb2x1bW4pO1xyXG4gICAgZmxleC1ncm93OiAxO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgcGFkZGluZzogMHB4IDEwcHg7XHJcbiAgfVxyXG4gIC5sb2dvV3JhcCB7XHJcbiAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiAzMTVweDtcclxuICAgIGhlaWdodDogNzBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC5sb2dvIHtcclxuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xyXG4gICAgICB3aWR0aDogYXV0bztcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm9yaWVudGF0aW9uVGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICBwYWRkaW5nLXRvcDogMjVweDtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG59XHJcblxyXG4jbWVtYmVyc2hpcCB7XHJcbiAgLS1mb2N1cy1vdXRsaW5lLWNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAtLWZvY3VzLXNoYWRvdy1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gIG1heC13aWR0aDogdmFyKC0tbG9naW4tdyk7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgZmxleC1ncm93OiAxO1xyXG4gIGNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICBwYWRkaW5nOiA0MHB4IDI1cHggNjBweDtcclxuICBib3JkZXItcmFkaXVzOiAwIDAgdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xyXG5cclxuICAudGl0bGVBcmVhIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XHJcblxyXG4gICAgJi5hY2NvdW50UHJvZmlsZXIge1xyXG4gICAgICBoMSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5lcnJvck1lc3NhZ2UsXHJcbiAgLmZpZWxkLXZhbGlkYXRpb24tZXJyb3Ige1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS13cm9uZyk7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHg7XHJcbiAgICBtYXJnaW46IDJweCBhdXRvIDEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyLXJnYmEoLS1saWdodCwgMC40KTtcclxuICB9XHJcblxyXG4gIC5sb2dpbk5hdiB7XHJcbiAgICBAaW5jbHVkZSBmbGV4Q2VudGVyO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhci1yZ2JhKC0tbGlnaHQsIDAuMyk7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDE1cHg7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBhIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgcGFkZGluZzogM3B4IDVweDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDBweDtcclxuICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiA1cHg7XHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyIHtcclxuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgIH1cclxuICAgICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICA+ICoge1xyXG4gICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm1XcmFwIHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG5cclxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgICAgIEBpbmNsdWRlIGNoZWNrYm94KCRib3JkZXJDb2xvcjogdmFyKC0tYnJhbmQtZGFyayksICRzZWxlY3RlZENvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpLCAkc2VsZWN0ZWRCb3JkZXI6IHZhcigtLWxpZ2h0KSk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIH4gbGFiZWwsXHJcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0gfiBsYWJlbCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogMC4zNWVtO1xyXG4gICAgfVxyXG4gICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcclxuICAgICAgZm9udC1zaXplOiAxLjFlbTtcclxuICAgICAgQGluY2x1ZGUgcmFkaW8oJHNlbGVjdGVkQm9yZGVyOiB2YXIoLS1icmFuZC1kYXJrKSwgJHNlbGVjdGVkQ29sb3I6IHZhcigtLWhvdmVyKSwgJGJvcmRlckNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0eWxlZEZpZWxkc2V0IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICAgIGxlZ2VuZCB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybVdyYXAubG9naW4ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgbWF4LXdpZHRoOiA0NTBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcblxyXG4gICAgLnN0YXR1c01lc3NhZ2Uge1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCh2YXIoLS1ibGFjaykpO1xyXG4gICAgICBwYWRkaW5nOiA1cHggMTBweDtcclxuICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICBtYXJnaW46IDEwcHggYXV0bztcclxuICAgIH1cclxuXHJcbiAgICAuaG9yekRpdmlkZXIge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgbWFyZ2luOiAwcHggMCAwO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgIC8vIC5saW5lIHtcclxuICAgICAgLy8gICBoZWlnaHQ6IDJweDtcclxuICAgICAgLy8gICBmbGV4LWdyb3c6IDE7XHJcbiAgICAgIC8vICAgYmFja2dyb3VuZDogdmFyKC0tbGlnaHQpO1xyXG4gICAgICAvLyAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgIC8vIH1cclxuXHJcbiAgICAgIC5vciB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBtYXJnaW4taW5saW5lOiAxNXB4O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzKTtcclxuICAgICAgICB0cmFuc2xhdGU6IDAgMjBweDtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmxvZ2luV3JhcHBlciB7XHJcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJyYW5kLWRhcmstY29udHJhc3QpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBwYWRkaW5nOiAyMHB4O1xyXG4gICAgICAuZmllbGRXcmFwcGVyIHtcclxuICAgICAgICBtaW4td2lkdGg6IDI4MHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5maWVsZC12YWxpZGF0aW9uLWVycm9yIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICB9XHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuZm9ybVdyYXAubGFuZGluZ1BhZ2Uge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwcHg7XHJcbiAgICAuYnV0dG9ucyB7XHJcbiAgICAgIC0tZ3JhcGhpYzogNzVweDtcclxuICAgICAgLS1ndWVzdC1ncmFwaGljOiA2MHB4O1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG4gICAgICBnYXA6IDI1cHg7XHJcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgcGFkZGluZzogMHB4IDI1cHggMCAwO1xyXG4gICAgICBhIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWxpZ2h0KTtcclxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAvL0NyZWF0ZXMgc2FtZSBob3ZlciBlZmZlY3QgYXMgbmF2aWdhdGlvblxyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgICAgc2NhbGU6IDAgMC4yNTtcclxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDAlIDUwJTtcclxuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1jaXJjbGUpO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLXNtb290aC1zbSk7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICAmOmhhcyguaW1hZ2UpIHtcclxuICAgICAgICAgIC0tZ3JhcGhpYzogOTBweDtcclxuICAgICAgICAgIC5pbWFnZSB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGZpbGxTcGFjZTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYmFja2dyb3VuZENvdmVyO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxLjhlbTtcclxuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBjb2xvciAkZmFzdDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmdyYXBoaWNIb2xkZXIge1xyXG4gICAgICAgICAgbWluLXdpZHRoOiB2YXIoLS1ncmFwaGljKTtcclxuICAgICAgICAgIHdpZHRoOiB2YXIoLS1ncmFwaGljKTtcclxuICAgICAgICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICB6LWluZGV4OiAzO1xyXG4gICAgICAgICAgLmljb24sXHJcbiAgICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2lyY2xlKTtcclxuICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XHJcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pY29uIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGZsZXhDZW50ZXI7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIuOGVtO1xyXG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICBAaW5jbHVkZSBmaWxsU3BhY2U7XHJcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgdHJhbnNpdGlvbjpcclxuICAgICAgICAgICAgYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLXNtb290aC1zbSksXHJcbiAgICAgICAgICAgIGNvbG9yICRmYXN0O1xyXG4gICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogdmFyKC0taWNvbi1mb250KTtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcclxuICAgICAgICAgICAgY29udGVudDogXCJrXCI7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgei1pbmRleDogMztcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAvL0NyZWF0ZXMgc2FtZSBob3ZlciBlZmZlY3QgYXMgbmF2aWdhdGlvblxyXG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGluc2V0OiAwO1xyXG4gICAgICAgICAgICBzY2FsZTogMCAwLjI1O1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtY2lyY2xlKTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW0gdmFyKC0tdGltaW5nLXNtb290aC1zbSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZW5yb2xsZWVMb2dpbkJ0biB7XHJcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgICAgIC5ncmFwaGljSG9sZGVyIHtcclxuICAgICAgICAgICAgdHJhbnNsYXRlOiAtMjBweCAwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuaWNvbiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICAgICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICAgICAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiQ1wiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmd1ZXN0TG9naW5CdG4ge1xyXG4gICAgICAgICAgLS1ncmFwaGljOiB2YXIoLS1ndWVzdC1ncmFwaGljKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICAgICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICAgICAgZ2FwOiAxMHB4O1xyXG4gICAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xyXG4gICAgICAgICAgLmdyYXBoaWNIb2xkZXIge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IHZhcigtLWd1ZXN0LWdyYXBoaWMpO1xyXG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tZ3Vlc3QtZ3JhcGhpYyk7XHJcbiAgICAgICAgICAgIHRyYW5zbGF0ZTogLTIwcHggMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xyXG4gICAgICAgICAgICB0cmFuc2xhdGU6IC0xMHB4IDBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5pY29uIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICAgICAgICAgIGNvbG9yOiBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICAgICAgLmljb24ge1xyXG4gICAgICAgICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1icmlnaHQpKTtcclxuICAgICAgICAgICAgc2NhbGU6IDEuMTtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgc2NhbGU6IDEgMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLnRleHQge1xyXG4gICAgICAgICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1icmlnaHQpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICAgICAgICBzY2FsZTogMSAxO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm1XcmFwLmFjY291bnRQcm9maWxlciB7XHJcbiAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgdGV4dC1hbGlnbjogbGVmdDtcclxuXHJcbiAgICAucHJvZmlsZVNldHRpbmdzRXhwbGFpbmVyLFxyXG4gICAgLnByb2ZpbGVFcnJvcldyYXAge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmVycm9yTWVzc2FnZSB7XHJcbiAgICAgIGxpIHtcclxuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaW5zdHJ1Y3Rpb24ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB9XHJcblxyXG4gICAgLmFjY29yZGlvbldyYXBwZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xyXG4gICAgICBjb2xvcjogY2FsYy1jb250cmFzdCh2YXIoLS1icmFuZC1kYXJrKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0eWxlZEZpZWxkc2V0IHtcclxuICAgICAgZm9udC1zaXplOiAwLjllbTtcclxuICAgICAgLy9ib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyLXJnYmEoLS1saWdodCwgMC41KSAhaW1wb3J0YW50O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMThweDtcclxuXHJcbiAgICAgIC5jb250cm9sV3JhcHBlciB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0eWxlZEZpZWxkc2V0LnBob25lIHtcclxuICAgICAgLmZpZWxkV3JhcHBlciB7XHJcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgMTVweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgfVxyXG4gICAgICAuY29udHJvbFdyYXBwZXIge1xyXG4gICAgICAgIC5jb250cm9sIHtcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJ1dHRvbkhvbGRlciB7XHJcbiAgICAgIG1hcmdpbjogMjBweCAwIDIwcHg7XHJcbiAgICB9XHJcbiAgICAucmVzZXRBY2NvdW50VHlwZUJ0biB7XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMC44ZW07XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBAaW5jbHVkZSBjb2xvcldpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG4gICAgICB0cmFuc2l0aW9uOiAkdmVyeUZhc3Q7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIHBhZGRpbmc6IDJweDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgICBAaW5jbHVkZSBjb2xvcldpdGhDb250cmFzdCgtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuYWNjb3JkaW9uTW9kdWxlIC5hY2NvcmRpb25UaXRsZSB7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tbGlnaHQpO1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJhc2ljKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmZvcm1XcmFwLnR3b0ZhY3RvciB7XHJcbiAgICAuc2luZ2xlRmllbGRTdWJtaXNzaW9uIHtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG4gICAgICAuZmllbGRXcmFwcGVyIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweCAwIDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgI1RGQUJ1dHRvbkFwcCB7XHJcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbjtcclxuICAgICAgcGFkZGluZzogMC4zNWVtIDAuNWVtO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgICNURkFCdXR0b25FbWFpbCxcclxuICAgICNPVFBCdXR0b24ge1xyXG4gICAgICBib3JkZXI6IDA7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIHBhZGRpbmc6IDAgMCA1cHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuICAgICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG4gICAgICAmW2RhdGEtd2FpdC1hLWZldz1cInRydWVcIl0ge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNjtcclxuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYnV0dG9uSG9sZGVyIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG5cclxuICAgIGJ1dHRvbiB7XHJcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xyXG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3R5bGVkRmllbGRzZXQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHJcbiAgICAuZ3JvdXBMZWdlbmQge1xyXG4gICAgICBwYWRkaW5nOiA0cHggMnB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uc2ltcGxlRGlhbG9nIHtcclxuICAuY2xvc2VEaWFsb2cge1xyXG4gICAgQGluY2x1ZGUgYnV0dG9uO1xyXG5cclxuICAgIC5pY29uIHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbiNyZXNldERhdGEge1xyXG4gIGJ1dHRvbiB7XHJcbiAgICBAaW5jbHVkZSBidXR0b247XHJcbiAgfVxyXG59XHJcblxyXG4vLyBNRURJQSBRVUVSSUVTICYgQlJPV1NFUi1TUEVDSUZJQyBBREpVU1RNRU5UUyBCRUxPVyAvL1xyXG5AbWVkaWEgKG1heC13aWR0aDogJGxnKSB7XHJcbiAgLmxvZ2luVGVhc2VyVmlkZW8ge1xyXG4gICAgbGVmdDogMjBweDtcclxuICAgIHJpZ2h0OiA2NTBweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6ICRtZCkge1xyXG4gIC5sb2dpblRlYXNlclZpZGVvIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGxlZnQ6IGF1dG87XHJcbiAgICByaWdodDogYXV0bztcclxuICAgIHRvcDogYXV0bztcclxuICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgcGFkZGluZzogMCA2cHggMTVweDtcclxuICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR0d2Vlbikge1xyXG4gIDpyb290IHtcclxuICAgIC0tbG9naW4tdzogNTUwcHg7XHJcbiAgfVxyXG4gIC5tZW1iZXJzaGlwQnVmZmVyIHtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gIH1cclxuICAjYmFja2dyb3VuZC5tZW1iZXJzaGlwQmcge1xyXG4gICAgaGVpZ2h0OiA3MHZoO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICAuYmdJbWcsXHJcbiAgICAuc2VjdGlvbkJnLFxyXG4gICAgdmlkZW8ge1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gICAgJjpiZWZvcmUge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHotaW5kZXg6IDIwO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDYwJTtcclxuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHZhci1yZ2JhKC0tbGlnaHQsIDApLCB2YXIoLS1saWdodCkpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR4cykge1xyXG4gICNyZXNldERhdGEge1xyXG4gICAgYnV0dG9uIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcclxuICAgIH1cclxuICB9XHJcbiAgYm9keTphZnRlciB7XHJcbiAgICBtYXgtd2lkdGg6IG5vbmU7XHJcbiAgfVxyXG4gIGhlYWRlciB7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG4gICNtZW1iZXJzaGlwIHtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbiAgICAuZm9ybVdyYXAubGFuZGluZ1BhZ2UgLmJ1dHRvbnMge1xyXG4gICAgICBwYWRkaW5nOiAwcHggMjVweCAwIDI1cHg7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAmLmd1ZXN0TG9naW5CdG4sXHJcbiAgICAgICAgJi5lbnJvbGxlZUxvZ2luQnRuIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR4eHMpIHtcclxuICAubWVtYmVyc2hpcEJ1ZmZlciB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDE4cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAxOHB4O1xyXG4gIH1cclxuICAjbWVtYmVyc2hpcCB7XHJcbiAgICBwYWRkaW5nOiAyMHB4IDEycHggNjBweDtcclxuICAgIC5mb3JtV3JhcCB7XHJcbiAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgIH1cclxuICAgIC5mb3JtV3JhcC5sYW5kaW5nUGFnZSB7XHJcbiAgICAgIC5idXR0b25zIHtcclxuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgICAgIGdhcDogMTVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR0aW55KSB7XHJcbiAgI21lbWJlcnNoaXAge1xyXG4gICAgLmZvcm1XcmFwLmxhbmRpbmdQYWdlIHtcclxuICAgICAgLmJ1dHRvbnMge1xyXG4gICAgICAgIC0tZ3JhcGhpYzogNjVweDtcclxuICAgICAgICAtLWd1ZXN0LWdyYXBoaWM6IDUycHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwic2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJzaGFyZWQtbWl4aW5zXCIgYXMgKjtcclxuQHVzZSBcIm1ldGEtbWl4aW5zXCIgYXMgKjtcclxuXHJcbi5ydGUge1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIGg0LFxyXG4gIGg1IHtcclxuICAgIG1hcmdpbjogMC44ZW0gMCAwLjVlbTtcclxuICB9XHJcbiAgPiAqOmZpcnN0LWNoaWxkIHtcclxuICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuICB9XHJcbiAgPiAqOmxhc3QtY2hpbGQge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG4gIH1cclxuICBhIHtcclxuICAgIEBpbmNsdWRlIGZvY3VzIHtcclxuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IGJsYWNrICFpbXBvcnRhbnQ7XHJcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGE6aGFzKGltZykge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgLmljb24ge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMnB4O1xyXG4gICAgICByaWdodDogM3B4O1xyXG4gICAgICBwYWRkaW5nOiA2cHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSk7XHJcbiAgICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tYnJhbmQtYnJpZ2h0KTtcclxuICAgICAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93KTtcclxuICAgICAgdHJhbnNpdGlvbjogYWxsICR2ZXJ5RmFzdDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgICAuaWNvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1ob3Zlcik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC8vIC5pY29uIHtcclxuICAgIC8vICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgLy8gfVxyXG4gIH1cclxuXHJcbiAgLy8gQkVHSU4gSU5MSU5FIE1FRElBIFNUWUxFUyAvL1xyXG4gIGlmcmFtZSB7XHJcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwdncgLSAoNDBweCAqIDIpKTtcclxuICAgIG1heC1oZWlnaHQ6IGNhbGMoKDEwMHZ3IC0gKDQwcHggKiAyKSkgLyAxLjc3NzgpOyAvKiAxNjo5ICovXHJcbiAgfVxyXG5cclxuICBpbWcge1xyXG4gICAgbWFyZ2luOiAxMHB4O1xyXG4gICAgJltzdHlsZSo9XCJmbG9hdDogcmlnaHRcIl0ge1xyXG4gICAgICBtYXJnaW46IDAgMCAyMHB4IDIwcHg7XHJcbiAgICB9XHJcbiAgICAmW3N0eWxlKj1cImZsb2F0OiBsZWZ0XCJdIHtcclxuICAgICAgbWFyZ2luOiAwIDIwcHggMjBweCAwcHg7XHJcbiAgICB9XHJcbiAgICAmW3N0eWxlKj1cImZsb2F0OiByaWdodFwiXSxcclxuICAgICZbc3R5bGUqPVwiZmxvYXQ6IGxlZnRcIl0ge1xyXG4gICAgICBtYXgtd2lkdGg6IDYwJTtcclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR4cykge1xyXG4gICAgICAgIG1heC13aWR0aDogNTAlO1xyXG4gICAgICB9XHJcbiAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkeHhzKSwgKG1heC13aWR0aDogJG1kKSBhbmQgKG1pbi13aWR0aDogJHNtICsgMSkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvIDhweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJHBhZDogNXB4O1xyXG4gICRib3JkZXI6IDFweDtcclxuICBmaWd1cmU6bm90KC50ZXJtQmJsKSB7XHJcbiAgICBtYXJnaW46IDIwcHggMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMpICsgI3skcGFkfSAtIHZhcigtLWJvcmRlcikpO1xyXG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXIpIHNvbGlkIHZhcigtLWdyZXkpO1xyXG4gICAgcGFkZGluZzogJHBhZDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIGltZyB7XHJcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpIHZhcigtLXJhZGl1cykgMHB4IDBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbjogMCAwIDIwcHggMjBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSB7XHJcbiAgICAgIGZsb2F0OiBsZWZ0O1xyXG4gICAgICBtYXJnaW46IDAgMjBweCAyMHB4IDBweDtcclxuICAgIH1cclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogbGVmdFwiXSxcclxuICAgICZbc3R5bGUqPVwidGV4dC1hbGlnbjogcmlnaHRcIl0ge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICAgIG1heC13aWR0aDogNjAlO1xyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XHJcbiAgICAgIH1cclxuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6ICR4eHMpLCAobWF4LXdpZHRoOiAkbWQpIGFuZCAobWluLXdpZHRoOiAkc20gKyAxKSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG8gOHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZmlnY2FwdGlvbiB7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggdmFyKC0tcmFkaXVzKSB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0LWdyZXkpO1xyXG4gICAgICBmb250LXNpemU6IDAuOWVtO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gRU5EIElOTElORSBNRURJQSBTVFlMRVMgLy9cclxuXHJcbiAgb2wge1xyXG4gICAgJltzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7XCJdLFxyXG4gICAgJltzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogbG93ZXItYWxwaGE7XCJdLFxyXG4gICAgJltzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogbG93ZXItZ3JlZWs7XCJdLFxyXG4gICAgJltzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogdXBwZXItcm9tYW47XCJdLFxyXG4gICAgJltzdHlsZT1cImxpc3Qtc3R5bGUtdHlwZTogbG93ZXItcm9tYW47XCJdIHtcclxuICAgICAgPiBsaTpiZWZvcmUge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9XQUkvV0NBRzIxL1VuZGVyc3RhbmRpbmcvcmVmbG93Lmh0bWxcclxuICAvLyBFeGFtcGxlcyBvZiBjb250ZW50IHdoaWNoIHJlcXVpcmVzIHR3by1kaW1lbnNpb25hbCBsYXlvdXQgYXJlIFsuLi5dIGRhdGEgdGFibGVzIChub3QgaW5kaXZpZHVhbCBjZWxscyksIGFuZCBpbnRlcmZhY2VzXHJcbiAgLy8gd2hlcmUgaXQgaXMgbmVjZXNzYXJ5IHRvIGtlZXAgdG9vbGJhcnMgaW4gdmlldyB3aGlsZSBtYW5pcHVsYXRpbmcgY29udGVudC4gSXQgaXMgYWNjZXB0YWJsZSB0byBwcm92aWRlIHR3by1kaW1lbnNpb25hbFxyXG4gIC8vIHNjcm9sbGluZyBmb3Igc3VjaCBwYXJ0cyBvZiB0aGUgY29udGVudC5cclxuICAudGFibGVXcmFwcGVyIHtcclxuICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIGJhY2tncm91bmQ6XHJcbiAgICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tbGlnaHQpIDMwJSwgdmFyLXJnYmEoLS1saWdodCwgMCkpLFxyXG4gICAgICBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhci1yZ2JhKC0tbGlnaHQsIDApLCB2YXIoLS1saWdodCkgNzAlKSAwIDEwMCUsXHJcbiAgICAgIHJhZGlhbC1ncmFkaWVudChmYXJ0aGVzdC1zaWRlIGF0IDAlIDUwJSwgdmFyLXJnYmEoLS1ibGFjaywgMC4yKSwgdmFyLXJnYmEoLS1ibGFjaywgMCkpLFxyXG4gICAgICByYWRpYWwtZ3JhZGllbnQoZmFydGhlc3Qtc2lkZSBhdCAxMDAlIDUwJSwgdmFyLXJnYmEoLS1ibGFjaywgMC4yKSwgdmFyLXJnYmEoLS1ibGFjaywgMCkpIDAgMTAwJTtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6XHJcbiAgICAgIDQwcHggMTAwJSxcclxuICAgICAgNDBweCAxMDAlLFxyXG4gICAgICAxNHB4IDEwMCUsXHJcbiAgICAgIDE0cHggMTAwJTtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246XHJcbiAgICAgIDAgMCxcclxuICAgICAgMTAwJSxcclxuICAgICAgMCAwLFxyXG4gICAgICAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBsb2NhbCwgbG9jYWwsIHNjcm9sbCwgc2Nyb2xsO1xyXG4gICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xyXG5cclxuICAgIHRhYmxlIHtcclxuICAgICAgbWluLXdpZHRoOiA1MDBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICBjYXB0aW9uIHtcclxuICAgICAgICBwYWRkaW5nOiA0cHg7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG4gICAgICB9XHJcbiAgICAgIHRyOm50aC1jaGlsZChldmVuKSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyLXJnYmEoLS1icmFuZC1icmlnaHQsIDAuMTcpO1xyXG4gICAgICB9XHJcbiAgICAgIHRyOm50aC1jaGlsZChvZGQpIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXItcmdiYSgtLWJyYW5kLWJyaWdodCwgMC4wNik7XHJcbiAgICAgIH1cclxuICAgICAgdGgge1xyXG4gICAgICAgIHBhZGRpbmc6IDNweDtcclxuICAgICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBibGFjaztcclxuICAgICAgfVxyXG4gICAgICB0ZCB7XHJcbiAgICAgICAgcGFkZGluZzogM3B4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC45NWVtO1xyXG4gICAgICB9XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubW9iaWxlU2Nyb2xsTWVzc2FnZSB7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgbWFyZ2luLXRvcDogOHB4O1xyXG4gICAgICBwYWRkaW5nOiA1cHggOHB4O1xyXG4gICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgYm90dG9tOiAxMDAlO1xyXG4gICAgICAgIGxlZnQ6IGNhbGMoNXB4ICsgdmFyKC0tcmFkaXVzKSk7XHJcbiAgICAgICAgd2lkdGg6IDBweDtcclxuICAgICAgICBoZWlnaHQ6IDBweDtcclxuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xyXG4gICAgICAgIGJvcmRlci13aWR0aDogMCA2cHggOHB4IDVweDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHZhcigtLWJyYW5kLWRhcmspIHRyYW5zcGFyZW50O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AY29udGFpbmVyIChtYXgtd2lkdGg6IDUwMHB4KSB7XHJcbiAgLnJ0ZSAudGFibGVXcmFwcGVyIC5tb2JpbGVTY3JvbGxNZXNzYWdlIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICB9XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6ICR4cykge1xyXG4gIC5ydGUgLnRhYmxlV3JhcHBlciB7XHJcbiAgICAubW9iaWxlU2Nyb2xsTWVzc2FnZSB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXJpY2hUZXh0U3R5bGVzXCIgYXMgKjtcclxuQHVzZSBcIi4uL19nbG9iYWwvc2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5cclxuLnJ0ZSxcclxuI3JldmVhbE1vZGFsRGlhbG9nIC5jb3B5V3JhcCB7XHJcbiAgcCB7XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tYmFzaWMtZm9udCk7XHJcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XHJcbiAgfVxyXG5cclxuICBoMy5oZWFkaW5nIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbjogMC43NWVtIDAgMC40ZW07XHJcbiAgICBmb250LXNpemU6IDEuNjVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XHJcbiAgICBAaW5jbHVkZSBjb2xvcldpdGhDb250cmFzdCgtLWJyYW5kLWRhcmspO1xyXG4gIH1cclxuXHJcbiAgLmhlYWRpbmdMaXN0LFxyXG4gIC5zdWJoZWFkaW5nTGlzdCB7XHJcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XHJcbiAgICBtYXJnaW46IDAuNzVlbSAwIDAuNGVtO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDAuMjVlbTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMjVlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTtcclxuICAgIEBpbmNsdWRlIGNvbG9yV2l0aENvbnRyYXN0KC0tYnJhbmQtZGFyayk7XHJcbiAgfVxyXG5cclxuICBoMy5oZWFkaW5nTGlzdCB7XHJcbiAgICBmb250LXNpemU6IDEuMmVtO1xyXG4gIH1cclxuXHJcbiAgaDQuc3ViaGVhZGluZ0xpc3Qge1xyXG4gICAgZm9udC1zaXplOiAxZW07XHJcbiAgfVxyXG5cclxuICBoNC5zdWJoZWFkaW5nIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbjogMC43NWVtIDAgMC40ZW07XHJcbiAgICBmb250LXNpemU6IDEuMzVlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG4gICAgQGluY2x1ZGUgY29sb3JXaXRoQ29udHJhc3QoLS1iYXNpYyk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgfVxyXG5cclxuICAubGFyZ2VUZXh0IHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDQ1cHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIGZvbnQtc2l6ZTogMS41ZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS40ZW07XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgICBwYWRkaW5nOiAyMHB4O1xyXG5cclxuICAgIC8vYmFja2dyb3VuZDogdmFyLWxpZ2h0ZW4oLS1ob3ZlciwgNDAlKTtcclxuXHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAgIGhlaWdodDogOHB4O1xyXG4gICAgICBib3R0b206IC0yNnB4O1xyXG4gICAgICBsZWZ0OiAwO1xyXG4gICAgICB0cmFuc2l0aW9uOiB3aWR0aCAkbWVkaXVtO1xyXG4gICAgICB6LWluZGV4OiAzO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgLmN1cnJlbnQgJiB7XHJcbiAgICAgICAgd2lkdGg6IDI1JTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1ob3Zlcik7XHJcbiAgICAgIG9wYWNpdHk6IDAuMjU7XHJcbiAgICAgIHotaW5kZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodC1ncmV5LWNvbnRyYXN0KTtcclxuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmhpZ2hsaWdodCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXItcmdiYSgtLWJyYW5kLWJyaWdodCwgMC4zKTtcclxuICB9XHJcblxyXG4gIHVsIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcblxyXG4gICAgPiBsaSB7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuXHJcbiAgICAgICY6Om1hcmtlciB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbCB7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgY291bnRlci1yZXNldDogY291bnRlcjtcclxuXHJcbiAgICA+IGxpIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBjb3VudGVyLWluY3JlbWVudDogY291bnRlcjtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWRhcmspO1xyXG5cclxuICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6IGNvdW50ZXIoY291bnRlcikgXCIuIFwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICByaWdodDogY2FsYygxMDAlICsgOHB4KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtZGFyayk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGEge1xyXG4gICAgQGluY2x1ZGUgY29sb3JXaXRoQ29udHJhc3QoLS1saW5rKTtcclxuICAgIC8vIEBpbmNsdWRlIGhvdmVyQW5kRm9jdXMge1xyXG4gICAgLy8gICBAaW5jbHVkZSBjb2xvcldpdGhDb250cmFzdCgtLWJhc2ljKTtcclxuICAgIC8vIH1cclxuICB9XHJcbn1cclxuXHJcbi5jYWxsb3V0U3VidGxlIHtcclxuICBjbGVhcjogYm90aDtcclxuICBtYXJnaW46IDFlbSAwIDAuNGVtO1xyXG4gIHBhZGRpbmc6IDEwcHggMTVweDtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMpO1xyXG4gIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tbGlnaHQtZ3JleSk7XHJcbiAgZmlsdGVyOiBkcm9wLXNoYWRvdygwcHggMXB4IDRweCByZ2JhKGJsYWNrLCAwLjIpKTtcclxuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1saWdodCk7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICBhIHtcclxuICAgIEBpbmNsdWRlIGJnV2l0aENvbnRyYXN0KC0tbGlnaHQtZ3JleSk7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgY2FsYy1jb250cmFzdCh2YXIoLS1saWdodC1ncmV5KSk7XHJcblxyXG4gICAgQGluY2x1ZGUgaG92ZXJBbmRGb2N1cyB7XHJcbiAgICAgIEBpbmNsdWRlIGNvbG9yV2l0aENvbnRyYXN0KC0tYmFzaWMpO1xyXG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1iYXNpYyk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY2FsbG91dEJvbGQge1xyXG4gIGNsZWFyOiBib3RoO1xyXG4gIG1hcmdpbjogMC43NWVtIDAgMC40ZW07XHJcbiAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cyk7XHJcbiAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1kYXJrKTtcclxuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDBweCAxcHggNHB4IHJnYmEoYmxhY2ssIDAuMikpO1xyXG4gIGEge1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1kYXJrKTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBjYWxjLWNvbnRyYXN0KHZhcigtLWJyYW5kLWRhcmspKTtcclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICAgQGluY2x1ZGUgY29sb3JXaXRoQ29udHJhc3QoLS1iYXNpYyk7XHJcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWJhc2ljKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbiIsIkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5AdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuXHJcbiNtZW1iZXJzaGlwIC5mb3JtV3JhcC5tYWludGVuYW5jZSB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYnJpZ2h0KTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWxpZ2h0KTtcclxuXHJcbiAgLmZvcm1BcmVhIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cclxuICAgIC5ydGUge1xyXG4gICAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgfVxyXG5cclxuICAgIC5pY29uIHtcclxuICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgIGZsZXgtZ3JvdzogMDtcclxuICAgICAgd2lkdGg6IDc1cHg7XHJcbiAgICAgIGhlaWdodDogNzVweDtcclxuICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icmFuZC1kYXJrKTtcclxuICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tbGlnaHQpO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgIGNvbG9yOiB2YXIoLS1saWdodCk7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogJHhzKSB7XHJcbiAgI21lbWJlcnNoaXAgLmZvcm1XcmFwLm1haW50ZW5hbmNlIHtcclxuICAgIHBhZGRpbmc6IDE1cHg7XHJcblxyXG4gICAgLmZvcm1BcmVhIHtcclxuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xyXG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgICAgIC5pY29uIHtcclxuICAgICAgICB3aWR0aDogNTVweDtcclxuICAgICAgICBoZWlnaHQ6IDU1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjI1ZW07XHJcbiAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIkB1c2UgXCJtaXhpbnNcIiBhcyAqO1xyXG5AdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtdmFyaWFibGVzXCIgYXMgKjtcclxuXHJcbi5tZW1iZXJzaGlwUGFnZSAuZXJyb3JQYWdlIHtcclxuICAudGl0bGVBcmVhIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgfVxyXG5cclxuICAuaWNvbiB7XHJcbiAgICBmb250LXNpemU6IDVlbTtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gMjBweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWJyaWdodCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBib3JkZXI6IDRweCBzb2xpZCB2YXIoLS1saWdodCk7XHJcbiAgICBjb2xvcjogdmFyKC0tbGlnaHQpO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIHdpZHRoOiAxNTBweDtcclxuICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgei1pbmRleDogMTtcclxuICB9XHJcblxyXG4gIC5ydGUge1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogdmFyLWRhcmtlbih2YXIoLS1icmFuZC1kYXJrKSwgMTUlKTtcclxuICAgIHBhZGRpbmc6IDUwcHggMjBweCA0MHB4IDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAtNjBweDtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkIHZhcigtLWxpZ2h0KTtcclxuICAgIGgzLmhlYWRpbmcge1xyXG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgY29sb3I6IGNhbGMtY29udHJhc3QodmFyKC0tYnJhbmQtZGFyaykpO1xyXG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkc20pIHtcclxuICAubWVtYmVyc2hpcFBhZ2UgLmVycm9yUGFnZSB7XHJcbiAgICAuaWNvbiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMnB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCJAdXNlIFwic2hhcmVkLXZhcmlhYmxlc1wiIGFzICo7XHJcbkB1c2UgXCJzaGFyZWQtbWl4aW5zXCIgYXMgKjtcclxuXHJcbkBsYXllciBiYXNlIHtcclxuICAvLyBCRUdJTiBCQVNFIFNUWUxFUyAtIERPIE5PVCBDSEFOR0UgVEhFU0UgVU5MRVNTIFlPVSBLTk9XIFdIQVQgWU9VJ1JFIERPSU5HIC8vXHJcblxyXG4gIGRldGFpbHMge1xyXG4gICAgLy8gSWYgeW91IGNoYW5nZSB0aGlzIHRyYW5zaXRpb24gc3BlZWQsIHlvdSdsbCBoYXZlIHRvIGNoYW5nZSBpdCBhdCB0aGUgdG9wIG9mIEFjY29yZGlvbi50c1xyXG4gICAgdHJhbnNpdGlvbjogYWxsICRtZWRpdW07XHJcbiAgfVxyXG5cclxuICBkZXRhaWxzID4gc3VtbWFyeTo6bWFya2VyLCAvKiBMYXRlc3QgQ2hyb21lLCBFZGdlLCBGaXJlZm94ICovXHJcbmRldGFpbHMgPiBzdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIC8qIFNhZmFyaSAqLyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmFjY29yZGlvbk1vZHVsZSB7XHJcbiAgICAuYWNjb3JkaW9uVGl0bGUge1xyXG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLWludGVyYWN0aW9uLW1hbmRhdG9yeT1cInRydWVcIl06bm90KC5pbnRlcmFjdGVkV2l0aCkge1xyXG4gICAgICAuaWNvbi1tYW5kYXRvcnkge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgICAgLmludGVyYWN0aW9uTm90aWZpY2F0aW9uIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIEBpbmNsdWRlIHNjcmVlblJlYWRlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvLyBFTkQgQkFTRSBTVFlMRVMgLy9cclxufVxyXG4iLCJAdXNlIFwiLi4vX2dsb2JhbC9zaGFyZWQtYWNjb3JkaW9uc1wiO1xyXG5AdXNlIFwic2FzczptYXRoXCI7XHJcbkB1c2UgXCIuLi9fZ2xvYmFsL3NoYXJlZC12YXJpYWJsZXNcIiBhcyAqO1xyXG5AdXNlIFwibWl4aW5zXCIgYXMgKjtcclxuXHJcbi5wcmltYXJ5QWNjb3JkaW9uIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgbWFyZ2luOiAyMHB4IDA7XHJcblxyXG4gICZbb3Blbl0ge1xyXG4gICAgPiAuYWNjb3JkaW9uVGl0bGUge1xyXG4gICAgICAvL2JvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zbSkgdmFyKC0tcmFkaXVzLXNtKSAwIDA7XHJcbiAgICAgIC5pY29uLXgge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJltkYXRhLWludGVyYWN0aW9uLW1hbmRhdG9yeT1cInRydWVcIl06bm90KC5pbnRlcmFjdGVkV2l0aCkge1xyXG4gICAgLmljb24tbWFuZGF0b3J5IHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICByaWdodDogLTNweDtcclxuICAgICAgdG9wOiAtM3B4O1xyXG4gICAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWJyYW5kLWJyaWdodCk7XHJcbiAgICAgIHBhZGRpbmc6IDNweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMnB4O1xyXG4gICAgICBib3gtc2hhZG93OiAxcHggMXB4IDhweCAwcHggdmFyLXJnYmEoLS1ibGFjaywgMC4zKTtcclxuICAgICAgZm9udC1zaXplOiAwLjc1ZW07XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuYWNjb3JkaW9uVGl0bGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1kYXJrKTtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgJHZlcnlGYXN0O1xyXG4gICAgLy9ib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtc20pO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdmFyKC0taG92ZXIpO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBmb250LXNpemU6IDEuMTI1ZW07XHJcbiAgICBmb250LWZhbWlseTogdmFyKC0tcHJpbWFyeS1mb250KTtcclxuXHJcbiAgICBAaW5jbHVkZSBob3ZlckFuZEZvY3VzIHtcclxuICAgICAgQGluY2x1ZGUgYmdXaXRoQ29udHJhc3QoLS1icmFuZC1icmlnaHQpO1xyXG4gICAgICAuaWNvbi14IHtcclxuICAgICAgICByaWdodDogMjVweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5pY29uLXgge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHJpZ2h0OiAyMHB4O1xyXG4gICAgICB0cmFuc2l0aW9uOiByaWdodCAkZmFzdDtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5hY2NvcmRpb25XcmFwcGVyIHtcclxuICAgIHBhZGRpbmc6IDIwcHg7XHJcbiAgICBAaW5jbHVkZSBiZ1dpdGhDb250cmFzdCgtLWxpZ2h0KTtcclxuICAgIGJvcmRlci1sZWZ0OiAxMHB4IHNvbGlkIHZhcigtLWhvdmVyKTtcclxuICAgIGltZyB7XHJcbiAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICArIC5ydGUge1xyXG4gICAgbWFyZ2luLXRvcDogMjVweDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1FRElBIFFVRVJJRVMgJiBCUk9XU0VSLVNQRUNJRklDIEFESlVTVE1FTlRTIEJFTE9XIC8vXHJcbiJdfQ== */