@charset "UTF-8";
/**
 * Foundation for Sites by ZURB
 * Version 6.5.1
 * foundation.zurb.com
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 45em) {
  .reveal.large, .reveal.small, .reveal.tiny, .reveal {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible;
}

pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

.foundation-mq {
  font-family: "small=0em&medium=45em&large=64em&xlarge=87.5em&xxlarge=93.75em";
}

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

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

body {
  margin: 0;
  padding: 0;
  background: #1E1E1E;
  font-family: "Work Sans", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #FFFFFF;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

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

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

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

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

pre {
  overflow: auto;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}

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

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

.grid-container {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 73.125rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 45em) {
  .grid-container {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.grid-container.fluid {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 100%;
  margin: 0 auto;
}
@media print, screen and (min-width: 45em) {
  .grid-container.fluid {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.grid-container.full {
  padding-right: 0;
  padding-left: 0;
  max-width: 100%;
  margin: 0 auto;
}

.grid-x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
}

.cell {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%;
}
.cell.auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.cell.shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.grid-x > .auto {
  width: auto;
}
.grid-x > .shrink {
  width: auto;
}

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
}

@media print, screen and (min-width: 45em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-full, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
.grid-x > .small-12, .grid-x > .small-11, .grid-x > .small-10, .grid-x > .small-9, .grid-x > .small-8, .grid-x > .small-7, .grid-x > .small-6, .grid-x > .small-5, .grid-x > .small-4, .grid-x > .small-3, .grid-x > .small-2, .grid-x > .small-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.grid-x > .small-1 {
  width: 8.3333333333%;
}

.grid-x > .small-2 {
  width: 16.6666666667%;
}

.grid-x > .small-3 {
  width: 25%;
}

.grid-x > .small-4 {
  width: 33.3333333333%;
}

.grid-x > .small-5 {
  width: 41.6666666667%;
}

.grid-x > .small-6 {
  width: 50%;
}

.grid-x > .small-7 {
  width: 58.3333333333%;
}

.grid-x > .small-8 {
  width: 66.6666666667%;
}

.grid-x > .small-9 {
  width: 75%;
}

.grid-x > .small-10 {
  width: 83.3333333333%;
}

.grid-x > .small-11 {
  width: 91.6666666667%;
}

.grid-x > .small-12 {
  width: 100%;
}

@media print, screen and (min-width: 45em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto;
  }
  .grid-x > .medium-12, .grid-x > .medium-11, .grid-x > .medium-10, .grid-x > .medium-9, .grid-x > .medium-8, .grid-x > .medium-7, .grid-x > .medium-6, .grid-x > .medium-5, .grid-x > .medium-4, .grid-x > .medium-3, .grid-x > .medium-2, .grid-x > .medium-1, .grid-x > .medium-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-x > .medium-shrink {
    width: auto;
  }
  .grid-x > .medium-1 {
    width: 8.3333333333%;
  }
  .grid-x > .medium-2 {
    width: 16.6666666667%;
  }
  .grid-x > .medium-3 {
    width: 25%;
  }
  .grid-x > .medium-4 {
    width: 33.3333333333%;
  }
  .grid-x > .medium-5 {
    width: 41.6666666667%;
  }
  .grid-x > .medium-6 {
    width: 50%;
  }
  .grid-x > .medium-7 {
    width: 58.3333333333%;
  }
  .grid-x > .medium-8 {
    width: 66.6666666667%;
  }
  .grid-x > .medium-9 {
    width: 75%;
  }
  .grid-x > .medium-10 {
    width: 83.3333333333%;
  }
  .grid-x > .medium-11 {
    width: 91.6666666667%;
  }
  .grid-x > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto;
  }
  .grid-x > .large-12, .grid-x > .large-11, .grid-x > .large-10, .grid-x > .large-9, .grid-x > .large-8, .grid-x > .large-7, .grid-x > .large-6, .grid-x > .large-5, .grid-x > .large-4, .grid-x > .large-3, .grid-x > .large-2, .grid-x > .large-1, .grid-x > .large-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-x > .large-shrink {
    width: auto;
  }
  .grid-x > .large-1 {
    width: 8.3333333333%;
  }
  .grid-x > .large-2 {
    width: 16.6666666667%;
  }
  .grid-x > .large-3 {
    width: 25%;
  }
  .grid-x > .large-4 {
    width: 33.3333333333%;
  }
  .grid-x > .large-5 {
    width: 41.6666666667%;
  }
  .grid-x > .large-6 {
    width: 50%;
  }
  .grid-x > .large-7 {
    width: 58.3333333333%;
  }
  .grid-x > .large-8 {
    width: 66.6666666667%;
  }
  .grid-x > .large-9 {
    width: 75%;
  }
  .grid-x > .large-10 {
    width: 83.3333333333%;
  }
  .grid-x > .large-11 {
    width: 91.6666666667%;
  }
  .grid-x > .large-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-x > .xlarge-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto;
  }
  .grid-x > .xlarge-12, .grid-x > .xlarge-11, .grid-x > .xlarge-10, .grid-x > .xlarge-9, .grid-x > .xlarge-8, .grid-x > .xlarge-7, .grid-x > .xlarge-6, .grid-x > .xlarge-5, .grid-x > .xlarge-4, .grid-x > .xlarge-3, .grid-x > .xlarge-2, .grid-x > .xlarge-1, .grid-x > .xlarge-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-x > .xlarge-shrink {
    width: auto;
  }
  .grid-x > .xlarge-1 {
    width: 8.3333333333%;
  }
  .grid-x > .xlarge-2 {
    width: 16.6666666667%;
  }
  .grid-x > .xlarge-3 {
    width: 25%;
  }
  .grid-x > .xlarge-4 {
    width: 33.3333333333%;
  }
  .grid-x > .xlarge-5 {
    width: 41.6666666667%;
  }
  .grid-x > .xlarge-6 {
    width: 50%;
  }
  .grid-x > .xlarge-7 {
    width: 58.3333333333%;
  }
  .grid-x > .xlarge-8 {
    width: 66.6666666667%;
  }
  .grid-x > .xlarge-9 {
    width: 75%;
  }
  .grid-x > .xlarge-10 {
    width: 83.3333333333%;
  }
  .grid-x > .xlarge-11 {
    width: 91.6666666667%;
  }
  .grid-x > .xlarge-12 {
    width: 100%;
  }
}
.grid-margin-x:not(.grid-x) > .cell {
  width: auto;
}

.grid-margin-y:not(.grid-y) > .cell {
  height: auto;
}

.grid-margin-x {
  margin-left: -0.9375rem;
  margin-right: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-x {
    margin-left: -0.9375rem;
    margin-right: -0.9375rem;
  }
}
.grid-margin-x > .cell {
  width: calc(100% - 1.875rem);
  margin-left: 0.9375rem;
  margin-right: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-x > .cell {
    width: calc(100% - 1.875rem);
    margin-left: 0.9375rem;
    margin-right: 0.9375rem;
  }
}
.grid-margin-x > .auto {
  width: auto;
}
.grid-margin-x > .shrink {
  width: auto;
}
.grid-margin-x > .small-1 {
  width: calc(8.3333333333% - 1.875rem);
}
.grid-margin-x > .small-2 {
  width: calc(16.6666666667% - 1.875rem);
}
.grid-margin-x > .small-3 {
  width: calc(25% - 1.875rem);
}
.grid-margin-x > .small-4 {
  width: calc(33.3333333333% - 1.875rem);
}
.grid-margin-x > .small-5 {
  width: calc(41.6666666667% - 1.875rem);
}
.grid-margin-x > .small-6 {
  width: calc(50% - 1.875rem);
}
.grid-margin-x > .small-7 {
  width: calc(58.3333333333% - 1.875rem);
}
.grid-margin-x > .small-8 {
  width: calc(66.6666666667% - 1.875rem);
}
.grid-margin-x > .small-9 {
  width: calc(75% - 1.875rem);
}
.grid-margin-x > .small-10 {
  width: calc(83.3333333333% - 1.875rem);
}
.grid-margin-x > .small-11 {
  width: calc(91.6666666667% - 1.875rem);
}
.grid-margin-x > .small-12 {
  width: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 45em) {
  .grid-margin-x > .auto {
    width: auto;
  }
  .grid-margin-x > .shrink {
    width: auto;
  }
  .grid-margin-x > .small-1 {
    width: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-x > .small-2 {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x > .small-4 {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x > .small-5 {
    width: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x > .small-7 {
    width: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-x > .small-8 {
    width: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.875rem);
  }
  .grid-margin-x > .small-10 {
    width: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-x > .small-11 {
    width: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.875rem);
  }
  .grid-margin-x > .medium-auto {
    width: auto;
  }
  .grid-margin-x > .medium-shrink {
    width: auto;
  }
  .grid-margin-x > .medium-1 {
    width: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-x > .medium-2 {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x > .medium-3 {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x > .medium-4 {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x > .medium-5 {
    width: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-x > .medium-6 {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x > .medium-7 {
    width: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-x > .medium-8 {
    width: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-x > .medium-9 {
    width: calc(75% - 1.875rem);
  }
  .grid-margin-x > .medium-10 {
    width: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-x > .medium-11 {
    width: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-x > .medium-12 {
    width: calc(100% - 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x > .large-auto {
    width: auto;
  }
  .grid-margin-x > .large-shrink {
    width: auto;
  }
  .grid-margin-x > .large-1 {
    width: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-x > .large-2 {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x > .large-3 {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x > .large-4 {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x > .large-5 {
    width: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-x > .large-6 {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x > .large-7 {
    width: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-x > .large-8 {
    width: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-x > .large-9 {
    width: calc(75% - 1.875rem);
  }
  .grid-margin-x > .large-10 {
    width: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-x > .large-11 {
    width: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-x > .large-12 {
    width: calc(100% - 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-margin-x > .xlarge-auto {
    width: auto;
  }
  .grid-margin-x > .xlarge-shrink {
    width: auto;
  }
  .grid-margin-x > .xlarge-1 {
    width: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-x > .xlarge-2 {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x > .xlarge-3 {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x > .xlarge-4 {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x > .xlarge-5 {
    width: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-x > .xlarge-6 {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x > .xlarge-7 {
    width: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-x > .xlarge-8 {
    width: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-x > .xlarge-9 {
    width: calc(75% - 1.875rem);
  }
  .grid-margin-x > .xlarge-10 {
    width: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-x > .xlarge-11 {
    width: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-x > .xlarge-12 {
    width: calc(100% - 1.875rem);
  }
}

.grid-padding-x .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-padding-x .grid-padding-x {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-container:not(.full) > .grid-padding-x {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
.grid-padding-x > .cell {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-padding-x > .cell {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}

.small-up-1 > .cell {
  width: 100%;
}

.small-up-2 > .cell {
  width: 50%;
}

.small-up-3 > .cell {
  width: 33.3333333333%;
}

.small-up-4 > .cell {
  width: 25%;
}

.small-up-5 > .cell {
  width: 20%;
}

.small-up-6 > .cell {
  width: 16.6666666667%;
}

.small-up-7 > .cell {
  width: 14.2857142857%;
}

.small-up-8 > .cell {
  width: 12.5%;
}

@media print, screen and (min-width: 45em) {
  .medium-up-1 > .cell {
    width: 100%;
  }
  .medium-up-2 > .cell {
    width: 50%;
  }
  .medium-up-3 > .cell {
    width: 33.3333333333%;
  }
  .medium-up-4 > .cell {
    width: 25%;
  }
  .medium-up-5 > .cell {
    width: 20%;
  }
  .medium-up-6 > .cell {
    width: 16.6666666667%;
  }
  .medium-up-7 > .cell {
    width: 14.2857142857%;
  }
  .medium-up-8 > .cell {
    width: 12.5%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%;
  }
  .large-up-2 > .cell {
    width: 50%;
  }
  .large-up-3 > .cell {
    width: 33.3333333333%;
  }
  .large-up-4 > .cell {
    width: 25%;
  }
  .large-up-5 > .cell {
    width: 20%;
  }
  .large-up-6 > .cell {
    width: 16.6666666667%;
  }
  .large-up-7 > .cell {
    width: 14.2857142857%;
  }
  .large-up-8 > .cell {
    width: 12.5%;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-up-1 > .cell {
    width: 100%;
  }
  .xlarge-up-2 > .cell {
    width: 50%;
  }
  .xlarge-up-3 > .cell {
    width: 33.3333333333%;
  }
  .xlarge-up-4 > .cell {
    width: 25%;
  }
  .xlarge-up-5 > .cell {
    width: 20%;
  }
  .xlarge-up-6 > .cell {
    width: 16.6666666667%;
  }
  .xlarge-up-7 > .cell {
    width: 14.2857142857%;
  }
  .xlarge-up-8 > .cell {
    width: 12.5%;
  }
}
.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.875rem);
}

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.875rem);
}

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.3333333333% - 1.875rem);
}

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.875rem);
}

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.875rem);
}

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.6666666667% - 1.875rem);
}

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.2857142857% - 1.875rem);
}

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.875rem);
}

@media print, screen and (min-width: 45em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.875rem);
  }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.875rem);
  }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.2857142857% - 1.875rem);
  }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.875rem);
  }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.875rem);
  }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.875rem);
  }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.2857142857% - 1.875rem);
  }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.875rem);
  }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.875rem);
  }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.2857142857% - 1.875rem);
  }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.2857142857% - 1.875rem);
  }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 1.875rem);
  }
}
.small-margin-collapse {
  margin-right: 0;
  margin-left: 0;
}
.small-margin-collapse > .cell {
  margin-right: 0;
  margin-left: 0;
}
.small-margin-collapse > .small-1 {
  width: 8.3333333333%;
}
.small-margin-collapse > .small-2 {
  width: 16.6666666667%;
}
.small-margin-collapse > .small-3 {
  width: 25%;
}
.small-margin-collapse > .small-4 {
  width: 33.3333333333%;
}
.small-margin-collapse > .small-5 {
  width: 41.6666666667%;
}
.small-margin-collapse > .small-6 {
  width: 50%;
}
.small-margin-collapse > .small-7 {
  width: 58.3333333333%;
}
.small-margin-collapse > .small-8 {
  width: 66.6666666667%;
}
.small-margin-collapse > .small-9 {
  width: 75%;
}
.small-margin-collapse > .small-10 {
  width: 83.3333333333%;
}
.small-margin-collapse > .small-11 {
  width: 91.6666666667%;
}
.small-margin-collapse > .small-12 {
  width: 100%;
}
@media print, screen and (min-width: 45em) {
  .small-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .small-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .small-margin-collapse > .medium-3 {
    width: 25%;
  }
  .small-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .small-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .small-margin-collapse > .medium-6 {
    width: 50%;
  }
  .small-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .small-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .small-margin-collapse > .medium-9 {
    width: 75%;
  }
  .small-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .small-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .small-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .small-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .small-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .small-margin-collapse > .large-3 {
    width: 25%;
  }
  .small-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .small-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .small-margin-collapse > .large-6 {
    width: 50%;
  }
  .small-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .small-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .small-margin-collapse > .large-9 {
    width: 75%;
  }
  .small-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .small-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .small-margin-collapse > .large-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .small-margin-collapse > .xlarge-1 {
    width: 8.3333333333%;
  }
  .small-margin-collapse > .xlarge-2 {
    width: 16.6666666667%;
  }
  .small-margin-collapse > .xlarge-3 {
    width: 25%;
  }
  .small-margin-collapse > .xlarge-4 {
    width: 33.3333333333%;
  }
  .small-margin-collapse > .xlarge-5 {
    width: 41.6666666667%;
  }
  .small-margin-collapse > .xlarge-6 {
    width: 50%;
  }
  .small-margin-collapse > .xlarge-7 {
    width: 58.3333333333%;
  }
  .small-margin-collapse > .xlarge-8 {
    width: 66.6666666667%;
  }
  .small-margin-collapse > .xlarge-9 {
    width: 75%;
  }
  .small-margin-collapse > .xlarge-10 {
    width: 83.3333333333%;
  }
  .small-margin-collapse > .xlarge-11 {
    width: 91.6666666667%;
  }
  .small-margin-collapse > .xlarge-12 {
    width: 100%;
  }
}

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0;
}
.small-padding-collapse > .cell {
  padding-right: 0;
  padding-left: 0;
}

@media print, screen and (min-width: 45em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 45em) {
  .medium-margin-collapse > .small-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .small-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .small-3 {
    width: 25%;
  }
  .medium-margin-collapse > .small-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .small-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .small-6 {
    width: 50%;
  }
  .medium-margin-collapse > .small-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .small-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .small-9 {
    width: 75%;
  }
  .medium-margin-collapse > .small-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .small-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .small-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 45em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .medium-3 {
    width: 25%;
  }
  .medium-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .medium-6 {
    width: 50%;
  }
  .medium-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .medium-9 {
    width: 75%;
  }
  .medium-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .large-3 {
    width: 25%;
  }
  .medium-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .large-6 {
    width: 50%;
  }
  .medium-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .large-9 {
    width: 75%;
  }
  .medium-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .large-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.3333333333%;
  }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.6666666667%;
  }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%;
  }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.3333333333%;
  }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.6666666667%;
  }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%;
  }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.3333333333%;
  }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.6666666667%;
  }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%;
  }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.3333333333%;
  }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.6666666667%;
  }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%;
  }
}

@media print, screen and (min-width: 45em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
  }
}

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .large-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .small-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .small-3 {
    width: 25%;
  }
  .large-margin-collapse > .small-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .small-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .small-6 {
    width: 50%;
  }
  .large-margin-collapse > .small-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .small-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .small-9 {
    width: 75%;
  }
  .large-margin-collapse > .small-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .small-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .small-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .medium-3 {
    width: 25%;
  }
  .large-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .medium-6 {
    width: 50%;
  }
  .large-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .medium-9 {
    width: 75%;
  }
  .large-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .large-3 {
    width: 25%;
  }
  .large-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .large-6 {
    width: 50%;
  }
  .large-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .large-9 {
    width: 75%;
  }
  .large-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .large-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.3333333333%;
  }
  .large-margin-collapse > .xlarge-2 {
    width: 16.6666666667%;
  }
  .large-margin-collapse > .xlarge-3 {
    width: 25%;
  }
  .large-margin-collapse > .xlarge-4 {
    width: 33.3333333333%;
  }
  .large-margin-collapse > .xlarge-5 {
    width: 41.6666666667%;
  }
  .large-margin-collapse > .xlarge-6 {
    width: 50%;
  }
  .large-margin-collapse > .xlarge-7 {
    width: 58.3333333333%;
  }
  .large-margin-collapse > .xlarge-8 {
    width: 66.6666666667%;
  }
  .large-margin-collapse > .xlarge-9 {
    width: 75%;
  }
  .large-margin-collapse > .xlarge-10 {
    width: 83.3333333333%;
  }
  .large-margin-collapse > .xlarge-11 {
    width: 91.6666666667%;
  }
  .large-margin-collapse > .xlarge-12 {
    width: 100%;
  }
}

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .large-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
  }
}

@media screen and (min-width: 87.5em) {
  .xlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .xlarge-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.3333333333%;
  }
  .xlarge-margin-collapse > .small-2 {
    width: 16.6666666667%;
  }
  .xlarge-margin-collapse > .small-3 {
    width: 25%;
  }
  .xlarge-margin-collapse > .small-4 {
    width: 33.3333333333%;
  }
  .xlarge-margin-collapse > .small-5 {
    width: 41.6666666667%;
  }
  .xlarge-margin-collapse > .small-6 {
    width: 50%;
  }
  .xlarge-margin-collapse > .small-7 {
    width: 58.3333333333%;
  }
  .xlarge-margin-collapse > .small-8 {
    width: 66.6666666667%;
  }
  .xlarge-margin-collapse > .small-9 {
    width: 75%;
  }
  .xlarge-margin-collapse > .small-10 {
    width: 83.3333333333%;
  }
  .xlarge-margin-collapse > .small-11 {
    width: 91.6666666667%;
  }
  .xlarge-margin-collapse > .small-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.3333333333%;
  }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.6666666667%;
  }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%;
  }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.3333333333%;
  }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.6666666667%;
  }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%;
  }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.3333333333%;
  }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.6666666667%;
  }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%;
  }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.3333333333%;
  }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.6666666667%;
  }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.3333333333%;
  }
  .xlarge-margin-collapse > .large-2 {
    width: 16.6666666667%;
  }
  .xlarge-margin-collapse > .large-3 {
    width: 25%;
  }
  .xlarge-margin-collapse > .large-4 {
    width: 33.3333333333%;
  }
  .xlarge-margin-collapse > .large-5 {
    width: 41.6666666667%;
  }
  .xlarge-margin-collapse > .large-6 {
    width: 50%;
  }
  .xlarge-margin-collapse > .large-7 {
    width: 58.3333333333%;
  }
  .xlarge-margin-collapse > .large-8 {
    width: 66.6666666667%;
  }
  .xlarge-margin-collapse > .large-9 {
    width: 75%;
  }
  .xlarge-margin-collapse > .large-10 {
    width: 83.3333333333%;
  }
  .xlarge-margin-collapse > .large-11 {
    width: 91.6666666667%;
  }
  .xlarge-margin-collapse > .large-12 {
    width: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.3333333333%;
  }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.6666666667%;
  }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%;
  }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.3333333333%;
  }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.6666666667%;
  }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%;
  }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.3333333333%;
  }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.6666666667%;
  }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%;
  }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.3333333333%;
  }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.6666666667%;
  }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%;
  }
}

@media screen and (min-width: 87.5em) {
  .xlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0;
  }
  .xlarge-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0;
  }
}

.small-offset-0 {
  margin-left: 0%;
}

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.9375rem);
}

.small-offset-1 {
  margin-left: 8.3333333333%;
}

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.3333333333% + 0.9375rem);
}

.small-offset-2 {
  margin-left: 16.6666666667%;
}

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.6666666667% + 0.9375rem);
}

.small-offset-3 {
  margin-left: 25%;
}

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.9375rem);
}

.small-offset-4 {
  margin-left: 33.3333333333%;
}

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.3333333333% + 0.9375rem);
}

.small-offset-5 {
  margin-left: 41.6666666667%;
}

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.6666666667% + 0.9375rem);
}

.small-offset-6 {
  margin-left: 50%;
}

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.9375rem);
}

.small-offset-7 {
  margin-left: 58.3333333333%;
}

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.3333333333% + 0.9375rem);
}

.small-offset-8 {
  margin-left: 66.6666666667%;
}

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.6666666667% + 0.9375rem);
}

.small-offset-9 {
  margin-left: 75%;
}

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.9375rem);
}

.small-offset-10 {
  margin-left: 83.3333333333%;
}

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.3333333333% + 0.9375rem);
}

.small-offset-11 {
  margin-left: 91.6666666667%;
}

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.6666666667% + 0.9375rem);
}

@media print, screen and (min-width: 45em) {
  .medium-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.9375rem);
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.3333333333% + 0.9375rem);
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.6666666667% + 0.9375rem);
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.9375rem);
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.3333333333% + 0.9375rem);
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.6666666667% + 0.9375rem);
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.9375rem);
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.3333333333% + 0.9375rem);
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.6666666667% + 0.9375rem);
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.9375rem);
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.3333333333% + 0.9375rem);
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.6666666667% + 0.9375rem);
  }
}
@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.9375rem);
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.3333333333% + 0.9375rem);
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.6666666667% + 0.9375rem);
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.9375rem);
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.3333333333% + 0.9375rem);
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.6666666667% + 0.9375rem);
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.9375rem);
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.3333333333% + 0.9375rem);
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.6666666667% + 0.9375rem);
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.9375rem);
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.3333333333% + 0.9375rem);
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.6666666667% + 0.9375rem);
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-offset-0 {
    margin-left: 0%;
  }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 0.9375rem);
  }
  .xlarge-offset-1 {
    margin-left: 8.3333333333%;
  }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.3333333333% + 0.9375rem);
  }
  .xlarge-offset-2 {
    margin-left: 16.6666666667%;
  }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.6666666667% + 0.9375rem);
  }
  .xlarge-offset-3 {
    margin-left: 25%;
  }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 0.9375rem);
  }
  .xlarge-offset-4 {
    margin-left: 33.3333333333%;
  }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.3333333333% + 0.9375rem);
  }
  .xlarge-offset-5 {
    margin-left: 41.6666666667%;
  }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.6666666667% + 0.9375rem);
  }
  .xlarge-offset-6 {
    margin-left: 50%;
  }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 0.9375rem);
  }
  .xlarge-offset-7 {
    margin-left: 58.3333333333%;
  }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.3333333333% + 0.9375rem);
  }
  .xlarge-offset-8 {
    margin-left: 66.6666666667%;
  }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.6666666667% + 0.9375rem);
  }
  .xlarge-offset-9 {
    margin-left: 75%;
  }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 0.9375rem);
  }
  .xlarge-offset-10 {
    margin-left: 83.3333333333%;
  }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.3333333333% + 0.9375rem);
  }
  .xlarge-offset-11 {
    margin-left: 91.6666666667%;
  }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.6666666667% + 0.9375rem);
  }
}
.grid-y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.grid-y > .cell {
  width: auto;
  max-width: none;
}
.grid-y > .auto {
  height: auto;
}
.grid-y > .shrink {
  height: auto;
}
.grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto;
}
@media print, screen and (min-width: 45em) {
  .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto;
  }
}
.grid-y > .small-12, .grid-y > .small-11, .grid-y > .small-10, .grid-y > .small-9, .grid-y > .small-8, .grid-y > .small-7, .grid-y > .small-6, .grid-y > .small-5, .grid-y > .small-4, .grid-y > .small-3, .grid-y > .small-2, .grid-y > .small-1 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.grid-y > .small-1 {
  height: 8.3333333333%;
}
.grid-y > .small-2 {
  height: 16.6666666667%;
}
.grid-y > .small-3 {
  height: 25%;
}
.grid-y > .small-4 {
  height: 33.3333333333%;
}
.grid-y > .small-5 {
  height: 41.6666666667%;
}
.grid-y > .small-6 {
  height: 50%;
}
.grid-y > .small-7 {
  height: 58.3333333333%;
}
.grid-y > .small-8 {
  height: 66.6666666667%;
}
.grid-y > .small-9 {
  height: 75%;
}
.grid-y > .small-10 {
  height: 83.3333333333%;
}
.grid-y > .small-11 {
  height: 91.6666666667%;
}
.grid-y > .small-12 {
  height: 100%;
}
@media print, screen and (min-width: 45em) {
  .grid-y > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    height: auto;
  }
  .grid-y > .medium-12, .grid-y > .medium-11, .grid-y > .medium-10, .grid-y > .medium-9, .grid-y > .medium-8, .grid-y > .medium-7, .grid-y > .medium-6, .grid-y > .medium-5, .grid-y > .medium-4, .grid-y > .medium-3, .grid-y > .medium-2, .grid-y > .medium-1, .grid-y > .medium-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-y > .medium-shrink {
    height: auto;
  }
  .grid-y > .medium-1 {
    height: 8.3333333333%;
  }
  .grid-y > .medium-2 {
    height: 16.6666666667%;
  }
  .grid-y > .medium-3 {
    height: 25%;
  }
  .grid-y > .medium-4 {
    height: 33.3333333333%;
  }
  .grid-y > .medium-5 {
    height: 41.6666666667%;
  }
  .grid-y > .medium-6 {
    height: 50%;
  }
  .grid-y > .medium-7 {
    height: 58.3333333333%;
  }
  .grid-y > .medium-8 {
    height: 66.6666666667%;
  }
  .grid-y > .medium-9 {
    height: 75%;
  }
  .grid-y > .medium-10 {
    height: 83.3333333333%;
  }
  .grid-y > .medium-11 {
    height: 91.6666666667%;
  }
  .grid-y > .medium-12 {
    height: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    height: auto;
  }
  .grid-y > .large-12, .grid-y > .large-11, .grid-y > .large-10, .grid-y > .large-9, .grid-y > .large-8, .grid-y > .large-7, .grid-y > .large-6, .grid-y > .large-5, .grid-y > .large-4, .grid-y > .large-3, .grid-y > .large-2, .grid-y > .large-1, .grid-y > .large-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-y > .large-shrink {
    height: auto;
  }
  .grid-y > .large-1 {
    height: 8.3333333333%;
  }
  .grid-y > .large-2 {
    height: 16.6666666667%;
  }
  .grid-y > .large-3 {
    height: 25%;
  }
  .grid-y > .large-4 {
    height: 33.3333333333%;
  }
  .grid-y > .large-5 {
    height: 41.6666666667%;
  }
  .grid-y > .large-6 {
    height: 50%;
  }
  .grid-y > .large-7 {
    height: 58.3333333333%;
  }
  .grid-y > .large-8 {
    height: 66.6666666667%;
  }
  .grid-y > .large-9 {
    height: 75%;
  }
  .grid-y > .large-10 {
    height: 83.3333333333%;
  }
  .grid-y > .large-11 {
    height: 91.6666666667%;
  }
  .grid-y > .large-12 {
    height: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-y > .xlarge-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    height: auto;
  }
  .grid-y > .xlarge-12, .grid-y > .xlarge-11, .grid-y > .xlarge-10, .grid-y > .xlarge-9, .grid-y > .xlarge-8, .grid-y > .xlarge-7, .grid-y > .xlarge-6, .grid-y > .xlarge-5, .grid-y > .xlarge-4, .grid-y > .xlarge-3, .grid-y > .xlarge-2, .grid-y > .xlarge-1, .grid-y > .xlarge-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
  }
  .grid-y > .xlarge-shrink {
    height: auto;
  }
  .grid-y > .xlarge-1 {
    height: 8.3333333333%;
  }
  .grid-y > .xlarge-2 {
    height: 16.6666666667%;
  }
  .grid-y > .xlarge-3 {
    height: 25%;
  }
  .grid-y > .xlarge-4 {
    height: 33.3333333333%;
  }
  .grid-y > .xlarge-5 {
    height: 41.6666666667%;
  }
  .grid-y > .xlarge-6 {
    height: 50%;
  }
  .grid-y > .xlarge-7 {
    height: 58.3333333333%;
  }
  .grid-y > .xlarge-8 {
    height: 66.6666666667%;
  }
  .grid-y > .xlarge-9 {
    height: 75%;
  }
  .grid-y > .xlarge-10 {
    height: 83.3333333333%;
  }
  .grid-y > .xlarge-11 {
    height: 91.6666666667%;
  }
  .grid-y > .xlarge-12 {
    height: 100%;
  }
}

.grid-padding-y .grid-padding-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-padding-y .grid-padding-y {
    margin-top: -0.9375rem;
    margin-bottom: -0.9375rem;
  }
}
.grid-padding-y > .cell {
  padding-top: 0.9375rem;
  padding-bottom: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-padding-y > .cell {
    padding-top: 0.9375rem;
    padding-bottom: 0.9375rem;
  }
}

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y {
    margin-top: -0.9375rem;
    margin-bottom: -0.9375rem;
  }
}
.grid-margin-y > .cell {
  height: calc(100% - 1.875rem);
  margin-top: 0.9375rem;
  margin-bottom: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y > .cell {
    height: calc(100% - 1.875rem);
    margin-top: 0.9375rem;
    margin-bottom: 0.9375rem;
  }
}
.grid-margin-y > .auto {
  height: auto;
}
.grid-margin-y > .shrink {
  height: auto;
}
.grid-margin-y > .small-1 {
  height: calc(8.3333333333% - 1.875rem);
}
.grid-margin-y > .small-2 {
  height: calc(16.6666666667% - 1.875rem);
}
.grid-margin-y > .small-3 {
  height: calc(25% - 1.875rem);
}
.grid-margin-y > .small-4 {
  height: calc(33.3333333333% - 1.875rem);
}
.grid-margin-y > .small-5 {
  height: calc(41.6666666667% - 1.875rem);
}
.grid-margin-y > .small-6 {
  height: calc(50% - 1.875rem);
}
.grid-margin-y > .small-7 {
  height: calc(58.3333333333% - 1.875rem);
}
.grid-margin-y > .small-8 {
  height: calc(66.6666666667% - 1.875rem);
}
.grid-margin-y > .small-9 {
  height: calc(75% - 1.875rem);
}
.grid-margin-y > .small-10 {
  height: calc(83.3333333333% - 1.875rem);
}
.grid-margin-y > .small-11 {
  height: calc(91.6666666667% - 1.875rem);
}
.grid-margin-y > .small-12 {
  height: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.875rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .large-auto {
    height: auto;
  }
  .grid-margin-y > .large-shrink {
    height: auto;
  }
  .grid-margin-y > .large-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .large-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .large-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .large-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-12 {
    height: calc(100% - 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-margin-y > .xlarge-auto {
    height: auto;
  }
  .grid-margin-y > .xlarge-shrink {
    height: auto;
  }
  .grid-margin-y > .xlarge-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .xlarge-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .xlarge-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .xlarge-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-12 {
    height: calc(100% - 1.875rem);
  }
}

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw;
}

.cell .grid-frame {
  width: 100%;
}

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

.cell-block-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%;
}
.cell-block-container > .grid-x {
  max-height: 100%;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

@media print, screen and (min-width: 45em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw;
  }
  .cell .medium-grid-frame {
    width: 100%;
  }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%;
  }
  .medium-cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}
@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw;
  }
  .cell .large-grid-frame {
    width: 100%;
  }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .large-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%;
  }
  .large-cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw;
  }
  .cell .xlarge-grid-frame {
    width: 100%;
  }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  .xlarge-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%;
  }
  .xlarge-cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
}
.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh;
}
@media print, screen and (min-width: 45em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh;
  }
}

.cell .grid-y.grid-frame {
  height: 100%;
}
@media print, screen and (min-width: 45em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%;
  }
}
@media screen and (min-width: 87.5em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%;
  }
}

.grid-margin-y {
  margin-top: -0.9375rem;
  margin-bottom: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y {
    margin-top: -0.9375rem;
    margin-bottom: -0.9375rem;
  }
}
.grid-margin-y > .cell {
  height: calc(100% - 1.875rem);
  margin-top: 0.9375rem;
  margin-bottom: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y > .cell {
    height: calc(100% - 1.875rem);
    margin-top: 0.9375rem;
    margin-bottom: 0.9375rem;
  }
}
.grid-margin-y > .auto {
  height: auto;
}
.grid-margin-y > .shrink {
  height: auto;
}
.grid-margin-y > .small-1 {
  height: calc(8.3333333333% - 1.875rem);
}
.grid-margin-y > .small-2 {
  height: calc(16.6666666667% - 1.875rem);
}
.grid-margin-y > .small-3 {
  height: calc(25% - 1.875rem);
}
.grid-margin-y > .small-4 {
  height: calc(33.3333333333% - 1.875rem);
}
.grid-margin-y > .small-5 {
  height: calc(41.6666666667% - 1.875rem);
}
.grid-margin-y > .small-6 {
  height: calc(50% - 1.875rem);
}
.grid-margin-y > .small-7 {
  height: calc(58.3333333333% - 1.875rem);
}
.grid-margin-y > .small-8 {
  height: calc(66.6666666667% - 1.875rem);
}
.grid-margin-y > .small-9 {
  height: calc(75% - 1.875rem);
}
.grid-margin-y > .small-10 {
  height: calc(83.3333333333% - 1.875rem);
}
.grid-margin-y > .small-11 {
  height: calc(91.6666666667% - 1.875rem);
}
.grid-margin-y > .small-12 {
  height: calc(100% - 1.875rem);
}
@media print, screen and (min-width: 45em) {
  .grid-margin-y > .auto {
    height: auto;
  }
  .grid-margin-y > .shrink {
    height: auto;
  }
  .grid-margin-y > .small-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .small-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .small-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .small-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .small-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.875rem);
  }
  .grid-margin-y > .medium-auto {
    height: auto;
  }
  .grid-margin-y > .medium-shrink {
    height: auto;
  }
  .grid-margin-y > .medium-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .medium-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .medium-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .medium-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .medium-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .medium-12 {
    height: calc(100% - 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y > .large-auto {
    height: auto;
  }
  .grid-margin-y > .large-shrink {
    height: auto;
  }
  .grid-margin-y > .large-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .large-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .large-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .large-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .large-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .large-12 {
    height: calc(100% - 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-margin-y > .xlarge-auto {
    height: auto;
  }
  .grid-margin-y > .xlarge-shrink {
    height: auto;
  }
  .grid-margin-y > .xlarge-1 {
    height: calc(8.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-2 {
    height: calc(16.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-3 {
    height: calc(25% - 1.875rem);
  }
  .grid-margin-y > .xlarge-4 {
    height: calc(33.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-5 {
    height: calc(41.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-6 {
    height: calc(50% - 1.875rem);
  }
  .grid-margin-y > .xlarge-7 {
    height: calc(58.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-8 {
    height: calc(66.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-9 {
    height: calc(75% - 1.875rem);
  }
  .grid-margin-y > .xlarge-10 {
    height: calc(83.3333333333% - 1.875rem);
  }
  .grid-margin-y > .xlarge-11 {
    height: calc(91.6666666667% - 1.875rem);
  }
  .grid-margin-y > .xlarge-12 {
    height: calc(100% - 1.875rem);
  }
}

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.875rem);
}
@media print, screen and (min-width: 45em) {
  .grid-frame.grid-margin-y {
    height: calc(100vh + 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-frame.grid-margin-y {
    height: calc(100vh + 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-frame.grid-margin-y {
    height: calc(100vh + 1.875rem);
  }
}

@media print, screen and (min-width: 45em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1.875rem);
  }
}
@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1.875rem);
  }
}
@media screen and (min-width: 87.5em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 1.875rem);
  }
}
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0;
}

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

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

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

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

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "Playfair Display", serif;
  font-style: normal;
  font-weight: normal;
  color: inherit;
  text-rendering: optimizeLegibility;
}
h1 small, .h1 small,
h2 small, .h2 small,
h3 small, .h3 small,
h4 small, .h4 small,
h5 small, .h5 small,
h6 small, .h6 small {
  line-height: 0;
  color: #808080;
}

h1, .h1 {
  font-size: 1.75rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h2, .h2 {
  font-size: 1.75rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h3, .h3 {
  font-size: 1.5rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h4, .h4 {
  font-size: 1.125rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h5, .h5 {
  font-size: 1.0625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

h6, .h6 {
  font-size: 1rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 0.5rem;
}

@media print, screen and (min-width: 45em) {
  h1, .h1 {
    font-size: 3rem;
  }
  h2, .h2 {
    font-size: 2.125rem;
  }
  h3, .h3 {
    font-size: 1.5rem;
  }
  h4, .h4 {
    font-size: 1.5625rem;
  }
  h5, .h5 {
    font-size: 1.25rem;
  }
  h6, .h6 {
    font-size: 1rem;
  }
}
a {
  line-height: inherit;
  color: #1779ba;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: #1468a0;
}
a img {
  border: 0;
}

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

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

li {
  font-size: inherit;
}

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

ol {
  margin-left: 1.25rem;
}

ul ul, ul ol, ol ul, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0;
}

dl {
  margin-bottom: 1rem;
}
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold;
}

blockquote {
  margin: 0 0 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #808080;
}
blockquote, blockquote p {
  line-height: 1.6;
  color: #272727;
}

cite {
  display: block;
  font-size: 0.8125rem;
  color: #272727;
}
cite:before {
  content: "— ";
}

abbr, abbr[title] {
  border-bottom: 1px dotted #141414;
  cursor: help;
  text-decoration: none;
}

figure {
  margin: 0;
}

code {
  padding: 0.125rem 0.3125rem 0.0625rem;
  border: 1px solid #808080;
  background-color: #7B7B7B;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #141414;
}

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

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #272727;
}

.lead {
  font-size: 125%;
  line-height: 1.6;
}

.stat {
  font-size: 2.5rem;
  line-height: 1;
}
p + .stat {
  margin-top: -1rem;
}

ul.no-bullet, ol.no-bullet {
  margin-left: 0;
  list-style: none;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

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

.text-justify {
  text-align: justify;
}

@media print, screen and (min-width: 45em) {
  .medium-text-left {
    text-align: left;
  }
  .medium-text-right {
    text-align: right;
  }
  .medium-text-center {
    text-align: center;
  }
  .medium-text-justify {
    text-align: justify;
  }
}
@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left;
  }
  .large-text-right {
    text-align: right;
  }
  .large-text-center {
    text-align: center;
  }
  .large-text-justify {
    text-align: justify;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-text-left {
    text-align: left;
  }
  .xlarge-text-right {
    text-align: right;
  }
  .xlarge-text-center {
    text-align: center;
  }
  .xlarge-text-justify {
    text-align: justify;
  }
}
.show-for-print {
  display: none !important;
}

@media print {
  * {
    background: transparent !important;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    color: black !important;
    text-shadow: none !important;
  }
  .show-for-print {
    display: block !important;
  }
  .hide-for-print {
    display: none !important;
  }
  table.show-for-print {
    display: table !important;
  }
  thead.show-for-print {
    display: table-header-group !important;
  }
  tbody.show-for-print {
    display: table-row-group !important;
  }
  tr.show-for-print {
    display: table-row !important;
  }
  td.show-for-print {
    display: table-cell !important;
  }
  th.show-for-print {
    display: table-cell !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: "";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  pre,
  blockquote {
    border: 1px solid #272727;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}
.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.85em 1em;
  border: 1px solid transparent;
  border-radius: 0;
  -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out;
  transition: background-color 0.25s ease-out, color 0.25s ease-out;
  font-family: inherit;
  font-size: 0.9rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  background-color: #1779ba;
  color: #FFFFFF;
}
[data-whatinput=mouse] .button {
  outline: 0;
}
.button:hover, .button:focus {
  background-color: #14679e;
  color: #FFFFFF;
}
.button.tiny {
  font-size: 0.6rem;
}
.button.small {
  font-size: 0.75rem;
}
.button.large {
  font-size: 1.25rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button.primary {
  background-color: #1779ba;
  color: #FFFFFF;
}
.button.primary:hover, .button.primary:focus {
  background-color: #126195;
  color: #FFFFFF;
}
.button.secondary {
  background-color: #767676;
  color: #FFFFFF;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: #5e5e5e;
  color: #FFFFFF;
}
.button.success {
  background-color: #3adb76;
  color: #141414;
}
.button.success:hover, .button.success:focus {
  background-color: #22bb5b;
  color: #141414;
}
.button.warning {
  background-color: #ffae00;
  color: #141414;
}
.button.warning:hover, .button.warning:focus {
  background-color: #cc8b00;
  color: #141414;
}
.button.alert {
  background-color: #cc4b37;
  color: #FFFFFF;
}
.button.alert:hover, .button.alert:focus {
  background-color: #a53b2a;
  color: #FFFFFF;
}
.button.disabled, .button[disabled] {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled, .button.disabled:hover, .button.disabled:focus, .button[disabled], .button[disabled]:hover, .button[disabled]:focus {
  background-color: #1779ba;
  color: #FFFFFF;
}
.button.disabled.primary, .button[disabled].primary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.primary, .button.disabled.primary:hover, .button.disabled.primary:focus, .button[disabled].primary, .button[disabled].primary:hover, .button[disabled].primary:focus {
  background-color: #1779ba;
  color: #FFFFFF;
}
.button.disabled.secondary, .button[disabled].secondary {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.secondary, .button.disabled.secondary:hover, .button.disabled.secondary:focus, .button[disabled].secondary, .button[disabled].secondary:hover, .button[disabled].secondary:focus {
  background-color: #767676;
  color: #FFFFFF;
}
.button.disabled.success, .button[disabled].success {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.success, .button.disabled.success:hover, .button.disabled.success:focus, .button[disabled].success, .button[disabled].success:hover, .button[disabled].success:focus {
  background-color: #3adb76;
  color: #141414;
}
.button.disabled.warning, .button[disabled].warning {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.warning, .button.disabled.warning:hover, .button.disabled.warning:focus, .button[disabled].warning, .button[disabled].warning:hover, .button[disabled].warning:focus {
  background-color: #ffae00;
  color: #141414;
}
.button.disabled.alert, .button[disabled].alert {
  opacity: 0.25;
  cursor: not-allowed;
}
.button.disabled.alert, .button.disabled.alert:hover, .button.disabled.alert:focus, .button[disabled].alert, .button[disabled].alert:hover, .button[disabled].alert:focus {
  background-color: #cc4b37;
  color: #FFFFFF;
}
.button.hollow {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow, .button.hollow:hover, .button.hollow:focus {
  background-color: transparent;
}
.button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
  background-color: transparent;
}
.button.hollow:hover, .button.hollow:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.hollow:hover.disabled, .button.hollow:hover[disabled], .button.hollow:focus.disabled, .button.hollow:focus[disabled] {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow.primary {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.hollow.primary:hover.disabled, .button.hollow.primary:hover[disabled], .button.hollow.primary:focus.disabled, .button.hollow.primary:focus[disabled] {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow.secondary {
  border: 1px solid #767676;
  color: #767676;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button.hollow.secondary:hover.disabled, .button.hollow.secondary:hover[disabled], .button.hollow.secondary:focus.disabled, .button.hollow.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}
.button.hollow.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: #157539;
  color: #157539;
}
.button.hollow.success:hover.disabled, .button.hollow.success:hover[disabled], .button.hollow.success:focus.disabled, .button.hollow.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.hollow.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: #805700;
  color: #805700;
}
.button.hollow.warning:hover.disabled, .button.hollow.warning:hover[disabled], .button.hollow.warning:focus.disabled, .button.hollow.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: #67251a;
  color: #67251a;
}
.button.hollow.alert:hover.disabled, .button.hollow.alert:hover[disabled], .button.hollow.alert:focus.disabled, .button.hollow.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.clear {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.clear, .button.clear:hover, .button.clear:focus {
  background-color: transparent;
}
.button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  background-color: transparent;
}
.button.clear:hover, .button.clear:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear:hover, .button.clear:hover.disabled, .button.clear:hover[disabled], .button.clear:focus, .button.clear:focus.disabled, .button.clear:focus[disabled] {
  border-color: transparent;
}
.button.clear.primary {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  border-color: #0c3d5d;
  color: #0c3d5d;
}
.button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary:hover, .button.clear.primary:hover.disabled, .button.clear.primary:hover[disabled], .button.clear.primary:focus, .button.clear.primary:focus.disabled, .button.clear.primary:focus[disabled] {
  border-color: transparent;
}
.button.clear.secondary {
  border: 1px solid #767676;
  color: #767676;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border: 1px solid #767676;
  color: #767676;
}
.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary:hover, .button.clear.secondary:hover.disabled, .button.clear.secondary:hover[disabled], .button.clear.secondary:focus, .button.clear.secondary:focus.disabled, .button.clear.secondary:focus[disabled] {
  border-color: transparent;
}
.button.clear.success {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.clear.success:hover, .button.clear.success:focus {
  border-color: #157539;
  color: #157539;
}
.button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success:hover, .button.clear.success:hover.disabled, .button.clear.success:hover[disabled], .button.clear.success:focus, .button.clear.success:focus.disabled, .button.clear.success:focus[disabled] {
  border-color: transparent;
}
.button.clear.warning {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.clear.warning:hover, .button.clear.warning:focus {
  border-color: #805700;
  color: #805700;
}
.button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning:hover, .button.clear.warning:hover.disabled, .button.clear.warning:hover[disabled], .button.clear.warning:focus, .button.clear.warning:focus.disabled, .button.clear.warning:focus[disabled] {
  border-color: transparent;
}
.button.clear.alert {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.clear.alert:hover, .button.clear.alert:focus {
  border-color: #67251a;
  color: #67251a;
}
.button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert:hover, .button.clear.alert:hover.disabled, .button.clear.alert:hover[disabled], .button.clear.alert:focus, .button.clear.alert:focus.disabled, .button.clear.alert:focus[disabled] {
  border-color: transparent;
}
.button.dropdown::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0.4em;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #FFFFFF transparent transparent;
  position: relative;
  top: 0.4em;
  display: inline-block;
  float: right;
  margin-left: 1em;
}
.button.dropdown.hollow::after, .button.dropdown.clear::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
  border-top-color: #767676;
}
.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
  border-top-color: #3adb76;
}
.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
  border-top-color: #ffae00;
}
.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
  border-top-color: #cc4b37;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

a.button:hover, a.button:focus {
  text-decoration: none;
}

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

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

input:disabled, input[readonly],
textarea:disabled,
textarea[readonly] {
  background-color: #7B7B7B;
  cursor: not-allowed;
}

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

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

::-webkit-input-placeholder {
  color: #808080;
}

::-moz-placeholder {
  color: #808080;
}

:-ms-input-placeholder {
  color: #808080;
}

::-ms-input-placeholder {
  color: #808080;
}

::placeholder {
  color: #808080;
}

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

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

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

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

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

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

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

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

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

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0;
}

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  height: auto;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}

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

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

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

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #808080;
  border-radius: 0;
  background-color: #FFFFFF;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #141414;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: rgb%2839, 39, 39%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #272727;
  background-color: #FFFFFF;
  -webkit-box-shadow: 0 0 5px #808080;
          box-shadow: 0 0 5px #808080;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}
select:disabled {
  background-color: #7B7B7B;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: #faedeb;
}
.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

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

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

.accordion {
  margin-left: 0;
  background: #FFFFFF;
  list-style-type: none;
}
.accordion[disabled] .accordion-title {
  cursor: not-allowed;
}

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0;
}
.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0;
}

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

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

.accordion-menu li {
  width: 100%;
}
.accordion-menu a {
  padding: 0;
}
.accordion-menu .is-accordion-submenu a {
  padding: 0;
}
.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem;
}
.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #FFFFFF transparent transparent;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1rem;
}
.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto;
}
.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem;
}
.accordion-menu .is-accordion-submenu-parent[aria-expanded=true] > a::after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.is-accordion-submenu-parent {
  position: relative;
}

.has-submenu-toggle > a {
  margin-right: 40px;
}

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.submenu-toggle::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 6px;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #FFFFFF transparent transparent;
  top: 0;
  bottom: 0;
  margin: auto;
}

.submenu-toggle[aria-expanded=true]::after {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

.submenu-toggle-text {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.button-group {
  margin-bottom: 1rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.button-group::after {
  clear: both;
}
.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded .button {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.button-group.primary .button {
  background-color: #1779ba;
  color: #FFFFFF;
}
.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: #126195;
  color: #FFFFFF;
}
.button-group.secondary .button {
  background-color: #767676;
  color: #FFFFFF;
}
.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: #5e5e5e;
  color: #FFFFFF;
}
.button-group.success .button {
  background-color: #3adb76;
  color: #141414;
}
.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: #22bb5b;
  color: #141414;
}
.button-group.warning .button {
  background-color: #ffae00;
  color: #141414;
}
.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: #cc8b00;
  color: #141414;
}
.button-group.alert .button {
  background-color: #cc4b37;
  color: #FFFFFF;
}
.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: #a53b2a;
  color: #FFFFFF;
}
.button-group.stacked, .button-group.stacked-for-small, .button-group.stacked-for-medium {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
@media print, screen and (min-width: 45em) {
  .button-group.stacked-for-small .button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media screen and (max-width: 44.99875em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}
@media screen and (max-width: 63.99875em) {
  .button-group.stacked-for-medium.expanded {
    display: block;
  }
  .button-group.stacked-for-medium.expanded .button {
    display: block;
    margin-right: 0;
  }
}

.close-button {
  position: absolute;
  color: #8eaa96;
  cursor: pointer;
}
[data-whatinput=mouse] .close-button {
  outline: 0;
}
.close-button:hover, .close-button:focus {
  color: #FFFFFF;
}
.close-button.small {
  right: 0.66rem;
  top: 0.33em;
  font-size: 2.7em;
  line-height: 1;
}
.close-button, .close-button.medium {
  right: 15px;
  top: 26px;
  font-size: 2.7em;
  line-height: 1;
}

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
[data-whatinput=mouse] .menu li {
  outline: 0;
}
.menu a,
.menu .button {
  line-height: 1;
  text-decoration: none;
  display: block;
  padding: 0;
}
.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}
.menu input {
  display: inline-block;
}
.menu, .menu.horizontal {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
.menu.vertical {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.menu.expanded li {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.menu.simple {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.menu.simple li + li {
  margin-left: 1rem;
}
.menu.simple a {
  padding: 0;
}
@media print, screen and (min-width: 45em) {
  .menu.medium-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .menu.medium-vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.medium-expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.medium-simple li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .menu.large-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .menu.large-vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.large-expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.large-simple li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
}
@media screen and (min-width: 87.5em) {
  .menu.xlarge-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .menu.xlarge-vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.xlarge-expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.xlarge-simple li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
}
.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.icons a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-left li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}
.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg {
  margin-right: 0.25rem;
}
.menu.icon-right li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}
.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg {
  margin-left: 0.25rem;
}
.menu.icon-top li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu.icon-bottom li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu .is-active > a {
  background: #1779ba;
  color: #FFFFFF;
}
.menu .active > a {
  background: #1779ba;
  color: #FFFFFF;
}
.menu.align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu.align-right li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.menu.align-right li .submenu li {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu.align-right.vertical li {
  display: block;
  text-align: right;
}
.menu.align-right.vertical li .submenu li {
  text-align: right;
}
.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}
.menu.align-center li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu.align-center li .submenu li {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu .menu-text {
  padding: 0;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered > .menu {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu-centered > .menu li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu-centered > .menu li .submenu li {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

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

.menu-icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}
.menu-icon::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #FFFFFF;
  -webkit-box-shadow: 0 7px 0 #FFFFFF, 0 14px 0 #FFFFFF;
          box-shadow: 0 7px 0 #FFFFFF, 0 14px 0 #FFFFFF;
  content: "";
}
.menu-icon:hover::after {
  background: #808080;
  -webkit-box-shadow: 0 7px 0 #808080, 0 14px 0 #808080;
          box-shadow: 0 7px 0 #808080, 0 14px 0 #808080;
}

.menu-icon.dark {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 16px;
  cursor: pointer;
}
.menu-icon.dark::after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 2px;
  background: #141414;
  -webkit-box-shadow: 0 7px 0 #141414, 0 14px 0 #141414;
          box-shadow: 0 7px 0 #141414, 0 14px 0 #141414;
  content: "";
}
.menu-icon.dark:hover::after {
  background: #272727;
  -webkit-box-shadow: 0 7px 0 #272727, 0 14px 0 #272727;
          box-shadow: 0 7px 0 #272727, 0 14px 0 #272727;
}

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

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

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

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

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto;
}
.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 0;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0px;
  content: "";
  border-bottom-width: 0;
  border-top-style: solid;
  border-color: #1779ba transparent transparent;
  right: 5px;
  left: auto;
  margin-top: 0px;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.dropdown.menu > li > a {
  padding: 0;
}
.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #FFFFFF;
}
.no-js .dropdown.menu ul {
  display: none;
}
.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0;
}
.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}
.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto;
}
.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
.dropdown.menu.vertical > li > a::after {
  right: 14px;
}
.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px;
}
.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1779ba;
}
@media print, screen and (min-width: 45em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: 0px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba;
  }
}
@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: 0px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba;
  }
}
@media screen and (min-width: 87.5em) {
  .dropdown.menu.xlarge-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.xlarge-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 0;
  }
  .dropdown.menu.xlarge-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: 0px;
  }
  .dropdown.menu.xlarge-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.xlarge-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.xlarge-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-left-width: 0;
    border-right-style: solid;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.xlarge-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0px;
    content: "";
    border-right-width: 0;
    border-left-style: solid;
    border-color: transparent transparent transparent #1779ba;
  }
}
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

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

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

.is-dropdown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: 1;
  display: none;
  min-width: 100%;
  border: 1px solid #808080;
  background: #FFFFFF;
}
.dropdown .is-dropdown-submenu a {
  padding: 0;
}
.is-dropdown-submenu .is-dropdown-submenu-parent > a::after {
  right: 14px;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0px;
  content: "";
  border-left-width: 0;
  border-right-style: solid;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px;
}
.is-dropdown-submenu .is-dropdown-submenu-parent.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border: inset 0px;
  content: "";
  border-right-width: 0;
  border-left-style: solid;
  border-color: transparent transparent transparent #1779ba;
}
.is-dropdown-submenu .is-dropdown-submenu {
  margin-top: -1px;
}
.is-dropdown-submenu > li {
  width: 100%;
}
.is-dropdown-submenu.js-dropdown-active {
  display: block;
}

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

.label {
  display: inline-block;
  padding: 0.33333rem 0.5rem;
  border-radius: 0;
  font-size: 0.8rem;
  line-height: 1;
  white-space: nowrap;
  cursor: default;
  background: #1779ba;
  color: #FFFFFF;
}
.label.primary {
  background: #1779ba;
  color: #FFFFFF;
}
.label.secondary {
  background: #767676;
  color: #FFFFFF;
}
.label.success {
  background: #3adb76;
  color: #141414;
}
.label.warning {
  background: #ffae00;
  color: #141414;
}
.label.alert {
  background: #cc4b37;
  color: #FFFFFF;
}

.media-object {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}
.media-object img {
  max-width: none;
}
@media screen and (max-width: 44.99875em) {
  .media-object.stack-for-small {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

.media-object-section {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.media-object-section:first-child {
  padding-right: 1rem;
}
.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}
.media-object-section > :last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 44.99875em) {
  .stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    -webkit-flex-basis: 100%;
        -ms-flex-preferred-size: 100%;
            flex-basis: 100%;
    max-width: 100%;
  }
  .stack-for-small .media-object-section img {
    width: 100%;
  }
}
.media-object-section.main-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(20, 20, 20, 0.7);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}
.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}
.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}
.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}
.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #141414;
}
[data-whatinput=mouse] .off-canvas {
  outline: 0;
}
.off-canvas.is-transition-push {
  z-index: 12;
}
.off-canvas.is-closed {
  visibility: hidden;
}
.off-canvas.is-transition-overlap {
  z-index: 50;
}
.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(20, 20, 20, 0.7);
          box-shadow: 0 0 10px rgba(20, 20, 20, 0.7);
}
.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #141414;
}
[data-whatinput=mouse] .off-canvas-absolute {
  outline: 0;
}
.off-canvas-absolute.is-transition-push {
  z-index: 12;
}
.off-canvas-absolute.is-closed {
  visibility: hidden;
}
.off-canvas-absolute.is-transition-overlap {
  z-index: 50;
}
.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(20, 20, 20, 0.7);
          box-shadow: 0 0 10px rgba(20, 20, 20, 0.7);
}
.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}

.position-left.is-transition-push {
  -webkit-box-shadow: inset -13px 0 20px -13px rgba(20, 20, 20, 0.7);
          box-shadow: inset -13px 0 20px -13px rgba(20, 20, 20, 0.7);
}

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}
.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}
.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}

.position-right.is-transition-push {
  -webkit-box-shadow: inset 13px 0 20px -13px rgba(20, 20, 20, 0.7);
          box-shadow: inset 13px 0 20px -13px rgba(20, 20, 20, 0.7);
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}
.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}

.position-top.is-transition-push {
  -webkit-box-shadow: inset 0 -13px 20px -13px rgba(20, 20, 20, 0.7);
          box-shadow: inset 0 -13px 20px -13px rgba(20, 20, 20, 0.7);
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}
.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}

.position-bottom.is-transition-push {
  -webkit-box-shadow: inset 0 13px 20px -13px rgba(20, 20, 20, 0.7);
          box-shadow: inset 0 13px 20px -13px rgba(20, 20, 20, 0.7);
}

.off-canvas-content {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.off-canvas-content.has-transition-push {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 45em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media screen and (min-width: 87.5em) {
  .position-left.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-xlarge ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-xlarge ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-xlarge ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-xlarge .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-xlarge {
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-xlarge ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 45em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
  .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-medium .close-button {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
  .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}
@media screen and (min-width: 87.5em) {
  .off-canvas.in-canvas-for-xlarge {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
  .off-canvas.in-canvas-for-xlarge.position-left, .off-canvas.in-canvas-for-xlarge.position-right, .off-canvas.in-canvas-for-xlarge.position-top, .off-canvas.in-canvas-for-xlarge.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-xlarge .close-button {
    display: none;
  }
}
.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}
.pagination::before, .pagination::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.pagination::after {
  clear: both;
}
.pagination li {
  margin-right: 0.9375rem;
  border-radius: 0;
  font-size: 0.875rem;
  display: inline-block;
}
.pagination a,
.pagination button {
  display: block;
  padding: 0.8125rem 1.3125rem;
  border-radius: 0;
  color: #141414;
}
.pagination a:hover,
.pagination button:hover {
  background: #FFFFFF;
}
.pagination .current {
  padding: 0.8125rem 1.3125rem;
  background: transparent;
  color: #8eaa96;
  cursor: default;
}
.pagination .disabled {
  padding: 0.8125rem 1.3125rem;
  color: #FFFFFF;
  cursor: not-allowed;
}
.pagination .disabled:hover {
  background: transparent;
}
.pagination .ellipsis::after {
  padding: 0.8125rem 1.3125rem;
  content: "…";
  color: #FFFFFF;
}

.pagination-previous a::before,
.pagination-previous.disabled::before {
  display: inline-block;
  margin-right: 0.5rem;
  content: "«";
}

.pagination-next a::after,
.pagination-next.disabled::after {
  display: inline-block;
  margin-left: 0.5rem;
  content: "»";
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%;
}
.sticky.is-stuck.is-at-top {
  top: 0;
}
.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto;
}
.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden;
}
html.is-reveal-open.zf-has-scroll {
  overflow-y: scroll;
}
html.is-reveal-open body {
  overflow-y: hidden;
}

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

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 30px 0 0;
  border: none;
  border-radius: 0;
  background-color: #000;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
}
[data-whatinput=mouse] .reveal {
  outline: 0;
}
@media print, screen and (min-width: 45em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 45em) {
  .reveal {
    width: 300px;
    max-width: 73.125rem;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 45em) {
  .reveal.tiny {
    width: 30%;
    max-width: 73.125rem;
  }
}
@media print, screen and (min-width: 45em) {
  .reveal.small {
    width: 50%;
    max-width: 73.125rem;
  }
}
@media print, screen and (min-width: 45em) {
  .reveal.large {
    width: 90%;
    max-width: 73.125rem;
  }
}
.reveal.full {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  min-height: 100%;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}
@media screen and (max-width: 44.99875em) {
  .reveal {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}
.reveal.without-overlay {
  position: fixed;
}

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0;
}
thead,
tbody,
tfoot {
  border: 1px solid #f2f2f2;
  background-color: #FFFFFF;
}

caption {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
}

thead {
  background: #f9f9f9;
  color: #FFFFFF;
}

tfoot {
  background: #f2f2f2;
  color: #FFFFFF;
}

thead tr,
tfoot tr {
  background: transparent;
}
thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}

tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: #f2f2f2;
}

table.unstriped tbody {
  background-color: #FFFFFF;
}
table.unstriped tbody tr {
  border-bottom: 0;
  border-bottom: 1px solid #f2f2f2;
  background-color: #FFFFFF;
}

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

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

table.hover thead tr:hover {
  background-color: #f4f4f4;
}
table.hover tfoot tr:hover {
  background-color: #ededed;
}
table.hover tbody tr:hover {
  background-color: #fafafa;
}
table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: #ededed;
}

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

.tabs {
  margin: 0;
  border: 1px solid #7B7B7B;
  background: #FFFFFF;
  list-style-type: none;
}
.tabs::before, .tabs::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.tabs::after {
  clear: both;
}

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

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

.tabs.primary {
  background: #1779ba;
}
.tabs.primary > li > a {
  color: #FFFFFF;
}
.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: #1673b1;
}

.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
[data-whatinput=mouse] .tabs-title > a {
  outline: 0;
}
.tabs-title > a:hover {
  background: #FFFFFF;
  color: #1468a0;
}
.tabs-title > a:focus, .tabs-title > a[aria-selected=true] {
  background: #7B7B7B;
  color: #1779ba;
}

.tabs-content {
  border: 1px solid #7B7B7B;
  border-top: 0;
  background: #FFFFFF;
  color: #FFFFFF;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

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

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

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #FFFFFF;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
          box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
  line-height: 0;
}

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out;
}
a.thumbnail:hover, a.thumbnail:focus {
  -webkit-box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
          box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
}
a.thumbnail image {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.title-bar {
  padding: 0.5rem;
  background: #1E1E1E;
  color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left,
.title-bar-right {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}

.title-bar-right {
  text-align: right;
}

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.top-bar {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.5rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.top-bar,
.top-bar ul {
  background-color: #1E1E1E;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}
@media print, screen and (min-width: 64em) {
  .top-bar {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 63.99875em) {
  .top-bar.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 87.49875em) {
  .top-bar.stacked-for-large {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}
@media screen and (max-width: 93.74875em) {
  .top-bar.stacked-for-xlarge {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top-bar.stacked-for-xlarge .top-bar-left,
  .top-bar.stacked-for-xlarge .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}

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

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

.hide {
  display: none !important;
}

.invisible {
  visibility: hidden;
}

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

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

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

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

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

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

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important;
  }
}

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

@media screen and (min-width: 64em) and (max-width: 87.49875em) {
  .hide-for-large-only {
    display: none !important;
  }
}

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

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

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

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

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

.show-for-sr,
.show-on-focus {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.show-on-focus:active, .show-on-focus:focus {
  position: static !important;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.show-for-landscape,
.hide-for-portrait {
  display: block !important;
}
@media screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: block !important;
  }
}
@media screen and (orientation: portrait) {
  .show-for-landscape,
  .hide-for-portrait {
    display: none !important;
  }
}

.hide-for-landscape,
.show-for-portrait {
  display: none !important;
}
@media screen and (orientation: landscape) {
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important;
  }
}
@media screen and (orientation: portrait) {
  .hide-for-landscape,
  .show-for-portrait {
    display: block !important;
  }
}

.align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.align-right {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.align-center {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.align-justify {
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.align-spaced {
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}

.align-left.vertical.menu > li > a {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.align-right.vertical.menu > li > a {
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.align-center.vertical.menu > li > a {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.align-top {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.align-self-top {
  -webkit-align-self: flex-start;
      -ms-flex-item-align: start;
          align-self: flex-start;
}

.align-bottom {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.align-self-bottom {
  -webkit-align-self: flex-end;
      -ms-flex-item-align: end;
          align-self: flex-end;
}

.align-middle {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.align-self-middle {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
}

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

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

.align-center-middle {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
}

.small-order-1 {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.small-order-2 {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}

.small-order-3 {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}

.small-order-4 {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
      -ms-flex-order: 4;
          order: 4;
}

.small-order-5 {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
      -ms-flex-order: 5;
          order: 5;
}

.small-order-6 {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
      -ms-flex-order: 6;
          order: 6;
}

@media print, screen and (min-width: 45em) {
  .medium-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .medium-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .medium-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .medium-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .medium-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .medium-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
}
@media print, screen and (min-width: 64em) {
  .large-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .large-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .large-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .large-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .large-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .large-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
  .xlarge-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .xlarge-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
  }
  .xlarge-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4;
  }
  .xlarge-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5;
  }
  .xlarge-order-6 {
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
        -ms-flex-order: 6;
            order: 6;
  }
}
.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.flex-child-auto {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.flex-child-grow {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 auto;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}

.flex-child-shrink {
  -webkit-box-flex: 0;
  -webkit-flex: 0 1 auto;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}

.flex-dir-row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}

.flex-dir-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.flex-dir-column {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.flex-dir-column-reverse {
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}

@media print, screen and (min-width: 45em) {
  .medium-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .medium-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .medium-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
  .medium-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .medium-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .medium-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .medium-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .medium-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media print, screen and (min-width: 64em) {
  .large-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .large-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .large-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
  .large-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .large-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .large-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .large-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .large-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
@media screen and (min-width: 87.5em) {
  .xlarge-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .xlarge-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
  .xlarge-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto;
  }
  .xlarge-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
  }
  .xlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .xlarge-flex-dir-row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .xlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .xlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.slide-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.fade-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 0;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

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

.fade-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  opacity: 1;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

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

.hinge-in-from-top.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-top.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-right.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-right.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-bottom.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-bottom.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-left.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-left.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-x.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-x.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-in-from-middle-y.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

.hinge-in-from-middle-y.mui-enter.mui-enter-active {
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  opacity: 1;
}

.hinge-out-from-top.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: top;
      -ms-transform-origin: top;
          transform-origin: top;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-top.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hinge-out-from-right.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: right;
      -ms-transform-origin: right;
          transform-origin: right;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-right.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.hinge-out-from-bottom.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: bottom;
      -ms-transform-origin: bottom;
          transform-origin: bottom;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-bottom.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(-90deg);
          transform: perspective(2000px) rotateX(-90deg);
  opacity: 0;
}

.hinge-out-from-left.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: left;
      -ms-transform-origin: left;
          transform-origin: left;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-left.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(-90deg);
          transform: perspective(2000px) rotateY(-90deg);
  opacity: 0;
}

.hinge-out-from-middle-x.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-x.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateX(90deg);
          transform: perspective(2000px) rotateX(90deg);
  opacity: 0;
}

.hinge-out-from-middle-y.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: perspective(2000px) rotate(0deg);
          transform: perspective(2000px) rotate(0deg);
  -webkit-transform-origin: center;
      -ms-transform-origin: center;
          transform-origin: center;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

.hinge-out-from-middle-y.mui-leave.mui-leave-active {
  -webkit-transform: perspective(2000px) rotateY(90deg);
          transform: perspective(2000px) rotateY(90deg);
  opacity: 0;
}

.scale-in-up.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(0.5);
      -ms-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

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

.scale-in-down.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1.5);
      -ms-transform: scale(1.5);
          transform: scale(1.5);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

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

.scale-out-up.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

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

.scale-out-down.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

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

.spin-in.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(-0.75turn);
      -ms-transform: rotate(-0.75turn);
          transform: rotate(-0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

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

.spin-out.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

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

.spin-in-ccw.mui-enter {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0.75turn);
      -ms-transform: rotate(0.75turn);
          transform: rotate(0.75turn);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 0;
}

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

.spin-out-ccw.mui-leave {
  -webkit-transition-duration: 500ms;
          transition-duration: 500ms;
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
  -webkit-transform: rotate(0);
      -ms-transform: rotate(0);
          transform: rotate(0);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  opacity: 1;
}

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

.slow {
  -webkit-transition-duration: 750ms !important;
          transition-duration: 750ms !important;
}

.fast {
  -webkit-transition-duration: 250ms !important;
          transition-duration: 250ms !important;
}

.linear {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}

.ease {
  -webkit-transition-timing-function: ease !important;
          transition-timing-function: ease !important;
}

.ease-in {
  -webkit-transition-timing-function: ease-in !important;
          transition-timing-function: ease-in !important;
}

.ease-out {
  -webkit-transition-timing-function: ease-out !important;
          transition-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-transition-timing-function: ease-in-out !important;
          transition-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          transition-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          transition-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-transition-delay: 300ms !important;
          transition-delay: 300ms !important;
}

.long-delay {
  -webkit-transition-delay: 700ms !important;
          transition-delay: 700ms !important;
}

.shake {
  -webkit-animation-name: shake-7;
          animation-name: shake-7;
}
@-webkit-keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}
@keyframes shake-7 {
  0%, 10%, 20%, 30%, 40%, 50%, 60%, 70%, 80%, 90% {
    -webkit-transform: translateX(7%);
            transform: translateX(7%);
  }
  5%, 15%, 25%, 35%, 45%, 55%, 65%, 75%, 85%, 95% {
    -webkit-transform: translateX(-7%);
            transform: translateX(-7%);
  }
}

.spin-cw {
  -webkit-animation-name: spin-cw-1turn;
          animation-name: spin-cw-1turn;
}
@-webkit-keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes spin-cw-1turn {
  0% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
  100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.spin-ccw {
  -webkit-animation-name: spin-ccw-1turn;
          animation-name: spin-ccw-1turn;
}
@-webkit-keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
}
@keyframes spin-ccw-1turn {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-1turn);
            transform: rotate(-1turn);
  }
}

.wiggle {
  -webkit-animation-name: wiggle-7deg;
          animation-name: wiggle-7deg;
}
@-webkit-keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}
@keyframes wiggle-7deg {
  40%, 50%, 60% {
    -webkit-transform: rotate(7deg);
            transform: rotate(7deg);
  }
  35%, 45%, 55%, 65% {
    -webkit-transform: rotate(-7deg);
            transform: rotate(-7deg);
  }
  0%, 30%, 70%, 100% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
}

.shake,
.spin-cw,
.spin-ccw,
.wiggle {
  -webkit-animation-duration: 500ms;
          animation-duration: 500ms;
}

.infinite {
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

.slow {
  -webkit-animation-duration: 750ms !important;
          animation-duration: 750ms !important;
}

.fast {
  -webkit-animation-duration: 250ms !important;
          animation-duration: 250ms !important;
}

.linear {
  -webkit-animation-timing-function: linear !important;
          animation-timing-function: linear !important;
}

.ease {
  -webkit-animation-timing-function: ease !important;
          animation-timing-function: ease !important;
}

.ease-in {
  -webkit-animation-timing-function: ease-in !important;
          animation-timing-function: ease-in !important;
}

.ease-out {
  -webkit-animation-timing-function: ease-out !important;
          animation-timing-function: ease-out !important;
}

.ease-in-out {
  -webkit-animation-timing-function: ease-in-out !important;
          animation-timing-function: ease-in-out !important;
}

.bounce-in {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.24, 1.245) !important;
}

.bounce-out {
  -webkit-animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
          animation-timing-function: cubic-bezier(0.485, 0.155, 0.515, 0.845) !important;
}

.bounce-in-out {
  -webkit-animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
          animation-timing-function: cubic-bezier(0.76, -0.245, 0.24, 1.245) !important;
}

.short-delay {
  -webkit-animation-delay: 300ms !important;
          animation-delay: 300ms !important;
}

.long-delay {
  -webkit-animation-delay: 700ms !important;
          animation-delay: 700ms !important;
}

/*
  My custom styles:
  Add your scss files below to structure your project styles
*/
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

#wpadminbar {
  position: fixed !important;
}

body.admin-bar.f-topbar-fixed .sticky.fixed {
  margin-top: 2rem;
}
body.admin-bar.offcanvas .off-canvas.is-open {
  top: 2.875rem;
}
@media screen and (min-width: 48.9375em) {
  body.admin-bar.offcanvas .off-canvas.is-open {
    top: 2rem;
  }
}

.wp-caption > figcaption {
  max-width: 100%;
  font-size: 0.8rem;
  color: #999;
  padding: 0.25rem 0;
}

p.wp-caption-text {
  font-size: 90%;
  color: #666;
  padding: 0.625rem 0;
}

.alignleft {
  float: left;
  padding-right: 1rem;
  margin: 0;
}

.alignright {
  float: right;
  padding-left: 1rem;
  margin: 0;
}

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

.gallery {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-right: -0.9375rem;
  margin-left: -0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
.gallery.gallery-columns-1 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-1 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-1 > .gallery-item {
    width: calc(100% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-2 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-2 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-2 > .gallery-item {
    width: calc(50% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-3 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-3 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-3 > .gallery-item {
    width: calc(33.3333333333% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-4 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-4 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-4 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-5 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-5 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-5 > .gallery-item {
    width: calc(20% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-6 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-6 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-6 > .gallery-item {
    width: calc(16.6666666667% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-7 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-7 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-7 > .gallery-item {
    width: calc(14.2857142857% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-8 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-8 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-8 > .gallery-item {
    width: calc(12.5% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery.gallery-columns-9 > .gallery-item {
  width: calc(50% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .gallery.gallery-columns-9 > .gallery-item {
    width: calc(25% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .gallery.gallery-columns-9 > .gallery-item {
    width: calc(11.1111111111% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.gallery .gallery-icon > a {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #FFFFFF;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
          box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
  line-height: 0;
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out;
}
.gallery .gallery-icon > a:hover, .gallery .gallery-icon > a:focus {
  -webkit-box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
          box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
}
.gallery .gallery-icon > a image {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.gallery .gallery-icon > img {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #FFFFFF;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
          box-shadow: 0 0 0 1px rgba(20, 20, 20, 0.2);
  line-height: 0;
}

body {
  line-height: 20px;
}

body,
html {
  max-width: 100%;
  overflow-x: hidden;
  -webkit-font-variant-ligatures: no-common-ligatures !important;
          font-variant-ligatures: no-common-ligatures !important;
}

.grecaptcha-badge {
  visibility: hidden;
}

.grid-container {
  max-width: 44.9375rem;
}
@media print, screen and (min-width: 45em) {
  .grid-container {
    max-width: 45rem;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-container {
    max-width: 64rem;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-container {
    max-width: 75rem;
  }
}

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

.play-icon {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  font-size: 70px;
}

.moretag-wrapper {
  display: block;
  text-align: right;
  font-size: 16px;
  letter-spacing: 0.18px;
  text-transform: uppercase;
  color: #838383;
}

select:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.seperator {
  width: 62px;
  height: 2px;
  margin: 0 auto;
  display: block;
}

@media print, screen and (min-width: 64em) {
  .default-page h1 {
    margin-bottom: 40px;
  }
}

.overlay-hover-item:hover .overlay {
  opacity: 1;
}
.overlay-hover-item .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  opacity: 0;
  -webkit-transition: 0.3s opacity;
  transition: 0.3s opacity;
}
.overlay-hover-item .overlay.text-overlay {
  background-color: rgba(0, 0, 0, 0.7);
}

@media print, screen and (min-width: 45em) {
  .gradient-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(30%, rgba(0, 0, 0, 0)), color-stop(80%, rgba(0, 0, 0, 0.6)), to(rgba(30, 30, 30, 0.8)));
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.6) 80%, rgba(30, 30, 30, 0.8) 100%);
    z-index: 2;
  }
}
.mobile-gradient.gradient-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(30%, rgba(0, 0, 0, 0)), color-stop(80%, rgba(0, 0, 0, 0.6)), to(rgba(30, 30, 30, 0.7)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 30%, rgba(0, 0, 0, 0.6) 80%, rgba(30, 30, 30, 0.7) 100%);
  z-index: 3;
}

.gradient-hover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(20, 20, 20, 0.7);
  z-index: 3;
  opacity: 0;
}

.big-background-image {
  margin-top: 40px;
  margin-bottom: 40px;
}
@media print, screen and (min-width: 45em) {
  .big-background-image {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
.big-background-image h1 {
  margin-bottom: 0;
  padding-bottom: 30px;
}
@media print, screen and (min-width: 45em) {
  .big-background-image h1 {
    padding-bottom: 40px;
  }
}
.big-background-image.our-story {
  border-bottom: 1px solid #141414;
}
.big-background-image.our-story .heading {
  background-color: #1E1E1E;
}
.big-background-image.front-wrapper {
  margin-top: 0;
  margin-bottom: 0;
}
.big-background-image.grid-accordion-wrapper {
  margin-bottom: 0;
  padding-bottom: 60px;
  border-bottom: none;
}
.big-background-image.what-we-do-wrapper {
  border-bottom: none;
}
.big-background-image.pipeline {
  margin-top: 0;
  margin-bottom: 0;
}

.grid-accordion-wrapper .big-background-image {
  border-bottom: none;
  margin-top: 0;
}

.border-bottom-black {
  border-bottom: 1px solid #000 !important;
}

.border-top-black {
  border-top: 1px solid #000 !important;
}

.submit-category {
  position: absolute;
  right: 15px;
  top: 5px;
  background-color: #1E1E1E;
  z-index: 5;
  color: #838383;
}

.submit-category:after {
  content: "";
  color: #FFFFFF;
  right: -13px;
  top: 5px;
  position: absolute;
  background-color: #1E1E1E;
  border: solid #838383;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 4px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* IE11 hide native button (thanks Matt!) */
select::-ms-expand {
  display: none;
}

.select-div select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.d-inline {
  display: inline;
}

.close-button {
  position: absolute;
  top: 0;
  font-weight: normal;
  font-family: Courier, sans-serif;
  font-size: 55px;
}
.close-button:hover, .close-button:active {
  color: #8eaa96;
}
@media print, screen and (min-width: 64em) {
  .close-button {
    font-size: 70px;
  }
}
@media screen and (min-width: 87.5em) {
  .close-button {
    top: 10px;
    right: 30px;
  }
}

.reveal {
  max-width: 260px;
  margin: 0 auto;
  height: auto;
  min-height: auto;
  overflow-y: scroll;
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  padding-top: 60px;
  text-align: center;
}
.reveal .block-video {
  width: 100%;
}
@media screen and (min-width: 28.125em) {
  .reveal {
    max-width: 400px;
  }
}
@media print, screen and (min-width: 45em) {
  .reveal {
    max-width: 510px;
    width: 510px;
    padding-top: 80px;
    height: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .reveal {
    max-width: 650px;
    width: 650px;
    padding-top: 100px;
  }
}
@media screen and (min-width: 87.5em) {
  .reveal {
    max-width: 770px;
    width: 770px;
    padding-top: 100px;
  }
}

.grid-container .grid-x.narrow-grid-padding-x > .cell {
  padding-right: 3px;
  padding-left: 3px;
}
@media screen and (max-width: 44.99875em) {
  .grid-container .grid-x.narrow-grid-padding-x > .cell.small-6:nth-child(1), .grid-container .grid-x.narrow-grid-padding-x > .cell.small-6:nth-child(2n+1) {
    padding-left: 0;
  }
  .grid-container .grid-x.narrow-grid-padding-x > .cell.small-6:nth-child(2n) {
    padding-right: 0;
  }
}
@media print, screen and (min-width: 45em) {
  .grid-container .grid-x.narrow-grid-padding-x > .cell.medium-4:nth-child(1), .grid-container .grid-x.narrow-grid-padding-x > .cell.medium-4:nth-child(3n+1) {
    padding-left: 0;
  }
  .grid-container .grid-x.narrow-grid-padding-x > .cell.medium-4:nth-child(3n) {
    padding-right: 0;
  }
}

@media print, screen and (min-width: 45em) {
  .grid-container > .grid-x.narrow-grid-padding-x-medium-up > .cell {
    padding-right: 3px;
    padding-left: 3px;
  }
  .grid-padding-x > .cell.no-padding-x-medium-up {
    padding-left: 0;
    padding-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-container .grid-x.narrow-grid-padding-x-large-up > .cell {
    padding-right: 3px;
    padding-left: 3px;
  }
  .grid-container .grid-x.narrow-grid-padding-x-large-up > .cell:not(.no-padding):first-child {
    padding-left: 15px;
  }
  .grid-container .grid-x.narrow-grid-padding-x-large-up > .cell:not(.no-padding):last-child {
    padding-right: 15px;
  }
  .grid-padding-x > .cell.no-padding-right-small-only {
    padding-right: 0;
  }
  .grid-padding-x > .cell.no-padding-left-small-only {
    padding-left: 0;
  }
}
.grid-padding-x > .cell.no-padding-x {
  padding-right: 0;
  padding-left: 0;
}

.no-margin-top#flexible-content-0 {
  margin-top: 0;
}

.hidden {
  display: none;
}

body {
  -webkit-font-variant-ligatures: no-common-ligatures;
          font-variant-ligatures: no-common-ligatures;
}

.modal-close-button {
  position: absolute;
  top: -5px;
  right: 0;
  font-size: 2em;
  line-height: 1;
  padding: 0;
  cursor: pointer;
  color: #FFFFFF;
}

#video-modal {
  background-color: transparent;
  border: none;
  padding: 25px 0 0;
  width: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  top: 50% !important;
  overflow-y: auto;
}
#video-modal .video-play-btn {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
#video-modal:focus {
  outline: 0;
}
#video-modal #video-placeholder {
  height: 35vh;
}
@media print, screen and (min-width: 45em) {
  #video-modal #video-placeholder {
    height: 70vh;
  }
}
#video-modal #video-placeholder #vasa-video {
  position: relative;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  height: auto;
  max-height: 100%;
}
@media print, screen and (min-width: 45em) {
  #video-modal {
    max-width: 970px;
    height: auto;
  }
}

.peg-capital-partners h1, .peg-development h1, .peg-construction h1, .peg-property-group h1 {
  display: none;
}
@media screen and (max-width: 44.99875em) {
  .peg-capital-partners, .peg-development, .peg-construction, .peg-property-group {
    margin-top: 0;
  }
  .peg-capital-partners .info-banner .info-banner-paragraph .text-left, .peg-development .info-banner .info-banner-paragraph .text-left, .peg-construction .info-banner .info-banner-paragraph .text-left, .peg-property-group .info-banner .info-banner-paragraph .text-left {
    text-align: center !important;
    max-width: 100% !important;
  }
  .peg-capital-partners .info-banner .container .column-two .logo, .peg-development .info-banner .container .column-two .logo, .peg-construction .info-banner .container .column-two .logo, .peg-property-group .info-banner .container .column-two .logo {
    height: auto;
    max-width: 250px;
  }
}

@media screen and (min-width: 87.5em) {
  .mobile-menu,
  .site-title-bar {
    display: none !important;
  }
}

@media screen and (max-width: 87.49875em) {
  .desktop-menu,
  .site-navigation .top-bar-left {
    display: none !important;
  }
}

.site-desktop-title a {
  font-weight: bold;
}

.post-navigation::before, .post-navigation::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.post-navigation::after {
  clear: both;
}

.nav-previous {
  float: left;
}

.nav-next {
  float: right;
}

.site-header {
  border-bottom: 1px solid #000;
}
.site-header .title-bar-title a,
.site-header .top-bar-title a {
  display: block;
}
.site-header .title-bar-title img,
.site-header .top-bar-title img {
  width: 142px;
  padding-top: 25px;
  padding-bottom: 30px;
}
@media screen and (min-width: 87.5em) {
  .site-header .title-bar-title img,
  .site-header .top-bar-title img {
    padding-top: 16px;
    padding-bottom: 20px;
  }
}
.site-header .top-bar {
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 2px;
  padding: 0;
}
.site-header .top-bar .menu-item {
  position: relative;
  line-height: 20px;
  margin: 52px 0 26px 40px;
  text-align: right;
}
.site-header .top-bar .menu-item a {
  position: relative;
  display: inline;
  color: #FFFFFF;
}
.site-header .top-bar .menu-item.menu-item-has-children > a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  border-bottom: 1px solid #8eaa96;
  height: 20px;
  width: 0;
  padding: 0;
  margin: 0;
  -webkit-transition: 1s ease;
  transition: 1s ease;
}
.site-header .top-bar .menu-item.menu-item-has-children.current-menu-ancestor > a:after {
  border-bottom: 1px solid #8eaa96;
  -webkit-transition: none;
  transition: none;
  width: 100%;
}
.site-header .top-bar .menu-item.current_page_item > a:after {
  border-bottom: 1px solid #8eaa96;
  width: 100%;
}
.site-header .top-bar .menu-item a:after {
  content: "";
  display: block;
  border-bottom: 1px solid #8eaa96;
  padding-bottom: 5px;
  width: 0;
  position: absolute;
  left: 0;
  -webkit-transition: 1s ease;
  transition: 1s ease;
  margin-top: 5px;
}
.site-header .top-bar .menu-item.current-menu-item a:after {
  border-bottom: 1px solid #8eaa96;
  -webkit-transition: none;
  transition: none;
  width: 100%;
}
.site-header .top-bar .menu-item.is-dropdown-submenu-parent > a:after {
  height: 18px;
}
.site-header .top-bar .menu-item a:hover {
  line-height: 20px;
}
.site-header .top-bar .menu-item a:hover:after {
  width: 100%;
}
.site-header .top-bar .dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: calc(100% + 28px);
  left: 0;
  right: auto;
  border: 0;
  background-color: #000;
  padding-top: 12px;
  font-weight: 400;
  z-index: 500;
}
.site-header .top-bar .dropdown.menu > li.opens-left > .is-dropdown-submenu .menu-item {
  margin: 0 129px 12px 19px;
  text-align: left;
}
.site-header .top-bar .dropdown.menu > li.opens-left > .is-dropdown-submenu .menu-item:last-child {
  margin-bottom: 23px;
}
.site-header .top-bar .dropdown.menu > li.opens-left > .is-dropdown-submenu .menu-item a {
  padding-bottom: 5px;
  width: 100%;
}
.site-header .title-bar {
  padding-bottom: 0;
}
.site-header .title-bar .menu-icon {
  margin-top: 37px;
  margin-bottom: 37px;
  float: right;
  padding: 15px 2px;
}
.site-header .title-bar .menu-icon:after {
  background-color: #8eaa96;
  -webkit-box-shadow: 0 11px 0 #8eaa96, 0 22px 0 #8eaa96;
  box-shadow: 0 11px 0 #8eaa96, 0 22px 0 #8eaa96;
  border-radius: 10px;
  height: 5px;
  width: 32px;
}

.mobile-off-canvas-menu {
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 2px;
}
.mobile-off-canvas-menu li {
  line-height: 20px;
}
.mobile-off-canvas-menu .close-button {
  color: #8eaa96;
  font-size: 50px;
}
.mobile-off-canvas-menu .menu {
  margin-top: 60px;
}
.mobile-off-canvas-menu .menu a {
  left: 5px;
  display: inline;
  position: relative;
  color: #FFFFFF;
}
.mobile-off-canvas-menu .menu a:after {
  content: "";
  display: block;
  position: absolute;
  top: 20px;
  left: 0;
  border-bottom: 1px solid #8eaa96;
  width: 0;
  opacity: 0;
  -webkit-transition: 1s ease;
  transition: 1s ease;
}
.mobile-off-canvas-menu .menu .current-menu-ancestor > a:after,
.mobile-off-canvas-menu .menu .current-menu-item > a:after {
  border-bottom: 1px solid #8eaa96;
  -webkit-transition: none;
  transition: none;
  width: 100%;
  opacity: 1;
}
.mobile-off-canvas-menu .menu a:hover:after {
  width: 100%;
  opacity: 1;
}
.mobile-off-canvas-menu .menu li {
  padding-bottom: 15px;
}
.mobile-off-canvas-menu .menu .is-active > a {
  background-color: transparent;
}
.mobile-off-canvas-menu .menu .nested {
  margin: 15px 0 0;
  padding-top: 15px;
  background-color: #000;
  font-weight: 400;
}
.mobile-off-canvas-menu .submenu-toggle {
  top: -10px;
  right: 10px;
}
.mobile-off-canvas-menu .submenu-toggle:after {
  border: solid #838383;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 5px;
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.mobile-off-canvas-menu .submenu-toggle[aria-expanded=true]:after {
  -ms-transform: rotate(-135deg);
      transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  margin-top: 11px;
}

.close-button {
  color: #8eaa96;
}

.main-container {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
  max-width: 73.125rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 45em) {
  .main-container {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}

.main-grid {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 1rem;
}
@media print, screen and (min-width: 45em) {
  .main-grid {
    margin-top: 3rem;
  }
}
.main-grid h2 a {
  color: #FFFFFF;
}
.main-grid.sidebar-left .main-content {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.main-grid.sidebar-left .sidebar {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 45em) {
  .main-grid.sidebar-left .main-content {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .main-grid.sidebar-left .sidebar {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.main-grid .main-content-full-width {
  width: calc(100% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
.main-grid .main-content {
  width: calc(100% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .main-grid .main-content {
    width: calc(66.6666666667% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
  }
}
.main-grid .sidebar {
  width: calc(100% - 1.875rem);
  margin-right: 0.9375rem;
  margin-left: 0.9375rem;
}
@media print, screen and (min-width: 45em) {
  .main-grid .sidebar {
    width: calc(33.3333333333% - 1.875rem);
    margin-right: 0.9375rem;
    margin-left: 0.9375rem;
    margin-top: 1rem;
  }
}

/*------------------------------
Footer Section
------------------------------*/
.footer-container {
  margin: 0 auto 15px;
  border-top: 1px solid #8eaa96;
  padding-top: 20px;
}
@media print, screen and (min-width: 45em) {
  .footer-container {
    padding: 30px 0;
    margin-bottom: 0;
  }
}
@media screen and (min-width: 87.5em) {
  .footer-container {
    padding: 30px 0;
  }
}
.footer-container a,
.footer-container a:active,
.footer-container a:link,
.footer-container a:visited {
  color: #FFFFFF;
}
.footer-container .footer-contents {
  margin: 0 auto;
}
.footer-container .name-slogon {
  font-size: 12px;
  line-height: 18px;
}
.footer-container .name-slogon .name {
  padding-right: 10px;
  line-height: 14px;
}
@media print, screen and (min-width: 45em) {
  .footer-container .name-slogon .name {
    border-right: 1px solid #8eaa96;
  }
}
@media print, screen and (min-width: 45em) {
  .footer-container .name-slogon .slogans .slogan {
    display: inline;
  }
}
@media print, screen and (min-width: 45em) {
  .footer-container .name-slogon .slogans {
    display: inline;
    padding-left: 10px;
  }
}
.footer-container .name-slogon .name-break-small {
  border-color: #8eaa96;
  width: 15px;
  margin: 5px 0;
}
.footer-container .social-icons {
  padding-top: 20px;
  padding-bottom: 20px;
}
.footer-container .social-icons .icon {
  display: inline;
  font-size: 1.8rem;
  padding-right: 5px;
}
@media print, screen and (min-width: 64em) {
  .footer-container .social-icons {
    padding-top: 25px;
  }
}
@media screen and (min-width: 87.5em) {
  .footer-container .social-icons {
    padding-top: 25px;
    padding-bottom: 20px;
  }
  .footer-container .social-icons .icon {
    padding-right: 10px;
  }
}
.footer-container .phone {
  font-size: 14px;
}
.footer-container .copyright {
  padding-top: 30px;
  font-size: 10px;
  line-height: 15px;
  color: #808080;
}
@media print, screen and (min-width: 64em) {
  .footer-container .copyright {
    padding-top: 0;
  }
}
.footer-container .contact p {
  line-height: 18px;
  font-size: 12px;
}
@media print, screen and (min-width: 64em) {
  .footer-container .contact {
    text-align: right;
  }
}

body#tinymce {
  height: auto;
  max-width: 73.125rem;
  padding: 1.25rem !important;
}

.btn {
  padding: 16px 28px;
  font-weight: 600;
  line-height: 20px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.btn.btn-white-outline {
  background-color: transparent;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
}
.btn.btn-white-outline a {
  color: #FFFFFF;
}
.btn.btn-white-outline:hover {
  background-color: #FFFFFF;
  color: #000;
}
.btn.btn-white {
  background-color: #FFFFFF;
  color: #000;
}
.btn.btn-white a {
  color: #000;
}
.btn.btn-white:hover {
  background-color: #E5E7E9;
  color: #000;
}

@media screen and (max-width: 44.99875em) {
  .hero-wrapper {
    position: relative;
  }
}
.featured-hero {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  height: auto;
}
.featured-hero img {
  width: 100%;
  height: 100%;
}

.featured-image-section .header-section {
  background-color: #272727;
  padding: 40px 0;
  margin-bottom: 30px;
  z-index: 25;
  width: 100%;
}
.featured-image-section .header-section h2 {
  margin-bottom: 10px;
}
.featured-image-section .header-section .post-meta-section {
  color: #838383;
}
.featured-image-section .header-section .post-meta-section > span {
  margin: 0 10px;
}
.featured-image-section .header-section .post-meta-section > span:first-child {
  margin-left: 0;
}
@media print, screen and (min-width: 45em) {
  .featured-image-section {
    margin-bottom: 60px;
  }
  .featured-image-section .header-section {
    background-color: transparent;
    position: absolute;
    bottom: 40px;
    margin-bottom: 0;
    padding: 0;
  }
  .featured-image-section .header-section h2 {
    font-size: 50px;
    line-height: 54px;
  }
  .featured-image-section .header-section .post-meta-section {
    color: #FFFFFF;
  }
  .featured-image-section .header-section .post-meta-section a {
    color: #FFFFFF;
  }
}
@media print, screen and (min-width: 64em) {
  .featured-image-section .header-section h2 {
    font-size: 60px;
    line-height: 68px;
  }
}
@media screen and (min-width: 87.5em) {
  .featured-image-section .header-section {
    left: 0;
    right: 0;
  }
}

h1,
h2,
h3,
h4, .h1 {
  font-family: serif;
  font-weight: 700;
  margin-bottom: 0;
}
.wf-active h1,
.wf-active h2,
.wf-active h3,
.wf-active h4, .wf-active .h1 {
  font-family: "Playfair Display", serif;
}

h3,
h5 {
  font-family: sans-serif;
  font-weight: 400;
}
.wf-active h3,
.wf-active h5 {
  font-family: "Work Sans", sans-serif;
}

h1, .h1 {
  font-size: 35px;
  line-height: 36px;
}
.wf-active h1, .wf-active .h1 {
  font-size: 30px;
}

h2 {
  font-size: 24px;
  line-height: 30px;
}
.wf-active h2 {
  font-size: 24px;
}

h3 {
  font-size: 22px;
  line-height: 30px;
}
.wf-active h3 {
  font-size: 22px;
}

h4 {
  font-size: 20px;
  line-height: 22px;
}
.wf-active h4 {
  font-size: 20px;
}

h5 {
  font-size: 18px;
  line-height: 20px;
}
.wf-active h5 {
  font-size: 18px;
}

h6 {
  font-size: 16px;
  line-height: 18px;
}
.wf-active h6 {
  font-size: 16px;
}

@media print, screen and (min-width: 45em) {
  h1, .h1 {
    font-size: 51px;
    line-height: 52px;
  }
  .wf-active h1, .wf-active .h1 {
    font-size: 48px;
  }
  h2 {
    font-size: 36px;
    line-height: 42px;
  }
  .wf-active h2 {
    font-size: 36px;
  }
  h3 {
    font-size: 34px;
    line-height: 40px;
  }
  .wf-active h3 {
    font-family: "Work Sans", sans-serif;
    font-size: 34px;
  }
  h4 {
    font-size: 28px;
    line-height: 32px;
  }
  .wf-active h4 {
    font-size: 28px;
  }
  h5 {
    font-size: 24px;
    line-height: 32px;
  }
  .wf-active h5 {
    font-size: 24px;
  }
  h6 {
    font-size: 20px;
    line-height: 20px;
  }
  .wf-active h6 {
    font-size: 20px;
  }
}
p {
  font-family: sans-serif;
  margin-bottom: 0;
  line-height: 20px;
}
.wf-active p {
  font-family: "Work Sans", sans-serif;
}

[data-whatinput=mouse] a:focus, button:focus [data-whatinput=touch] a:focus,
button:focus {
  outline: none;
}

a,
a:active,
a:focus,
a:link,
a:visited {
  color: #838383;
}

a[target=_blank] {
  color: #FFFFFF;
}

a.link-white,
a.link-white:active,
a.link-white:focus,
a.link-white:link,
a.link-white:visited {
  color: #FFFFFF;
}

/*animation element*/
.animation-element,
.hover-animation-element {
  position: relative;
}
.animation-element.slide-down, .animation-element.slide-left, .animation-element.slide-right, .animation-element.slide-up,
.hover-animation-element.slide-down,
.hover-animation-element.slide-left,
.hover-animation-element.slide-right,
.hover-animation-element.slide-up {
  opacity: 0;
  -webkit-transition: transform 0.8s linear, opacity 1s ease-in-out;
  -webkit-transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: transform 0.8s linear, opacity 1s ease-in-out;
  transition: transform 0.8s linear, opacity 1s ease-in-out, -webkit-transform 0.8s linear;
}
.animation-element.slide-down.in-view, .animation-element.slide-left.in-view, .animation-element.slide-right.in-view, .animation-element.slide-up.in-view,
.hover-animation-element.slide-down.in-view,
.hover-animation-element.slide-left.in-view,
.hover-animation-element.slide-right.in-view,
.hover-animation-element.slide-up.in-view {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.animation-element.slide-down.out-of-view, .animation-element.slide-left.out-of-view, .animation-element.slide-right.out-of-view, .animation-element.slide-up.out-of-view,
.hover-animation-element.slide-down.out-of-view,
.hover-animation-element.slide-left.out-of-view,
.hover-animation-element.slide-right.out-of-view,
.hover-animation-element.slide-up.out-of-view {
  opacity: 0;
  -webkit-transition: transform 0.8s linear, opacity 1s ease-in-out;
  -webkit-transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: transform 0.8s linear, opacity 1s ease-in-out;
  transition: transform 0.8s linear, opacity 1s ease-in-out, -webkit-transform 0.8s linear;
}
.animation-element.slide-up, .animation-element.slide-up.out-of-view,
.hover-animation-element.slide-up,
.hover-animation-element.slide-up.out-of-view {
  -webkit-transform: translate3d(0, 70px, 0);
  transform: translate3d(0, 70px, 0);
}
.animation-element.slide-right, .animation-element.slide-right.out-of-view,
.hover-animation-element.slide-right,
.hover-animation-element.slide-right.out-of-view {
  -webkit-transform: translate3d(-70px, 0, 0);
  transform: translate3d(-70px, 0, 0);
}
.animation-element.slide-left, .animation-element.slide-left.out-of-view,
.hover-animation-element.slide-left,
.hover-animation-element.slide-left.out-of-view {
  -webkit-transform: translate3d(70px, 0, 0);
  transform: translate3d(70px, 0, 0);
}
.animation-element.slide-down, .animation-element.slide-down.out-of-view,
.hover-animation-element.slide-down,
.hover-animation-element.slide-down.out-of-view {
  -webkit-transform: translate3d(0, -70px, 0);
  transform: translate3d(0, -70px, 0);
}
.animation-element.fade-in .cat-item,
.hover-animation-element.fade-in .cat-item {
  opacity: 0;
}
.animation-element.fade-in.as-one,
.animation-element.fade-in .ripple-element,
.hover-animation-element.fade-in.as-one,
.hover-animation-element.fade-in .ripple-element {
  opacity: 0;
  -webkit-transition: opacity 1s ease-in-out;
  transition: opacity 1s ease-in-out;
}
.animation-element.fade-in.as-one, .animation-element.fade-in.in-view,
.hover-animation-element.fade-in.as-one,
.hover-animation-element.fade-in.in-view {
  opacity: 1;
}
.animation-element.fade-in.out-of-view.as-one,
.hover-animation-element.fade-in.out-of-view.as-one {
  opacity: 0;
}
.animation-element.fade-in.out-of-view.ripple .ripple-element,
.hover-animation-element.fade-in.out-of-view.ripple .ripple-element {
  opacity: 0;
  -webkit-transition-delay: none;
          transition-delay: none;
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}
.animation-element.line-slide-top-down:before,
.hover-animation-element.line-slide-top-down:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 0;
  width: 1px;
  opacity: 0;
  -webkit-animation: grow 2s 0.5s 1 forwards;
          animation: grow 2s 0.5s 1 forwards;
}
.animation-element.line-slide-top-down.all:before,
.hover-animation-element.line-slide-top-down.all:before {
  border-left: 1px solid #8eaa96;
}
@media screen and (max-width: 44.99875em) {
  .animation-element.line-slide-top-down.small:before,
  .hover-animation-element.line-slide-top-down.small:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .animation-element.line-slide-top-down.medium:before,
  .hover-animation-element.line-slide-top-down.medium:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 64em) and (max-width: 87.49875em) {
  .animation-element.line-slide-top-down.large:before,
  .hover-animation-element.line-slide-top-down.large:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 87.5em) and (max-width: 93.74875em) {
  .animation-element.line-slide-top-down.xlarge:before,
  .hover-animation-element.line-slide-top-down.xlarge:before {
    border-left: 1px solid #8eaa96;
  }
}
.animation-element.line-slide-top-down.out-of-view:before,
.hover-animation-element.line-slide-top-down.out-of-view:before {
  -webkit-animation: reverse-grow 1s 1 forwards;
          animation: reverse-grow 1s 1 forwards;
}
.animation-element .line-slide-middle-out-hover,
.hover-animation-element .line-slide-middle-out-hover {
  width: 0;
}
.animation-element .hover-animation-element:hover .line-slide-middle-out-hover:before,
.hover-animation-element .hover-animation-element:hover .line-slide-middle-out-hover:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 0 auto;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-name: widen-50;
          animation-name: widen-50;
  right: 0;
  height: 1px;
  width: 0;
  border-top: 1px solid #8eaa96;
}
.animation-element .speciality-card:hover .gradient-hover,
.hover-animation-element .speciality-card:hover .gradient-hover {
  -webkit-animation-name: fade-gradient-in;
          animation-name: fade-gradient-in;
  -webkit-animation-duration: 0.5s;
          animation-duration: 0.5s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
@-webkit-keyframes move-gradient {
  from {
    top: 0;
  }
  to {
    top: -80%;
  }
}
@keyframes move-gradient {
  from {
    top: 0;
  }
  to {
    top: -80%;
  }
}
@-webkit-keyframes fade-gradient-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-gradient-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.animation-element.line-slide-middle-out:before,
.hover-animation-element.line-slide-middle-out:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  margin: 0 auto;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.animation-element.line-slide-middle-out.horizontal:before,
.hover-animation-element.line-slide-middle-out.horizontal:before {
  right: 0;
  height: 1px;
  width: 0;
  -webkit-animation-name: widen;
          animation-name: widen;
}
.animation-element.line-slide-middle-out.vertical:before,
.hover-animation-element.line-slide-middle-out.vertical:before {
  margin: auto;
  bottom: 0;
  height: 0;
  width: 1px;
  border-left: 1px solid #8eaa96;
  -webkit-animation-name: grow;
          animation-name: grow;
}
.animation-element.line-slide-middle-out#ripple-element-0:before,
.hover-animation-element.line-slide-middle-out#ripple-element-0:before {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}
.animation-element.line-slide-middle-out#ripple-element-1:before,
.hover-animation-element.line-slide-middle-out#ripple-element-1:before {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s;
}
.animation-element.line-slide-middle-out#ripple-element-2:before,
.hover-animation-element.line-slide-middle-out#ripple-element-2:before {
  -webkit-animation-delay: 0.6s;
          animation-delay: 0.6s;
}
.animation-element.line-slide-middle-out#ripple-element-3:before,
.hover-animation-element.line-slide-middle-out#ripple-element-3:before {
  -webkit-animation-delay: 0.9s;
          animation-delay: 0.9s;
}
.animation-element.line-slide-middle-out#ripple-element-4:before,
.hover-animation-element.line-slide-middle-out#ripple-element-4:before {
  -webkit-animation-delay: 1.2s;
          animation-delay: 1.2s;
}
.animation-element.line-slide-middle-out.ripple-element:first-child:before,
.hover-animation-element.line-slide-middle-out.ripple-element:first-child:before {
  border: none !important;
}
.animation-element.line-slide-middle-out.out-of-view:before,
.hover-animation-element.line-slide-middle-out.out-of-view:before {
  -webkit-animation: reverse-widen 1s 1 forwards;
          animation: reverse-widen 1s 1 forwards;
}
.animation-element.line-slide-middle-out.all.horizontal:before,
.hover-animation-element.line-slide-middle-out.all.horizontal:before {
  border-top: 1px solid #8eaa96;
}
.animation-element.line-slide-middle-out.all.vertical:before,
.hover-animation-element.line-slide-middle-out.all.vertical:before {
  border-left: 1px solid #8eaa96;
}
@media screen and (max-width: 44.99875em) {
  .animation-element.line-slide-middle-out.small.horizontal:before,
  .hover-animation-element.line-slide-middle-out.small.horizontal:before {
    border-top: 1px solid #8eaa96;
  }
  .animation-element.line-slide-middle-out.small.vertical:before,
  .hover-animation-element.line-slide-middle-out.small.vertical:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .animation-element.line-slide-middle-out.medium.horizontal:before,
  .hover-animation-element.line-slide-middle-out.medium.horizontal:before {
    border-top: 1px solid #8eaa96;
  }
  .animation-element.line-slide-middle-out.medium.vertical:before,
  .hover-animation-element.line-slide-middle-out.medium.vertical:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 64em) and (max-width: 87.49875em) {
  .animation-element.line-slide-middle-out.large.horizontal:before,
  .hover-animation-element.line-slide-middle-out.large.horizontal:before {
    border-top: 1px solid #8eaa96;
  }
  .animation-element.line-slide-middle-out.large.vertical:before,
  .hover-animation-element.line-slide-middle-out.large.vertical:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (min-width: 87.5em) and (max-width: 93.74875em) {
  .animation-element.line-slide-middle-out.xlarge.horizontal:before,
  .hover-animation-element.line-slide-middle-out.xlarge.horizontal:before {
    border-top: 1px solid #8eaa96;
  }
  .animation-element.line-slide-middle-out.xlarge.vertical:before,
  .hover-animation-element.line-slide-middle-out.xlarge.vertical:before {
    border-left: 1px solid #8eaa96;
  }
}
@media screen and (max-width: 44.99875em) {
  .animation-element.line-slide-middle-out.vertical:before,
  .hover-animation-element.line-slide-middle-out.vertical:before {
    border-left: none;
  }
}
@-webkit-keyframes grow {
  from {
    height: 0;
    opacity: 1;
  }
  to {
    height: 100%;
    opacity: 1;
  }
}
@keyframes grow {
  from {
    height: 0;
    opacity: 1;
  }
  to {
    height: 100%;
    opacity: 1;
  }
}
@-webkit-keyframes widen {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@keyframes widen {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
@-webkit-keyframes reverse-grow {
  from {
    height: 100%;
  }
  to {
    height: 0;
  }
}
@keyframes reverse-grow {
  from {
    height: 100%;
  }
  to {
    height: 0;
  }
}
@-webkit-keyframes reverse-widen {
  from {
    width: 100%;
  }
  to {
    width: 0;
  }
}
@keyframes reverse-widen {
  from {
    width: 100%;
  }
  to {
    width: 0;
  }
}

.speciality-card:hover .line-slide-left-right {
  -webkit-animation-name: widen-50;
          animation-name: widen-50;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes widen-50 {
  from {
    width: 0;
  }
  to {
    width: 50px;
  }
}

@keyframes widen-50 {
  from {
    width: 0;
  }
  to {
    width: 50px;
  }
}
.hover-underline-text {
  display: inline-block;
}
.hover-underline-text:after {
  border-bottom: 1px solid #8eaa96;
  width: 0;
  height: 4px;
  display: block;
  content: "";
  -webkit-transition: 0.5s width;
  transition: 0.5s width;
}
.hover-underline-text.gray:after {
  border-bottom: 1px solid #838383;
}
.hover-underline-text.white:after {
  border-bottom: 1px solid #FFFFFF;
}
.hover-underline-text:hover:after {
  width: 100%;
}
.hover-underline-text.backward:hover:after {
  width: 60%;
}

.top-overlay-animation {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 20;
  background-color: #272727;
  opacity: 1;
  -webkit-animation-name: fade;
          animation-name: fade;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes fade {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes fade {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.overlay-animate {
  position: absolute;
  background-color: #272727;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 100;
}

.hover-animation-element.fade-in.as-one {
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
}

.searchform-small #searchform .input-group,
.sidebar #searchform .input-group {
  margin-bottom: 30px;
}
.searchform-small #searchform .input-group-field,
.sidebar #searchform .input-group-field {
  background-color: transparent;
  color: #838383;
  border: none;
  border-bottom: 1px solid #838383;
  padding: 15px 0 25px;
}
.searchform-small #searchsubmit,
.sidebar #searchsubmit {
  background-color: transparent;
  color: #838383;
  border-bottom: 1px solid #838383;
  margin-left: -2px;
  padding: 5px 10px 15px 0;
}

.sidebar-container {
  height: calc(100% + 20px);
}

.sidebar-wrapper {
  height: 100%;
  padding-left: 30px;
  margin-left: 60px;
}
.sidebar-wrapper .sidebar .widget_search {
  margin-bottom: 20px;
  opacity: 0;
}
.sidebar-wrapper .sidebar .widget_categories h6 {
  display: none;
}
.sidebar-wrapper .sidebar .widget_categories ul .cat-item {
  list-style-type: none;
  margin-left: -15px;
  text-transform: uppercase;
  line-height: 17px;
  margin-bottom: 15px;
}
.sidebar-wrapper .sidebar .widget_categories ul .cat-item a {
  color: #FFFFFF;
}
@media screen and (min-width: 87.5em) {
  .sidebar-wrapper {
    margin-left: 75px;
  }
  .sidebar-wrapper .sidebar {
    height: calc(100% + 50px);
  }
}

.search-results-wrapper {
  margin-top: 60px;
  margin-bottom: 40px;
}
.search-results-wrapper h2 {
  margin-bottom: 40px;
}
.search-results-wrapper .search-results {
  border-bottom: 1px solid #838383;
  padding-bottom: 40px;
  margin-bottom: 40px;
}
.search-results-wrapper .search-results .post-image {
  margin-bottom: 20px;
}
.search-results-wrapper .post-title {
  margin-bottom: 10px;
}
.search-results-wrapper .post-meta-section {
  margin-bottom: 20px;
  color: #838383;
}
.search-results-wrapper .post-meta-section a {
  color: #838383;
}
.search-results-wrapper .excerpt {
  margin-bottom: 20px;
}
.search-results-wrapper .sidebar {
  height: calc(100% - 40px);
}
.search-results-wrapper .moretag-wrapper {
  margin-top: 15px;
}
@media print, screen and (min-width: 45em) {
  .search-results-wrapper .excerpt {
    margin-bottom: 0;
  }
  .search-results-wrapper .search-results .post-image {
    margin-bottom: 0;
  }
}

.pagination {
  margin-top: 10px;
  margin-bottom: 40px;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.pagination li {
  margin-right: 8px;
}
@media screen and (max-width: 44.99875em) {
  .pagination li {
    margin-top: 5px;
  }
}
.pagination li a, .pagination li a:focus, .pagination li a:visited {
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
  padding: 14px 20px;
  font-weight: 600;
}
.pagination li:hover a {
  color: #1E1E1E;
}
.pagination li .current {
  border: 1px solid #8eaa96;
  font-weight: 600;
  padding: 18px 20px;
  position: relative;
  top: 14.5px;
}
.pagination li.pagination-next, .pagination li.pagination-previous {
  margin-right: 12px;
}
@media screen and (max-width: 44.99875em) {
  .pagination li.pagination-next, .pagination li.pagination-previous {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.pagination .pagination-next a::after,
.pagination .pagination-next.disabled::after,
.pagination .pagination-previous a::before,
.pagination .pagination-previous.disabled::before {
  content: "";
  margin: 0;
}
.pagination span.navigation {
  display: none;
}
.pagination .ellipsis {
  border: 1px solid #FFFFFF;
  padding: 11px 18px;
}
.pagination .ellipsis:after {
  padding: 0;
}
@media print, screen and (min-width: 45em) {
  .pagination {
    margin-bottom: 60px;
    margin-top: 20px;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .pagination .pagination-previous {
    content: "";
  }
  .pagination span.navigation {
    display: inline-block;
  }
  .pagination i.navigation {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .pagination li {
    font-size: 16px;
  }
}

@media print, screen and (min-width: 64em) {
  .slider-container {
    padding-right: 30px;
  }
}
.slider-container .slidedr {
  background-color: transparent !important;
  height: auto;
  margin-bottom: 0;
  margin-top: 0;
}
.slider-container .slidedr.slick-slider {
  margin-bottom: 0;
}
.slider-container .slidedr .slick-slide img {
  width: 100%;
}
.slider-container .slidedr .slick-slide img:focus {
  outline: none;
}
.slider-container .slidedr .slick-slide:focus {
  outline: none;
}
.slider-container .slick-dots {
  bottom: 22%;
  z-index: 4;
}
@media print, screen and (min-width: 64em) {
  .slider-container .slick-dots {
    bottom: 18%;
  }
}
.slider-container .slick-dots li {
  margin: 0;
}
.slider-container .slick-dots li.slick-active button:before {
  font-size: 15px;
  color: #FFFFFF;
  content: "•";
  top: 3px;
}
.slider-container .slick-dots li button:before {
  font-size: 25px;
  color: #FFFFFF;
  content: "⚬";
  opacity: 1;
}

.slick-dots {
  position: absolute;
  bottom: 10px;
}
.slick-dots li {
  margin: 0;
}
.slick-dots li button {
  width: 10px;
  height: 10px;
}
.slick-dots li button:before {
  color: transparent;
  border: 1px solid #FFFFFF;
  border-radius: 26px;
  width: 10px;
  height: 10px;
  opacity: 1;
}
.slick-dots li.slick-active button {
  padding-right: 5px;
  width: 10px;
  height: 10px;
}
.slick-dots li.slick-active button:before {
  color: #FFFFFF;
  border: none;
  width: 10px;
  height: 10px;
  font-size: 14px;
  margin-top: -3px;
}

.contact-form input[type=text], .contact-form input[type=email], .contact-form input[type=tel], .contact-form select {
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #FFFFFF;
  color: #838383;
  padding-left: 0;
  margin-bottom: 40px;
  width: 100%;
  padding: 0 0 15px;
  font-size: 16px;
  line-height: 20px;
  -webkit-box-sizing: content-box; /* Safari/Chrome, other WebKit */ /* Firefox, other Gecko */
  box-sizing: content-box; /* Opera/IE 8+ */
}
.contact-form input:not([type=checkbox]):not([type=radio]), .contact-form select {
  height: auto;
}
.contact-form input:not([type=checkbox]):not([type=radio])::-webkit-input-placeholder, .contact-form select::-webkit-input-placeholder {
  color: #838383;
  opacity: 1;
}
.contact-form input:not([type=checkbox]):not([type=radio])::placeholder, .contact-form input:not([type=checkbox]):not([type=radio])::-webkit-input-placeholder, .contact-form input:not([type=checkbox]):not([type=radio]):-ms-input-placeholder, .contact-form input:not([type=checkbox]):not([type=radio])::-moz-placeholder, .contact-form input:not([type=checkbox]):not([type=radio]):-moz-placeholder, .contact-form select::placeholder, .contact-form select::-webkit-input-placeholder, .contact-form select:-ms-input-placeholder, .contact-form select::-moz-placeholder, .contact-form select:-moz-placeholder {
  color: #838383;
  opacity: 1;
}
.contact-form select:invalid {
  color: #838383;
  opacity: 1;
}
.contact-form .wpcf7-not-valid-tip {
  margin-bottom: 40px;
  margin-top: -50px;
}
.contact-form label {
  color: #FFFFFF;
}
.contact-form .select_box {
  overflow: hidden;
  position: relative;
}
.contact-form .select_box:after {
  position: absolute;
  top: 5px;
  right: 5px;
  content: "";
  z-index: 98;
  border: 1px solid #838383;
  border-width: 0 1px 1px 0;
  display: inline-block;
  padding: 5px;
  -ms-transform: rotate(45deg);
      transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.contact-form textarea {
  background-color: transparent;
  color: #FFFFFF;
  border: 1px solid #FFFFFF;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 45em) {
  .contact-form input[type=text], .contact-form input[type=email], .contact-form input[type=tel], .contact-form select {
    margin-bottom: 60px;
  }
  .contact-form textarea {
    margin-bottom: 60px;
  }
}
.slider-nav {
  max-height: 190px;
  overflow: hidden;
  margin-bottom: 40px;
}
.slider-nav video, .slider-nav img {
  width: 100%;
  height: 30vw;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 45em) {
  .slider-nav {
    max-height: 150px;
  }
  .slider-nav video, .slider-nav img {
    height: 150px;
  }
}
@media print, screen and (min-width: 64em) {
  .slider-nav {
    max-height: 154px;
  }
  .slider-nav video, .slider-nav img {
    height: 142px;
  }
}
@media screen and (min-width: 87.5em) {
  .slider-nav {
    max-height: 184px;
  }
  .slider-nav video, .slider-nav img {
    height: 168px;
  }
}
.slider-nav .play-icon {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  font-size: 70px;
}
.slider-nav .slick-slide {
  padding-right: 5px;
}
.slider-nav .slick-list {
  padding: 0 !important;
}
.slider-nav .remove-transform {
  -webkit-transform: none !important;
      -ms-transform: none !important;
          transform: none !important;
}
.slider-nav .slick-track {
  margin: 0;
}

.slider-for {
  position: relative;
  margin-bottom: 6px;
}
.slider-for img {
  min-width: 320px;
}
.slider-for iframe, .slider-for video, .slider-for img {
  width: 100%;
  height: 65vw;
  -o-object-fit: cover;
     object-fit: cover;
}
.slider-for .slick-dots {
  position: absolute;
  bottom: 5px;
}
.slider-for .slick-dots li {
  margin: 0;
}
.slider-for .slick-dots li button {
  width: 10px;
  height: 10px;
}
.slider-for .slick-dots li button:before {
  color: transparent;
  border: 1px solid #FFFFFF;
  border-radius: 26px;
  width: 10px;
  height: 10px;
  opacity: 1;
}
.slider-for .slick-dots li.slick-active {
  bottom: 1px;
}
.slider-for .slick-dots li.slick-active button {
  padding-right: 5px;
  width: 10px;
  height: 10px;
}
.slider-for .slick-dots li.slick-active button:before {
  color: #FFFFFF;
  border: none;
  width: 10px;
  height: 10px;
  font-size: 12px;
  margin-top: -3px;
}
@media print, screen and (min-width: 45em) {
  .slider-for .slick-dots {
    bottom: 20px;
  }
  .slider-for iframe, .slider-for video, .slider-for img {
    width: 100%;
    height: 460px;
  }
}
@media print, screen and (min-width: 64em) {
  .slider-for iframe, .slider-for video, .slider-for img {
    height: 435px;
  }
}
@media screen and (min-width: 87.5em) {
  .slider-for img, .slider-for iframe, .slider-for video {
    height: 513px;
  }
}

.slick-dotted.slick-slider {
  margin-bottom: 5px;
}

.slider-wrapper {
  position: relative;
}
.slider-wrapper .slick-next:before,
.slider-wrapper .slick-prev:before {
  content: "";
}
.slider-wrapper .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 100;
  font-size: 30px;
  width: 40px;
  height: 40px;
  opacity: 0.5;
  margin-top: -10px;
  width: 30px;
}
.slider-wrapper .slick-arrow.prev {
  left: 10px;
}
.slider-wrapper .slick-arrow.next {
  right: 10px;
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.slider-wrapper .slick-arrow:hover {
  opacity: 1;
}
@media print, screen and (min-width: 45em) {
  .slider-wrapper .slick-arrow {
    margin-top: 0px;
    width: 50px;
  }
  .slider-wrapper .slick-arrow.prev {
    left: 30px;
  }
  .slider-wrapper .slick-arrow.next {
    right: 30px;
  }
}

.iframe.no-carousel {
  width: 100%;
  height: 60vw;
}

@media print, screen and (min-width: 45em) {
  .iframe.no-carousel {
    width: 690px;
    height: 460px;
  }
}
@media print, screen and (min-width: 64em) {
  .iframe.no-carousel {
    width: 854px;
    height: 435px;
  }
}
@media screen and (min-width: 87.5em) {
  .iframe.no-carousel {
    height: 513px;
  }
}
.wpp-thumbnail {
  display: block;
  float: none;
  max-height: 180px;
  -o-object-fit: cover;
     object-fit: cover;
  margin: 0;
  width: 100%;
}
@media screen and (min-width: 25em) {
  .wpp-thumbnail {
    max-height: 300px;
  }
}
@media print, screen and (min-width: 45em) {
  .wpp-thumbnail {
    max-height: 220px;
  }
}
@media print, screen and (min-width: 64em) {
  .wpp-thumbnail {
    max-height: 140px;
  }
}
@media screen and (min-width: 87.5em) {
  .wpp-thumbnail {
    max-height: 180px;
  }
}

.most-popular-posts .slick-track {
  margin: 0;
}

.popular-post-carousel {
  padding-bottom: 40px;
  padding-top: 40px;
  margin-bottom: 40px;
}
.popular-post-carousel .heading {
  height: 30px;
  margin-bottom: 20px;
  padding-top: 4px;
}
.popular-post-carousel .most-popular-posts {
  max-height: 390px;
}
.popular-post-carousel .most-popular-posts .popular-post .title a {
  color: #FFFFFF;
  font-weight: 700;
  margin-bottom: 10px;
}
.popular-post-carousel .most-popular-posts .popular-post .thumb {
  margin-bottom: 15px;
}
.popular-post-carousel .most-popular-posts .popular-post .specs {
  color: #838383;
}
.popular-post-carousel .most-popular-posts .popular-post .specs span {
  margin: 0 5px;
}
.popular-post-carousel .most-popular-posts .popular-post .specs span:first-child {
  margin-left: 0;
}
.popular-post-carousel .slick-arrow {
  position: absolute;
  top: -35px;
  right: 0;
  width: 30px;
  height: 30px;
  z-index: 10;
}
.popular-post-carousel .slick-prev {
  left: auto;
  right: 35px;
}
@media print, screen and (min-width: 45em) {
  .popular-post-carousel .slick-prev {
    left: auto;
    right: 50px;
  }
  .popular-post-carousel .slick-next {
    right: 15px;
  }
}
.popular-post-carousel .nav-arrows {
  position: absolute;
  top: 0;
  right: 0;
}
.popular-post-carousel .nav-arrows img {
  width: 30px;
  height: 30px;
}
.popular-post-carousel .nav-arrows .popular-post-next img {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.popular-post-carousel .slick-dots {
  position: static;
  margin-top: 10px;
}
.popular-post-carousel .slick-dots li.slick-active button:before {
  font-size: 12px;
  margin-top: -5px;
}
@media print, screen and (min-width: 45em) {
  .popular-post-carousel {
    margin-bottom: 60px;
    padding: 60px 0;
  }
  .popular-post-carousel .most-popular-posts .popular-post {
    margin: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .popular-post-carousel {
    padding: 90px 0;
  }
  .popular-post-carousel .slick-dots {
    margin-top: 20px;
  }
}

.share-this {
  margin-bottom: 30px;
}
.share-this .share-heading {
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 10px;
}
.share-this .share-icons {
  font-size: 35px;
}
.share-this .share-icons .icon, .share-this .share-icons a, .share-this .share-icons a:hover, .share-this .share-icons a:link, .share-this .share-icons a:visited {
  color: #FFFFFF;
  margin-right: 15px;
}
@media print, screen and (min-width: 45em) {
  .share-this {
    margin-bottom: 30px;
  }
}

.mb-0 {
  margin-bottom: 0;
}

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

.pt-30 {
  margin-top: 30px;
}

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

.pb-10 {
  margin-bottom: 10px;
}

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

.mb-80 {
  margin-bottom: 80px;
}

.relative {
  position: relative;
}

.background-dark-gray {
  background-color: #272727;
}

.background-black {
  background-color: #141414;
}

.background-light-black {
  background-color: #1E1E1E;
}

.background-dark-black {
  background-color: #000;
}

.extra-strong {
  font-weight: 900;
}

.strong {
  font-weight: 700;
}

.semi-strong {
  font-weight: 600;
}

.home-banner {
  position: relative;
  width: 100%;
}
.home-banner .custom-grid {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 44.99875em) {
  .home-banner .stats-highlights {
    display: contents;
  }
  .home-banner .stats-highlights h2 {
    margin-bottom: 1em;
  }
  .home-banner .stats-highlights .grid-container .grid-x .cell {
    padding-bottom: 4em;
  }
}
.home-banner .stats-highlights {
  margin-bottom: 80px;
}
.home-banner .stats-highlights .cell h2 {
  padding-bottom: 1em;
}
.home-banner .stats-highlights .cell .custom-grid .inner-cell {
  width: 100%;
  padding-right: 25px !important;
  padding-left: 25px !important;
  text-align: center;
}
@media screen and (min-width: 87.5em) {
  .home-banner .stats-highlights .cell .custom-grid .inner-cell {
    padding-right: 50px !important;
    padding-left: 50px !important;
  }
}
.home-banner .stats-highlights .cell .custom-grid .inner-cell .title {
  text-transform: uppercase;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: 0.1em;
  margin-bottom: 10px;
}
.home-banner .stats-highlights .cell .custom-grid .inner-cell .data {
  font-size: 42px;
  line-height: 45px;
  padding-bottom: 30px;
}
.home-banner .stats-highlights .cell .custom-grid .inner-cell .seperator {
  height: 2px;
  width: 115px;
  margin: 0 auto;
}
@media screen and (max-width: 44.99875em) {
  .home-banner .stats-highlights .cell .custom-grid .inner-cell:first-child {
    padding-top: 0;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell:last-child {
    padding-bottom: 0;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell:last-child .seperator {
    border: none;
  }
}
@media print, screen and (min-width: 45em) {
  .home-banner .stats-highlights .cell .custom-grid {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell {
    width: calc(20% - 5px);
    border-bottom: none;
    padding: 10px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell:last-child {
    border-right: none;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell .title {
    font-size: 14px;
    line-height: 17px;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell .data {
    font-size: 24px;
    line-height: 26px;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .home-banner .stats-highlights .cell .custom-grid .inner-cell .data {
    font-size: 32px;
    line-height: 34px;
  }
}
@media screen and (min-width: 87.5em) {
  .home-banner .stats-highlights .cell .custom-grid .inner-cell .title {
    margin-bottom: 5px;
  }
  .home-banner .stats-highlights .cell .custom-grid .inner-cell .data {
    font-size: 42px;
    line-height: 48px;
  }
}
@media screen and (min-width: 87.5em) {
  .home-banner .stats-highlights {
    margin-bottom: 120px;
  }
}

.recent-news {
  padding-top: 3em;
}
@media print, screen and (min-width: 45em) {
  .recent-news .articles {
    padding-right: 5px !important;
    padding-left: 5px !important;
  }
}
@media screen and (max-width: 44.99875em) {
  .recent-news .slick-next, .recent-news .slick-prev {
    width: 35px;
  }
}
.recent-news h2 {
  padding-bottom: 2em;
}
.recent-news .article {
  padding-left: 5px;
  padding-right: 5px;
}
.recent-news .article .featured-image {
  min-height: 260px;
}
.recent-news .article .featured-image img {
  height: 260px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 64em) {
  .recent-news .article .featured-image {
    min-height: 200px;
  }
  .recent-news .article .featured-image img {
    height: 200px;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.recent-news .article .cta {
  padding: 0;
}
.recent-news .article h4 {
  color: white;
  font-size: 20px;
  font-weight: bolder;
  padding-top: 1em;
  padding-bottom: 1em;
}
.recent-news .article .description {
  padding-bottom: 1em;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.recent-news .article .description p {
  color: #838383;
  font-size: 14px;
  position: relative;
  line-height: 1;
  margin-bottom: 5px;
}
.recent-news .article .description p:first-of-type {
  padding-right: 5px;
  padding-left: 0 !important;
  border-right: 1px solid #838383;
}
.recent-news .article .description p:last-of-type {
  padding-left: 5px;
  padding-right: 0;
  border-right: none;
}
.recent-news .article .description a {
  padding-left: 5px;
  padding-right: 5px;
  font-size: 14px;
  line-height: 1;
  border-right: 1px solid #838383;
  margin-bottom: 5px;
}
.recent-news .article .cta a button {
  color: #838383;
  cursor: pointer;
  font-size: 14px;
}
.recent-news .slick-prev {
  z-index: 1000;
  -webkit-transform: translate(0, -600%);
      -ms-transform: translate(0, -600%);
          transform: translate(0, -600%);
}
.recent-news .slick-next {
  z-index: 1000;
  -webkit-transform: translate(0, -600%);
      -ms-transform: translate(0, -600%);
          transform: translate(0, -600%);
}
.recent-news .slick-next:before {
  font-size: 55px;
  content: " ❯";
  color: #678e78;
  font-weight: bolder;
}
.recent-news .slick-prev:before {
  font-size: 55px;
  content: " ❮";
  color: #678e78;
  font-weight: bolder;
}

@media screen and (max-width: 44.99875em) {
  .recent-news .slick-next {
    right: 1px;
  }
  .recent-news .slick-prev {
    left: 1px;
  }
}
.image-slider {
  padding-bottom: 5em;
}
.image-slider .slick-list {
  max-height: 570px;
}
.image-slider .details {
  max-height: 570px;
}
.image-slider .image {
  max-height: 570px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.image-slider .slick-prev {
  left: 3em;
  z-index: 1000;
  margin-left: 150px;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .image-slider .slick-prev {
    margin-left: 0;
  }
}
@media screen and (max-width: 44.99875em) {
  .image-slider .slick-prev {
    margin-left: 0;
  }
}
.image-slider .slick-next {
  right: 3em;
  z-index: 1000;
  margin-right: 150px;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .image-slider .slick-next {
    margin-right: 10px;
  }
}
@media screen and (max-width: 44.99875em) {
  .image-slider .slick-next {
    margin-right: 10px;
  }
}
.image-slider .slick-next:before {
  font-size: 55px;
  content: " ❯";
  color: #678e78;
  font-weight: bolder;
}
.image-slider .slick-prev:before {
  font-size: 55px;
  content: " ❮";
  color: #678e78;
  font-weight: bolder;
}
.image-slider .container h2 {
  font-size: 26px;
  padding-top: 3em;
  padding-bottom: 0em;
}
.image-slider .container hr {
  color: #718b75;
  border: 1px solid;
  max-width: 50rem;
}
.image-slider .container p {
  padding-left: 4em;
  padding-right: 4em;
}

.reduced-width-banner {
  margin-bottom: 5em;
  background: #678c78;
  padding: 0;
}
.reduced-width-banner .slick-dotted.slick-slider {
  margin-bottom: 0;
}
.reduced-width-banner .slick-list {
  max-height: 570px;
}
.reduced-width-banner .details {
  max-height: 570px;
}
.reduced-width-banner .image {
  max-height: 570px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.reduced-width-banner .slick-prev {
  left: 3em;
  z-index: 1000;
  margin-left: 50px;
}
.reduced-width-banner .slick-next {
  right: 3em;
  z-index: 1000;
  margin-right: 50px;
}
.reduced-width-banner .slick-next:before {
  font-size: 55px;
  content: " ❯";
  color: #678e78;
  font-weight: bolder;
}
.reduced-width-banner .slick-prev:before {
  font-size: 55px;
  content: " ❮";
  color: #678e78;
  font-weight: bolder;
}

@media screen and (max-width: 44.99875em) {
  .image-slider .container p {
    padding-left: 2em;
    padding-right: 2em;
    padding-top: 1em;
  }
  .reduced-width-banner .image-description p {
    padding-left: 3em;
    padding-right: 3em;
  }
}
.image-description h2 {
  font-size: 26px;
  padding-top: 40px;
}
.image-description p {
  padding-bottom: 4em;
  padding-left: 4em;
  padding-right: 4em;
}

.full-width-banner .grid-x {
  background-color: #163a30;
  padding: 4em 0;
}
.full-width-banner .grid-x .container {
  width: 100%;
}
.full-width-banner .grid-x .container h2 {
  font-size: 30px;
  margin-top: 40px;
}
.full-width-banner .grid-x .container hr {
  color: #718b75;
  border: 1px solid;
  max-width: 50rem;
}
.full-width-banner .grid-x .container .cta {
  padding-top: 60px;
}

.single-description-block {
  padding-bottom: 100px;
}
.single-description-block .block img {
  width: 100%;
  height: 818px;
  -o-object-fit: cover;
     object-fit: cover;
}
.single-description-block .row {
  background-color: #678e78;
  height: auto;
}
.single-description-block .row h2 {
  padding-top: 50px;
  padding-bottom: 1em;
  font: normal normal bold 26px/32px Playfair Display;
}
.single-description-block .row p {
  padding-left: 50px;
  padding-right: 50px;
  padding-bottom: 4em;
}

@media screen and (max-width: 44.99875em) {
  .single-description-block .block img {
    height: 300px;
  }
  .single-description-block .block .row {
    height: auto;
    padding-bottom: 10px;
  }
  .single-description-block .block .row h2 {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .single-description-block .block .row p {
    font-size: 15px;
    line-height: 17px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 1em;
  }
}
.hero-banner-video {
  margin-bottom: 60px;
}
.hero-banner-video .video-wrapper {
  height: 600px;
  position: relative;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-banner-video .image-wrapper img {
  height: 400px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero-banner-video .image-wrapper .overlay {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  width: 100%;
}
.hero-banner-video .image-wrapper .overlay h3 {
  font-weight: 700;
  font-size: 4.5vw;
  line-height: 1.1;
  text-align: left;
  margin: 0 15px;
}
.hero-banner-video .controls {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -100px;
  margin-left: -70px;
}
.hero-banner-video .controls i {
  font-size: 50px;
  color: #838383;
  border: 12px solid #838383;
  padding: 15px 20px;
  border-radius: 100%;
}
@media print, screen and (min-width: 45em) {
  .hero-banner-video {
    margin-bottom: 90px;
  }
  .hero-banner-video .image-wrapper img {
    height: 600px;
    width: 100%;
  }
  .hero-banner-video .image-wrapper .overlay h3 {
    font-size: 35px;
    line-height: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .hero-banner-video {
    margin-bottom: 130px;
  }
  .hero-banner-video .banner-video {
    position: relative;
    right: 0;
    top: 0;
    min-width: 100%;
    min-height: 400px;
    width: auto;
    height: 100%;
    z-index: 0;
    background-size: cover;
    -o-object-fit: cover;
       object-fit: cover;
    overflow: hidden;
  }
}
@media screen and (min-width: 87.5em) {
  .hero-banner-video {
    margin-bottom: 130px;
  }
  .hero-banner-video .video-wrapper {
    height: 780px;
  }
}

.text-section-container {
  padding-bottom: 50px;
}
@media print, screen and (min-width: 45em) {
  .text-section-container {
    padding-bottom: 100px;
  }
}
.text-section-container .contents {
  position: relative;
}
.text-section-container .contents .overlay-text-section {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1000px;
}
.text-section-container .contents .overlay-text-section p {
  text-align: center;
  color: #8eaa96;
  opacity: 1;
  font: normal normal normal 32px/43px Playfair Display;
  max-width: 800px;
  width: 100%;
  margin: auto;
}
.text-section-container .without-spider-image .overlay-text-section {
  padding-bottom: 100px;
}

@media screen and (min-width: 64em) and (max-width: 87.49875em) {
  .text-section-container .contents .overlay-text-section p {
    font-size: 20px;
    line-height: 1em;
  }
  .text-section-container .contents .overlay-text-section h3 {
    font-size: 26px;
    line-height: 30px;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .text-section-container .contents .overlay-text-section p {
    font-size: 16px;
    line-height: 1em;
  }
  .text-section-container .contents .overlay-text-section h3 {
    font-size: 22px;
    line-height: 24px;
  }
}
@media screen and (max-width: 44.99875em) {
  .text-section-container .contents .full-width-image img {
    height: 258px;
  }
  .text-section-container .contents .overlay-text-section {
    width: 100%;
    padding: 10px;
  }
  .text-section-container .contents .overlay-text-section p {
    font-size: 11px;
    line-height: 15px;
  }
  .text-section-container .contents .overlay-text-section h2, .text-section-container .contents .overlay-text-section h3 {
    font-size: 14px;
    line-height: 20px;
  }
}
.info-banner {
  margin-bottom: 100px;
}
.info-banner .container .column-one video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.info-banner .container .column-one img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 673px;
}
.info-banner .container .verticle {
  border: none;
  border-left: 2px solid #718b75;
  height: 300px;
  width: 1px;
  margin-top: 0px;
  margin-left: 20px;
  margin-right: 30px;
}
.info-banner .container .column-two .logo {
  height: auto;
  max-width: 350px;
  max-height: 230px;
  margin-bottom: 2em;
}
.info-banner .container .column-two .content {
  max-width: 400px;
}
.info-banner .container .column-two .content .info-banner-paragraph {
  padding-bottom: 6em;
}
.info-banner .container .column-two .content .info-banner-paragraph p {
  padding-top: 1em;
  max-width: 390px;
}

@media screen and (max-width: 44.99875em) {
  .info-banner {
    margin-bottom: 0;
  }
  .info-banner .container .column-one hr {
    display: none;
  }
  .info-banner .container .column-two {
    padding-left: 0;
  }
  .info-banner .container .column-two .logo {
    height: 150px;
    margin: 1em auto;
  }
  .info-banner .container .column-two .content {
    max-width: 100%;
  }
  .info-banner .container .column-two .content .info-banner-paragraph {
    padding-bottom: 50px;
  }
  .info-banner .container .column-two .content .info-banner-paragraph p {
    padding: 10px;
  }
  .info-banner .container .column-two .content .cta {
    padding: 0 1em;
    padding-bottom: 2em;
  }
  .info-banner .container .column-two .content .cta a button {
    width: 100%;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .info-banner .container .column-one hr {
    display: none;
  }
  .info-banner .container .column-two {
    padding-left: 0;
  }
  .info-banner .container .column-two .logo {
    margin: 1em auto;
  }
  .info-banner .container .cell .content {
    max-width: 100%;
  }
  .info-banner .container .cell .content .info-banner-paragraph p {
    padding-left: 100px;
    padding-right: 100px;
    max-width: 100%;
  }
  .info-banner .container .cell .content .cta {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.auto-slider {
  padding-bottom: 0em;
  padding-left: 0em !important;
  padding-right: 0em !important;
}
.auto-slider .auto-slider-home {
  padding-bottom: 12em;
}
.auto-slider .auto-slider-home img {
  height: 570px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.auto-slider .auto-slider-home .container h3 {
  padding-top: 90px;
  padding-bottom: 1em;
  font: normal normal bold 26px/32px Playfair Display;
  font-size: 26px;
}
.auto-slider .auto-slider-home .container hr {
  background-color: #678E78;
  height: 2px;
  border: none;
  max-width: 50rem;
}
.auto-slider .auto-slider-home .container .cta {
  padding-top: 60px;
}
.auto-slider .auto-slider-home .container .visable-background {
  background-color: transparent;
  width: 100%;
}
.auto-slider .auto-slider-home .container .visable-background h3 {
  font: normal normal bold 26px/32px Playfair Display;
}
.auto-slider .auto-slider-home .container .visable-background p {
  font: normal normal normal 16px/20px Work Sans;
}
.auto-slider .auto-slider-home .container .visable-background .cta {
  padding-top: 60px;
}
.auto-slider .auto-slider-home .container .transparent-background .container .cta {
  padding-top: 60px;
}
.auto-slider .auto-slider-home .container .triangle {
  background: #123A31;
  width: 100%;
  position: relative;
  padding: 0 0 1em;
}
.auto-slider .auto-slider-home .container .triangle:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 150px;
  width: 100%;
  background: #123A31;
  -webkit-clip-path: polygon(-41% 3%, 103% 4%, 75% 67%);
          clip-path: polygon(-41% 3%, 103% 4%, 75% 67%);
}
.auto-slider .auto-slider-home .background_two .triangle {
  background: #3E6858;
}
.auto-slider .auto-slider-home .background_two .triangle:after {
  -webkit-clip-path: polygon(-81% -74%, 107% 4%, 50% 67%);
          clip-path: polygon(-81% -74%, 107% 4%, 50% 67%);
  background: #3E6858;
}
.auto-slider .auto-slider-home .background_three .triangle {
  background: #3E6858;
}
.auto-slider .auto-slider-home .background_three .triangle:after {
  -webkit-clip-path: polygon(-41% -74%, 110% 4%, 25% 67%);
          clip-path: polygon(-41% -74%, 110% 4%, 25% 67%);
  background: #3E6858;
}
.auto-slider .auto-slider-home .cta {
  padding-top: 160px;
  text-align: center;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .auto-slider .auto-slider-home {
    padding-bottom: 9em;
  }
  .auto-slider .auto-slider-home img {
    height: 480px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .auto-slider .auto-slider-home .container .transparent-background h3 {
    padding-top: 2em;
  }
  .auto-slider .auto-slider-home .container .visable-background {
    height: auto;
    padding-bottom: 10px;
  }
  .auto-slider .auto-slider-home .container .visable-background h3 {
    padding-top: 2em;
  }
}
@media screen and (max-width: 44.99875em) {
  .auto-slider {
    padding-bottom: 7em;
  }
  .auto-slider .auto-slider-home {
    padding-bottom: 0;
  }
  .auto-slider .auto-slider-home img {
    height: 200px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .auto-slider .auto-slider-home .container h3 {
    padding-bottom: 10px;
    padding-top: 40px;
  }
  .auto-slider .auto-slider-home .container p {
    padding-left: 20px;
    padding-right: 20px;
  }
  .auto-slider .auto-slider-home .container .cta {
    width: auto;
  }
  .auto-slider .auto-slider-home .container .visable-background {
    height: auto;
  }
  .auto-slider .auto-slider-home .container .visable-background h3 {
    padding-top: 40px;
  }
  .auto-slider .auto-slider-home .container .visable-background p {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.auto-slider.stacked {
  margin-top: 150px;
}
.auto-slider.stacked .triangle:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 100%;
  height: 150px;
  width: 100%;
  -webkit-clip-path: polygon(71% 40%, 102% 102%, 0% 100%);
          clip-path: polygon(71% 40%, 102% 102%, 0% 100%);
  background: #3E6858;
}
.auto-slider.stacked .triangle.light {
  background: #8EAA96 !important;
}
.auto-slider.stacked .triangle.light:before, .auto-slider.stacked .triangle.light:after {
  background: #8EAA96 !important;
}
.auto-slider.stacked .slide-images {
  padding-top: 3em;
  padding-bottom: 3em;
}
.auto-slider.stacked .testimonial-columns {
  padding-bottom: 0;
}
.auto-slider.stacked .testimonial-columns .cell {
  border-color: #678E78 !important;
}
.auto-slider.stacked .auto-slider-home .container h3 {
  padding-top: 2em;
}
@media print, screen and (min-width: 64em) {
  .auto-slider.stacked img {
    height: 630px;
  }
}

.testimonial-columns {
  padding-bottom: 6em;
}
.testimonial-columns h2 {
  text-align: center;
  margin-bottom: 1em;
  font-size: 26px;
  font-weight: bold;
}
.testimonial-columns .cell {
  padding: 20px;
  margin-bottom: 1em;
  border-right: 2px solid #3d6857;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .testimonial-columns .cell {
    border-bottom: 2px solid #3d6857;
    border-right: none;
  }
}
@media screen and (max-width: 44.99875em) {
  .testimonial-columns .cell {
    border-bottom: 2px solid #3d6857;
    border-right: none;
  }
}
.testimonial-columns .cell:nth-of-type(3n),
.testimonial-columns .cell:last-of-type {
  border-right: none;
}

@media screen and (max-width: 44.99875em) {
  .testimonial-columns .cell p {
    border-right: none;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .testimonial-columns .cell p {
    border-right: 10000px;
  }
}
/*------------------------------
Image Block
------------------------------*/
.image-block {
  position: relative;
  padding-bottom: 40px;
}
.image-block .heading {
  margin-bottom: 10px;
  font-weight: 600;
}
.image-block .description {
  margin-bottom: 20px;
  line-height: 20px;
}
.image-block .video-link {
  position: relative;
  width: 100%;
  min-height: 193px;
  display: block;
}
.image-block .video-link .video-play-icon {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -30px;
  text-align: center;
  font-size: 24vw;
  color: #7B7B7B;
}
@media print, screen and (min-width: 45em) {
  .image-block {
    padding-bottom: 60px;
  }
  .image-block .video-reveal-button {
    height: 460px;
  }
  .image-block .video-link {
    height: 360px;
  }
  .image-block .video-link .video-preview {
    width: 100%;
    display: block;
  }
  .image-block .video-link .video-play-icon {
    font-size: 120px;
    margin-top: -10px;
  }
  .image-block .description {
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .image-block {
    padding-bottom: 60px;
  }
  .image-block .description {
    margin-bottom: 0;
  }
  .image-block .video-reveal-button {
    height: auto;
  }
  .image-block .video-link {
    height: 377px;
  }
  .image-block .video-link .video-preview {
    height: 377px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .image-block .video-link .video-play-icon {
    margin-top: -50px;
  }
}

.image-block-reveal {
  overflow-y: hidden;
  height: auto;
  min-height: auto;
}
.image-block-reveal .iframe {
  width: 100%;
  height: 150px;
}
.image-block-reveal .block-video {
  padding: 0 15px 30px;
}
@media screen and (min-width: 28.125em) {
  .image-block-reveal .iframe {
    height: 300px;
  }
}
@media print, screen and (min-width: 64em) {
  .image-block-reveal .block-video {
    padding: 0 50px 50px;
  }
  .image-block-reveal .iframe {
    height: 400px;
  }
}
@media screen and (min-width: 87.5em) {
  .image-block-reveal .block-video {
    padding: 0 50px 50px;
  }
  .image-block-reveal .iframe {
    height: 450px;
  }
}

.label-description-reveal {
  padding: 40px 25px;
}
.label-description-reveal .logo {
  margin: 40px 0 40px;
}
.label-description-reveal .close-button {
  margin-top: 10px;
}
.label-description-reveal .reveal-title {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 45em) {
  .label-description-reveal {
    padding: 70px;
  }
  .label-description-reveal .logo {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .label-description-reveal {
    padding: 80px;
  }
  .label-description-reveal .close-button {
    margin-top: 5px;
  }
  .label-description-reveal .logo {
    padding: 0 60px;
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 87.5em) {
  .label-description-reveal {
    padding: 110px 100px;
  }
  .label-description-reveal .close-button {
    margin-top: 5px;
  }
}

.labeled-images-container {
  position: relative;
  padding-bottom: 0.5px;
}
.labeled-images-container h3 {
  text-transform: uppercase;
  text-align: center;
  padding-top: 40px;
  margin-bottom: 40px;
}
.labeled-images-container .labeled-images-wrapper {
  position: relative;
}
.labeled-images-container .labeled-images-wrapper .label-cell {
  position: absolute;
  background-color: #141414;
  width: 260px;
}
@media screen and (max-width: 44.99875em) {
  .labeled-images-container .labeled-images-wrapper .label-cell {
    bottom: 40px;
    left: 0;
    right: 0;
    margin: 0 auto;
  }
}
.labeled-images-container .labeled-images-wrapper .label-cell .label-text {
  padding-bottom: 15px;
}
.labeled-images-container .labeled-images-wrapper .label-cell .label-text.title {
  margin: 30px 0 0;
  text-transform: uppercase;
  text-align: center;
  font-weight: 600;
}
.labeled-images-container .labeled-images-wrapper.desc-label {
  margin-bottom: 40px;
}
.labeled-images-container .labeled-images-wrapper.desc-label .label-image {
  margin-bottom: 180px;
  width: 100%;
}
@media screen and (max-width: 44.99875em) {
  .labeled-images-container .labeled-images-wrapper.desc-label .label-cell {
    bottom: 0;
  }
}
.labeled-images-container .labeled-images-wrapper.desc-label .description {
  height: 60px;
  line-height: 20px;
  margin: 15px 20px 30px 40px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.labeled-images-container .labeled-images-wrapper.title-label .label-image {
  margin-bottom: 90px;
  width: 100%;
}
.labeled-images-container .labeled-images-wrapper.title-label .label-cell:not(.description-box):hover .description {
  display: inherit;
  margin-top: 15px;
}
.labeled-images-container .labeled-images-wrapper.title-label .label-cell:not(.description-box):hover .seperator {
  margin-bottom: 10px;
}
.labeled-images-container .labeled-images-wrapper.title-label .description {
  line-height: 20px;
  margin: 45px 20px 30px 40px;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  display: none;
}
.labeled-images-container .labeled-images-wrapper .link-wrapper {
  text-align: right;
  margin: 30px 25px 50px 0;
}
.labeled-images-container .labeled-images-wrapper .link-wrapper .link {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #838383;
}
.labeled-images-container .labeled-images-wrapper .link-wrapper .link span {
  padding-left: 2px;
}
.labeled-images-container .labeled-images-wrapper .seperator {
  margin-bottom: 30px;
  width: 52px;
  display: block;
}
.labeled-images-container .labeled-images-wrapper .seperator:before {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
}
@media screen and (min-width: 37.5em) {
  .labeled-images-container .labeled-images-wrapper .label-cell {
    width: 450px;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell.creativity:hover {
    height: 370px;
  }
}
@media print, screen and (min-width: 45em) {
  .labeled-images-container .labeled-images-wrapper {
    margin-bottom: 60px;
  }
  .labeled-images-container .labeled-images-wrapper .grid-x {
    position: relative;
  }
  .labeled-images-container .labeled-images-wrapper:last-child {
    margin-bottom: 0;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label {
    margin-bottom: 60px;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label .label-image {
    margin-bottom: 0;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label .label-cell {
    margin-top: -100px;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label .label-cell.right-label {
    margin-top: -100px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-image {
    margin-bottom: 0;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell {
    margin-top: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 120px;
    -webkit-transition: 0.5s height;
    transition: 0.5s height;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell:not(.description-box):hover {
    height: 280px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell:not(.description-box):hover .description {
    opacity: 1;
    visibility: visible;
    -webkit-transition: all 2s;
    transition: all 2s;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell.right-label {
    margin-top: auto;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell .description {
    word-break: normal;
    display: inherit;
    -webkit-transition: none;
    transition: none;
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
    opacity: 0;
    visibility: hidden;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell {
    width: 330px;
    top: 50%;
    margin-top: -55px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell.right-label {
    right: 15px;
    margin-top: -70px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell.left-label {
    left: 15px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell .label-text {
    margin-top: 45px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell .seperator {
    margin-bottom: 45px;
  }
  .labeled-images-container .labeled-images-wrapper .link-wrapper {
    margin-right: 50px;
  }
}
@media print, screen and (min-width: 64em) {
  .labeled-images-container .labeled-images-wrapper .label-cell {
    width: 480px;
    margin-top: -75px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell.right-label {
    right: 15px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell.left-label {
    left: 15px;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label .label-image {
    margin-bottom: 50px;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label.desc-label .label-cell {
    margin-top: -120px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell {
    height: 130px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell:not(.description-box):hover {
    height: 290px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell .title {
    margin-top: 40px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell .description {
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 87.5em) {
  .labeled-images-container .labeled-images-wrapper .label-cell {
    width: 670px;
    margin-top: -65px;
  }
  .labeled-images-container .labeled-images-wrapper .label-cell .label-text.title {
    margin-top: 50px;
  }
  .labeled-images-container .labeled-images-wrapper.desc-label {
    margin-bottom: 30px;
  }
  .labeled-images-container .labeled-images-wrapper.title-label .label-cell .title {
    margin-top: 40px;
  }
  .labeled-images-container .labeled-images-wrapper .seperator {
    width: 60px;
  }
}
@media print, screen and (min-width: 45em) {
  .labeled-images-container {
    padding-bottom: 90px;
  }
  .labeled-images-container h3 {
    padding-top: 130px;
    margin-bottom: 60px;
  }
  .labeled-images-container .labeled-images-wrapper .description {
    margin: 45px 80px 30px 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .labeled-images-container {
    padding-bottom: 80px;
  }
  .labeled-images-container h3 {
    margin-bottom: 40px;
  }
}

.front-wrapper {
  width: 100%;
  height: 100%;
  padding-bottom: 30px;
  /*------------------------------
    Hero Banner
    ------------------------------*/
  /*------------------------------
    Text Highlight block
    ------------------------------*/
  /*------------------------------
    Speciality Card
    ------------------------------*/
  /*------------------------------
    Stats Highlights
    ------------------------------*/
}
@media print, screen and (min-width: 45em) {
  .front-wrapper {
    padding-bottom: 90px;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper {
    padding-bottom: 130px;
  }
}
.front-wrapper .hero-banner {
  margin-bottom: 60px;
}
.front-wrapper .hero-banner .video-wrapper {
  height: 600px;
  position: relative;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}
.front-wrapper .hero-banner .image-wrapper img {
  height: 400px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.front-wrapper .hero-banner .image-wrapper .overlay {
  position: absolute;
  top: 50%;
  right: 50%;
  -webkit-transform: translate(50%, -50%);
      -ms-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  width: 100%;
}
.front-wrapper .hero-banner .image-wrapper .overlay h3 {
  font-weight: 700;
  font-size: 4.5vw;
  line-height: 1.1;
  text-align: left;
  margin: 0 15px;
}
.front-wrapper .hero-banner .controls {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -100px;
  margin-left: -70px;
}
.front-wrapper .hero-banner .controls i {
  font-size: 50px;
  color: #838383;
  border: 12px solid #838383;
  padding: 15px 20px;
  border-radius: 100%;
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .hero-banner {
    margin-bottom: 90px;
  }
  .front-wrapper .hero-banner .image-wrapper img {
    height: 600px;
    width: 100%;
  }
  .front-wrapper .hero-banner .image-wrapper .overlay h3 {
    font-size: 35px;
    line-height: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper .hero-banner {
    margin-bottom: 130px;
  }
  .front-wrapper .hero-banner .banner-video {
    position: relative;
    right: 0;
    top: 0;
    min-width: 100%;
    min-height: 400px;
    width: auto;
    height: 100%;
    z-index: 0;
    background-size: cover;
    -o-object-fit: cover;
       object-fit: cover;
    overflow: hidden;
  }
}
@media screen and (min-width: 87.5em) {
  .front-wrapper .hero-banner {
    margin-bottom: 130px;
  }
  .front-wrapper .hero-banner .video-wrapper {
    height: 780px;
  }
}
.front-wrapper .text-highlight-block {
  margin-bottom: 60px;
  z-index: 10;
}
.front-wrapper .text-highlight-block .text-highlight {
  text-align: center;
  font-size: 24px;
  line-height: 34px;
  font-weight: 700;
  margin: 0 10px;
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .text-highlight-block {
    margin-bottom: 90px;
  }
  .front-wrapper .text-highlight-block .text-highlight {
    margin: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper .text-highlight-block {
    margin-bottom: 130px;
  }
  .front-wrapper .text-highlight-block .text-highlight {
    font-size: 38px;
    line-height: 50px;
  }
}
@media screen and (min-width: 87.5em) {
  .front-wrapper .text-highlight-block {
    margin-bottom: 130px;
  }
}
.front-wrapper .speciality-cards .has-video.large-4 .speciality-card .image {
  max-height: 300px;
}
.front-wrapper .speciality-cards .has-video.large-6 .speciality-card .image {
  max-height: 400px;
}
.front-wrapper .speciality-cards {
  margin-bottom: 60px;
}
.front-wrapper .speciality-cards iframe > .mobile-gradient {
  display: none;
}
.front-wrapper .speciality-cards iframe > .gradient-overlay {
  display: none;
}
.front-wrapper .speciality-cards .gradient-overlay {
  cursor: pointer;
}
.front-wrapper .speciality-cards .column-blocks-header {
  text-align: center;
  padding-bottom: 3em;
}
.front-wrapper .speciality-cards .speciality-card {
  position: relative;
  margin-bottom: 5px;
}
.front-wrapper .speciality-cards .speciality-card .overlay {
  background-color: #1E1E1E;
  opacity: 0.7;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo {
  display: block;
  text-align: center;
  margin: auto;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box {
  display: block;
  text-align: center;
  margin: auto;
}
.front-wrapper .speciality-cards .speciality-card .video-box {
  display: block;
}
.front-wrapper .speciality-cards .speciality-card .video-play-btn {
  display: block;
}
.front-wrapper .speciality-cards .speciality-card .logo {
  display: none;
}
.front-wrapper .speciality-cards .speciality-card .image {
  width: 100%;
  height: 382px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 20% top;
     object-position: 20% top;
  z-index: 1;
  position: relative;
}
.front-wrapper .speciality-cards .speciality-card .title {
  font-size: 18px;
  line-height: 22px;
  letter-spacing: 0.1em;
  width: 100%;
  position: absolute;
  top: 50%;
  margin-top: -20px;
  z-index: 5;
  text-align: center;
  text-transform: uppercase;
}
.front-wrapper .speciality-cards .speciality-card .seperator {
  display: none;
  border-bottom: 1px solid #8eaa96;
  height: 5px;
  margin: auto;
  left: 0;
  right: 0;
  z-index: 3;
}
.front-wrapper .speciality-cards .speciality-card .seperator:before {
  left: -25px;
}
.front-wrapper .speciality-cards .speciality-card .description {
  width: 100%;
  text-align: left;
  display: none;
  z-index: 5;
  padding: 0 15px;
  padding-bottom: 2em;
}
@media screen and (max-width: 44.99875em) {
  .front-wrapper .speciality-cards .speciality-card .description {
    padding-bottom: 5px;
    padding-right: 5px;
    padding-left: 5px;
    font-size: 11px;
  }
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info {
  opacity: 0;
  width: 100%;
  text-align: center;
  position: absolute;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .video-box {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 20px;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box img {
  width: 200px;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box .testimonial-columns .cell p {
    border-right: 10000px;
  }
}
@media screen and (max-width: 44.99875em) {
  .front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box {
    margin-bottom: 0;
  }
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .block-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: none;
}
.front-wrapper .speciality-cards .speciality-card .speciality-card-info .block-cta a button:hover {
  cursor: pointer;
}
@media (min-width: 600px) and (max-width: 1399px) {
  .front-wrapper .speciality-cards .speciality-card .speciality-card-info .logo-box {
    margin-bottom: 0;
  }
  .front-wrapper .speciality-cards .speciality-card .speciality-card-info .description {
    padding: 0 10px;
  }
  .front-wrapper .speciality-cards .speciality-card .speciality-card-info .block-cta {
    padding-top: 1em !important;
  }
}
.front-wrapper .speciality-cards .speciality-card:hover .hide-hover {
  opacity: 0;
}
.front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 5;
  -webkit-transition: 1s opacity;
  transition: 1s opacity;
  opacity: 1;
}
.front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .title {
  top: 0;
}
.front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .block-cta {
  display: block;
  text-align: center;
  padding-top: 2em;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .block-cta {
    padding-top: 1em;
  }
}
@media screen and (max-width: 44.99875em) {
  .front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .block-cta {
    padding-top: 0;
  }
}
.front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .seperator {
  position: relative;
  display: block;
  left: 0;
  right: 0;
  margin: 16px auto;
}
.front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .description {
  display: block;
  overflow-y: hidden;
}
.front-wrapper .speciality-cards .speciality-card .reduced-size-card .image {
  height: 300px;
}
.front-wrapper .speciality-cards .speciality-card .reduced-size-card .category p {
  color: #FFFFFF !important;
  font: Work Sans SemiBold;
}
.front-wrapper .speciality-cards .speciality-card .reduced-size-card .gradient-overlay {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(0, 0, 0, 0)), color-stop(80%, rgba(0, 0, 0, 0.6)), to(rgba(30, 30, 30, 0.7)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0.6) 80%, rgba(30, 30, 30, 0.7) 100%);
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .speciality-cards .speciality-card .image {
    width: 100%;
    height: 300px;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top left;
       object-position: top left;
  }
  .front-wrapper .speciality-cards .speciality-card .title {
    font-size: 24px;
    line-height: 22px;
    margin-top: -10px;
  }
  .front-wrapper .speciality-cards .speciality-card .description {
    padding: 0 90px;
  }
}
@media screen and (min-width: 45em) and (min-width: 45em) and (max-width: 63.99875em) {
  .front-wrapper .speciality-cards .speciality-card .description {
    padding: 10px;
  }
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .seperator {
    margin-top: 25px;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper .speciality-cards .speciality-card .image {
    height: 433px;
  }
  .front-wrapper .speciality-cards .speciality-card .description {
    padding: 0 20px;
  }
  .front-wrapper .speciality-cards .speciality-card:hover .speciality-card-info .seperator {
    margin-top: 30px;
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 87.5em) {
  .front-wrapper .speciality-cards .speciality-card .image {
    height: 512px;
  }
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .speciality-cards {
    margin-bottom: 90px;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper .speciality-cards {
    margin-bottom: 0px;
  }
}
.front-wrapper .logos-block {
  margin-bottom: 130px;
}
.front-wrapper .logos-block .header {
  margin-bottom: 20px;
}
.front-wrapper .logos-block .paragraph {
  margin-bottom: 40px;
}
.front-wrapper .logos-block .logo {
  margin: 10px 30px;
}
@media print, screen and (min-width: 45em) {
  .front-wrapper .logos-block .paragraph {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .front-wrapper .logos-block {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 87.5em) {
  .front-wrapper .logos-block .paragraph {
    margin-bottom: 100px;
  }
}

.full-width-image img {
  width: 100%;
}

.portfolio-grid {
  margin-bottom: 30px;
}
.portfolio-grid .category-title {
  margin-top: 30px;
  margin-bottom: 18px;
}
@media screen and (max-width: 44.99875em) {
  .portfolio-grid .category-title {
    line-height: 36px;
  }
}
.portfolio-grid .category-selector,
.portfolio-grid .category-selector:focus {
  background-color: transparent;
  border: none;
  border-bottom: 2px solid #808080;
  color: #808080;
  padding-left: 0;
  padding-top: 0;
  margin-bottom: 20px;
}
.portfolio-grid .projects-container .projects {
  padding-bottom: 20px;
  opacity: 0;
  -webkit-transition: opacity 2s;
  transition: opacity 2s;
}
.portfolio-grid .projects-container .projects .attachment-post-thumbnail {
  min-height: 95px;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
.portfolio-grid .projects-container .projects .project-caption .project-name {
  text-transform: uppercase;
  font-size: 18px;
  line-height: 21px;
  letter-spacing: 0.1em;
  text-align: center;
  height: 21px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.portfolio-grid .projects-container .projects .project-caption .project-year {
  color: #808080;
  font-size: 16px;
  line-height: 20px;
  text-align: center;
}
@media print, screen and (min-width: 45em) {
  .portfolio-grid .projects-container .projects {
    padding-bottom: 30px;
  }
  .portfolio-grid .projects-container .projects .attachment-post-thumbnail {
    min-height: 150px;
  }
  .portfolio-grid .projects-container .projects .project-caption .project-name,
  .portfolio-grid .projects-container .projects .project-caption .project-year {
    font-size: 18px;
  }
}
@media print, screen and (min-width: 64em) {
  .portfolio-grid .projects-container {
    padding-right: 60px;
  }
  .portfolio-grid .projects-container .projects {
    padding-bottom: 6px;
  }
  .portfolio-grid .projects-container .projects .attachment-post-thumbnail {
    min-height: 155px;
    padding-bottom: 0;
  }
  .portfolio-grid .projects-container .projects.active:hover .project-caption {
    opacity: 1;
    -webkit-transition: 1s opacity;
    transition: 1s opacity;
  }
  .portfolio-grid .projects-container .projects .project-caption {
    opacity: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: none;
    transition: none;
  }
  .portfolio-grid .projects-container .projects .project-caption .project-name {
    height: auto;
    overflow: auto;
    white-space: normal;
  }
}
@media screen and (min-width: 87.5em) {
  .portfolio-grid .projects-container .projects .attachment-post-thumbnail {
    min-height: 185px;
  }
}
@media print, screen and (min-width: 45em) {
  .portfolio-grid .category-title {
    margin-top: 60px;
    margin-bottom: 20px;
  }
  .portfolio-grid .category-selector {
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .portfolio-grid {
    margin-bottom: 60px;
  }
  .portfolio-grid .category-title {
    margin-bottom: 40px;
  }
  .portfolio-grid .category-container {
    padding-left: 32px;
    height: 100%;
  }
  .portfolio-grid .category-container .category-names {
    text-transform: uppercase;
    padding-bottom: 15px;
    letter-spacing: 0.12em;
    display: inline-block;
    color: #FFFFFF;
  }
  .portfolio-grid .category-container .category-names:active, .portfolio-grid .category-container .category-names:hover, .portfolio-grid .category-container .category-names:visited {
    color: #FFFFFF;
  }
}
@media screen and (min-width: 87.5em) {
  .portfolio-grid .category-title {
    margin-bottom: 40px;
  }
}

/*------------------------------
Join our Team
------------------------------*/
.job-postings-wrapper {
  margin-top: 40px;
  margin-bottom: 40px;
}
.job-postings-wrapper h1 {
  margin-bottom: 30px;
  font: normal normal bold 54px/52px Playfair Display;
}
.job-postings-wrapper h3 {
  font: normal normal 26px/32px Work Sans;
  padding-bottom: 1em;
}
.job-postings-wrapper .job-wrapper {
  margin-bottom: 30px;
  border-bottom: 0.5px solid #838383;
}
.job-postings-wrapper .job-wrapper .job-name {
  margin-bottom: 10px;
}
.job-postings-wrapper .job-wrapper .job-metadata {
  color: #838383;
  margin-bottom: 20px;
}
.job-postings-wrapper .job-wrapper .job-description {
  margin-bottom: 30px;
}
.job-postings-wrapper .job-wrapper .apply-link {
  text-align: right;
  display: block;
  color: #838383;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 30px;
}
@media print, screen and (min-width: 45em) {
  .job-postings-wrapper {
    margin-bottom: 30px;
    margin-top: 60px;
  }
  .job-postings-wrapper h1 {
    margin-bottom: 40px;
  }
  .job-postings-wrapper .job-wrapper {
    margin-bottom: 40px;
  }
  .job-postings-wrapper .job-wrapper .job-description {
    margin-bottom: 20px;
  }
  .job-postings-wrapper .job-wrapper .apply-link {
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 44.99875em) {
  .job-postings-wrapper .cell:nth-last-of-type(2) .job-wrapper {
    border: none;
  }
}

/*------------------------------
Partner With PEG
------------------------------*/
.partner-wrapper {
  /*------------------------------
  Inquiry Block
  ------------------------------*/
  /*------------------------------
  Partner Contact Form
  ------------------------------*/
}
.partner-wrapper h1 {
  margin-bottom: 20px;
  margin-top: 40px;
}
.partner-wrapper .inquiry-block {
  margin-bottom: 40px;
  padding-top: 42px;
  padding-bottom: 30px;
}
.partner-wrapper .inquiry-block .heading {
  text-align: center;
  text-transform: uppercase;
  margin-bottom: 10px;
  letter-spacing: 0.12em;
}
.partner-wrapper .inquiry-block .description {
  text-align: center;
  margin-bottom: 40px;
}
.partner-wrapper .inquiry-block .inquiry-wrapper {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.partner-wrapper .inquiry-block .inquiry-wrapper .inquiry {
  width: 270px;
  display: block;
  margin-bottom: 40px;
}
.partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:last-child {
  margin-bottom: 0;
}
.partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:hover {
  opacity: 0.5;
}
.partner-wrapper .inquiry-block .inquiry-wrapper .inquiry .seperator {
  margin: 25px auto;
}
@media print, screen and (min-width: 45em) {
  .partner-wrapper .inquiry-block {
    margin-bottom: 60px;
    padding-bottom: 90px;
    padding-top: 130px;
  }
  .partner-wrapper .inquiry-block .heading {
    margin-bottom: 15px;
  }
  .partner-wrapper .inquiry-block .description {
    margin-bottom: 60px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry {
    margin: 0 0 60px;
    width: 200px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:first-child, .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:nth-child(3n+1) {
    margin-right: 40px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:nth-child(3n) {
    margin-left: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .partner-wrapper .inquiry-block {
    padding-bottom: 70px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry {
    margin: 0 75px 65px;
    width: 220px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:first-child {
    margin-left: 45px;
  }
  .partner-wrapper .inquiry-block .inquiry-wrapper .inquiry:nth-child(3n) {
    margin-right: 45px;
  }
}
@media screen and (min-width: 87.5em) {
  .partner-wrapper .inquiry-block .heading {
    margin-bottom: 15px;
  }
}
.partner-wrapper .partner-contact-form {
  margin-bottom: 50px;
  display: none;
}
.partner-wrapper .partner-contact-form .select-subject {
  display: none;
}
@media print, screen and (min-width: 45em) {
  .partner-wrapper h1 {
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .partner-wrapper h1 {
    margin-bottom: 40px;
  }
}

.what-we-do-wrapper .about-image-block .image-block {
  margin-bottom: 0;
}
.what-we-do-wrapper .about-cards {
  padding-top: 40px;
}
.what-we-do-wrapper .about-cards .service-card {
  border: 1px solid #FFFFFF;
  background-color: #1E1E1E;
  padding: 30px 0;
}
.what-we-do-wrapper .about-cards .service-card.logo-card {
  margin-bottom: 40px;
  padding: 30px 40px;
}
.what-we-do-wrapper .about-cards .service-card .title {
  text-align: center;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 15px;
}
.what-we-do-wrapper .about-cards .service-card .logo {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  text-align: center;
}
.what-we-do-wrapper .about-cards .service-card .description-wrapper {
  display: none;
}
.what-we-do-wrapper .about-cards .service-card .description-wrapper .description {
  line-height: 20px;
  margin: 0 25px 20px;
  overflow-wrap: break-word;
  line-break: strict;
  display: block;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
.what-we-do-wrapper .about-cards .service-card .description-wrapper .learn-more {
  color: #838383;
  text-align: center;
  text-transform: uppercase;
  font-size: 16px;
  letter-spacing: 0.16em;
}
.what-we-do-wrapper .about-cards .service-card .description-wrapper .learn-more a {
  color: #838383;
}
.what-we-do-wrapper .about-cards .service-card .icon {
  margin: 0 auto;
  max-width: 100%;
  display: block;
  width: 75px;
}
.what-we-do-wrapper .about-cards .service-card:hover .icon, .what-we-do-wrapper .about-cards .service-card:hover .logo {
  display: none;
}
.what-we-do-wrapper .about-cards .service-card:hover .description-wrapper {
  display: inherit;
}
.what-we-do-wrapper .about-cards .service-card:hover.logo-card .learn-more {
  padding-bottom: 0;
}
@media screen and (max-width: 44.99875em) {
  .what-we-do-wrapper .about-cards .service-card.service {
    margin: 0 15px 40px;
  }
}
@media print, screen and (min-width: 45em) {
  .what-we-do-wrapper .about-cards .service-card {
    padding: 30px 0 0;
  }
  .what-we-do-wrapper .about-cards .service-card.logo-card {
    margin-bottom: 30px;
  }
  .what-we-do-wrapper .about-cards .service-card .icon {
    width: 95px;
    padding-top: 10px;
    padding-bottom: 50px;
  }
  .what-we-do-wrapper .about-cards .service-card .learn-more {
    padding-bottom: 30px;
  }
  .what-we-do-wrapper .about-cards .service-card.service {
    margin-bottom: 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .what-we-do-wrapper .about-cards .service-card.logo-card {
    margin-bottom: 60px;
  }
  .what-we-do-wrapper .about-cards .service-card.service {
    margin: 0 30px 90px;
  }
}
@media screen and (min-width: 87.5em) {
  .what-we-do-wrapper .about-cards .service-card.service {
    margin: 0 0 90px;
  }
  .what-we-do-wrapper .about-cards .service-card.service.lg-card-1 {
    margin-right: 30px;
  }
  .what-we-do-wrapper .about-cards .service-card.service.lg-card-2 {
    margin-left: 15px;
    margin-right: 15px;
  }
  .what-we-do-wrapper .about-cards .service-card.service.lg-card-3 {
    margin-left: 30px;
  }
}
@media print, screen and (min-width: 45em) {
  .what-we-do-wrapper .about-image-block {
    margin-bottom: 0;
  }
  .what-we-do-wrapper .about-image-block .image-block {
    margin-bottom: 0;
  }
  .what-we-do-wrapper .about-cards {
    padding-top: 130px;
    padding-bottom: 110px;
  }
}
@media print, screen and (min-width: 64em) {
  .what-we-do-wrapper .about-cards {
    padding-bottom: 40px;
    margin-bottom: 0;
  }
}
.what-we-do-wrapper .partner-logos {
  background-color: #2E2E2E;
  padding-top: 40px;
  padding-bottom: 10px;
}
.what-we-do-wrapper .partner-logos .section-title {
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 30px;
  font-size: 34px;
  letter-spacing: 0.13em;
  line-height: 40px;
}
.what-we-do-wrapper .partner-logos .slider-logos-wrapper {
  position: relative;
}
.what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos {
  width: 100%;
}
.what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav {
  display: none;
}
.what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper {
  width: 210px;
  height: 65px;
  margin: 0 auto 20px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper .logo {
  max-height: 100%;
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .what-we-do-wrapper .partner-logos #logo-wrapper-3 {
    width: 400px;
  }
}
@media print, screen and (min-width: 45em) {
  .what-we-do-wrapper .partner-logos {
    padding-top: 90px;
    padding-bottom: 80px;
  }
  .what-we-do-wrapper .partner-logos .section-title {
    letter-spacing: 0.1em;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slick-dots .slick-active {
    top: -2px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav {
    display: inherit;
    position: absolute;
    top: 50%;
    z-index: 10;
    font-size: 30px;
    width: 50px;
    height: 50px;
    margin-top: -80px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav .show-on-hover {
    display: none;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav:hover .show-on-hover {
    display: inherit;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav:hover .hide-on-hover {
    display: none;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav.prev {
    left: 0;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav.next {
    right: 0;
    z-index: 30;
    -webkit-transform: rotate(180deg);
        -ms-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin-bottom: 60px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper {
    width: 230px;
    height: 100px;
    max-height: 100%;
    text-align: center;
    margin: 0 30px 50px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper .logo {
    max-width: 100%;
  }
}
@media print, screen and (min-width: 64em) {
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos {
    margin-bottom: 40px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper {
    margin: 0 25px 40px;
    width: 240px;
  }
}
@media screen and (min-width: 87.5em) {
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos {
    margin-bottom: 40px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .logos .logo-wrapper {
    margin: 0 10px 40px;
    width: 270px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav.prev {
    left: -75px;
  }
  .what-we-do-wrapper .partner-logos .slider-logos-wrapper .slider-logos-nav.next {
    right: -75px;
  }
}
.what-we-do-wrapper .slick-slide img {
  display: inline-block;
}

@media print, screen and (min-width: 64em) {
  h1 {
    margin-bottom: 40px;
  }
}
.card-description-reveal {
  padding: 60px 25px 40px;
}
.card-description-reveal .logo {
  padding-bottom: 30px;
}
@media print, screen and (min-width: 45em) {
  .card-description-reveal {
    padding: 80px 55px 70px;
  }
  .card-description-reveal .logo {
    padding: 0 30px 30px;
  }
}
@media print, screen and (min-width: 64em) {
  .card-description-reveal {
    padding: 90px 80px;
  }
  .card-description-reveal .logo {
    padding: 0 60px 50px;
  }
}
@media screen and (min-width: 87.5em) {
  .card-description-reveal {
    padding: 110px 100px;
  }
  .card-description-reveal .logo {
    padding: 0 90px 50px;
  }
}

.news-wrapper, .videos-page-wrapper {
  margin-top: 40px;
}
.news-wrapper .heading-section, .videos-page-wrapper .heading-section {
  margin-bottom: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.news-wrapper .heading-section .divider, .videos-page-wrapper .heading-section .divider {
  width: 1px;
  height: 40px;
  display: block;
  content: "";
  margin-right: 20px;
}
.news-wrapper .heading-section h1, .videos-page-wrapper .heading-section h1 {
  display: inline-block;
  padding-right: 15px;
  margin-bottom: 0;
  vertical-align: middle;
}
.news-wrapper .heading-section .social-icons, .videos-page-wrapper .heading-section .social-icons {
  color: #FFFFFF;
  font-size: 19px;
  padding-right: 10px;
  padding-top: 5px;
}
@media print, screen and (min-width: 45em) {
  .news-wrapper .heading-section, .videos-page-wrapper .heading-section {
    margin-bottom: 40px;
  }
  .news-wrapper .heading-section h1, .videos-page-wrapper .heading-section h1 {
    padding-right: 35px;
  }
  .news-wrapper .heading-section .divider, .videos-page-wrapper .heading-section .divider {
    margin-right: 40px;
    height: 60px;
  }
  .news-wrapper .heading-section .social-icons, .videos-page-wrapper .heading-section .social-icons {
    font-size: 30px;
    padding-right: 15px;
  }
}
@media print, screen and (min-width: 64em) {
  .news-wrapper .heading-section .social-icons, .videos-page-wrapper .heading-section .social-icons {
    font-size: 35px;
  }
}
.news-wrapper .news-article-wrapper, .news-wrapper .video-page-wrapper, .videos-page-wrapper .news-article-wrapper, .videos-page-wrapper .video-page-wrapper {
  padding-bottom: 30px;
  border-bottom: 0.5px solid #838383;
  margin-bottom: 30px;
}
.news-wrapper .news-article-wrapper h4, .news-wrapper .video-page-wrapper h4, .videos-page-wrapper .news-article-wrapper h4, .videos-page-wrapper .video-page-wrapper h4 {
  margin-bottom: 10px;
}
.news-wrapper .news-article-wrapper img, .news-wrapper .video-page-wrapper img, .videos-page-wrapper .news-article-wrapper img, .videos-page-wrapper .video-page-wrapper img {
  width: 100%;
  height: 195px;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 15px;
}
.news-wrapper .news-article-wrapper .link, .news-wrapper .video-page-wrapper .link, .videos-page-wrapper .news-article-wrapper .link, .videos-page-wrapper .video-page-wrapper .link {
  font-weight: 600;
  color: #FFFFFF;
}
@media screen and (min-width: 28.125em) {
  .news-wrapper .news-article-wrapper img, .news-wrapper .video-page-wrapper img, .videos-page-wrapper .news-article-wrapper img, .videos-page-wrapper .video-page-wrapper img {
    height: 300px;
  }
}
@media screen and (min-width: 34.375em) {
  .news-wrapper .news-article-wrapper img, .news-wrapper .video-page-wrapper img, .videos-page-wrapper .news-article-wrapper img, .videos-page-wrapper .video-page-wrapper img {
    height: 350px;
  }
}
@media print, screen and (min-width: 45em) {
  .news-wrapper .news-article-wrapper, .news-wrapper .video-page-wrapper, .videos-page-wrapper .news-article-wrapper, .videos-page-wrapper .video-page-wrapper {
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
  .news-wrapper .news-article-wrapper img, .news-wrapper .video-page-wrapper img, .videos-page-wrapper .news-article-wrapper img, .videos-page-wrapper .video-page-wrapper img {
    height: auto;
    margin-bottom: 0;
  }
  .news-wrapper .news-article-wrapper .link-wrapper, .news-wrapper .video-page-wrapper .link-wrapper, .videos-page-wrapper .news-article-wrapper .link-wrapper, .videos-page-wrapper .video-page-wrapper .link-wrapper {
    display: inline-block;
  }
}
@media print, screen and (min-width: 45em) {
  .news-wrapper, .videos-page-wrapper {
    margin-top: 60px;
  }
}

.contact-wrapper {
  margin-top: 30px;
}
.contact-wrapper h1 {
  margin-bottom: 20px;
}
.contact-wrapper .map {
  margin-bottom: 40px;
}
.contact-wrapper .contact-us-form {
  margin-bottom: 40px;
}
.contact-wrapper .department-contact-info {
  margin-bottom: 15px;
}
.contact-wrapper .department-contact-info .department {
  margin-bottom: 30px;
}
.contact-wrapper .department-contact-info .department a {
  color: #FFFFFF;
}
.contact-wrapper .department-contact-info .department .name {
  font-size: 18px;
  font-weight: 600;
  line-height: 22px;
  margin-bottom: 5px;
}
.contact-wrapper .department-contact-info .department .email,
.contact-wrapper .department-contact-info .department .phone {
  line-height: 20px;
}
@media print, screen and (min-width: 45em) {
  .contact-wrapper {
    margin-top: 60px;
  }
  .contact-wrapper h1 {
    margin-bottom: 30px;
    line-height: 64px;
  }
  .contact-wrapper .contact-us-form {
    margin-bottom: 60px;
  }
  .contact-wrapper .department-contact-info {
    margin-bottom: 0;
  }
  .contact-wrapper .department-contact-info .department {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .contact-wrapper .map {
    margin-bottom: 60px;
  }
}
@media screen and (min-width: 87.5em) {
  .contact-wrapper h1 {
    margin-bottom: 40px;
  }
}

.home-blog-wrapper .most-recent-post-section .most-recent-post {
  border-bottom: 1px solid #838383;
  padding-bottom: 30px;
  margin-bottom: 40px;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post:last-of-type {
  margin-bottom: 40px;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post h4 {
  margin-bottom: 10px;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post .post-image {
  margin-bottom: 20px;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post .post-meta-section {
  margin-bottom: 20px;
  color: #838383;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post .moretag {
  margin-top: 20px;
  letter-spacing: 0.13em;
}
.home-blog-wrapper .most-recent-post-section .pagination {
  margin-top: 0;
}
.home-blog-wrapper .most-recent-post-section .most-recent-post:hover .moretag:after {
  width: 100%;
}
@media print, screen and (min-width: 45em) {
  .home-blog-wrapper .most-recent-post-section .sidebar #searchform .input-group, .home-blog-wrapper .most-recent-post-section .searchform-small #searchform .input-group {
    margin-bottom: 40px;
  }
  .home-blog-wrapper .most-recent-post-section .most-recent-post {
    padding-bottom: 40px;
  }
  .home-blog-wrapper .most-recent-post-section .most-recent-post:last-of-type {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .home-blog-wrapper .most-recent-post-section .most-recent-post:last-of-type {
    margin-bottom: 60px;
  }
  .home-blog-wrapper .most-recent-post-section .pagination {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media screen and (min-width: 87.5em) {
  .home-blog-wrapper .most-recent-post-section .sidebar {
    height: calc(100% + 40px);
  }
  .home-blog-wrapper .most-recent-post-section .most-recent-post h4 {
    padding-right: 30px;
  }
  .home-blog-wrapper .most-recent-post-section .most-recent-post .post-image {
    margin-bottom: 0;
  }
}
.home-blog-wrapper .subscribe-post-section {
  margin-bottom: 40px;
}
.home-blog-wrapper .subscribe-post-section .contact-form {
  color: #FFFFFF;
}
.home-blog-wrapper .subscribe-post-section .contact-form .subscribe-blog-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 40px;
}
.home-blog-wrapper .subscribe-post-section .contact-form .btn-subscribe {
  padding: 15px 48px;
}
@media print, screen and (min-width: 45em) {
  .home-blog-wrapper .subscribe-post-section {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 45em) {
  .home-blog-wrapper .featured-image-section {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .home-blog-wrapper .featured-image-section {
    margin-bottom: 60px;
  }
}

.blog-wrapper .category-selector {
  margin-bottom: 40px;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #838383;
  color: #838383;
}

.archive-wrapper {
  margin-top: 40px;
}
.archive-wrapper .archive-inner-wrapper {
  margin-bottom: 40px;
}
.archive-wrapper h1 {
  margin-bottom: 30px;
}
.archive-wrapper .category-selector {
  margin-bottom: 30px;
}
.archive-wrapper .post-section {
  margin-bottom: 30px;
}
.archive-wrapper .post-section .post-image {
  margin-bottom: 15px;
}
.archive-wrapper .post-section .post-title {
  margin-bottom: 15px;
  color: #FFFFFF;
}
.archive-wrapper .post-section .post-meta-section {
  color: #838383;
}
.archive-wrapper .post-section .post-meta-section a {
  color: #838383;
}
.archive-wrapper .pagination {
  margin-bottom: 0;
}
.archive-wrapper .sidebar {
  height: 100%;
}
@media print, screen and (min-width: 45em) {
  .archive-wrapper {
    margin-top: 60px;
  }
  .archive-wrapper .pagination {
    margin-top: 40px;
  }
  .archive-wrapper .post-section {
    margin-bottom: 40px;
  }
  .archive-wrapper .archive-inner-wrapper {
    margin-bottom: 60px;
  }
}
@media print, screen and (min-width: 64em) {
  .archive-wrapper .pagination {
    margin-top: 60px;
  }
}
@media screen and (min-width: 87.5em) {
  .archive-wrapper h1 {
    margin-bottom: 40px;
  }
}

.grid-accordion-wrapper {
  position: relative;
  margin-bottom: 40px;
}
.grid-accordion-wrapper h1 {
  margin: 30px 0;
}
.grid-accordion-wrapper .section-header {
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 30px;
}
.grid-accordion-wrapper .section-row {
  margin-bottom: 40px;
}
.grid-accordion-wrapper .section-row:last-child {
  margin-bottom: 0;
}
.grid-accordion-wrapper .section-row .item:hover .hover-state {
  display: block;
}
.grid-accordion-wrapper .section-row .hover-state {
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.7);
  height: 100%;
  width: 100%;
  display: none;
}
.grid-accordion-wrapper .section-row .hover-state .hover-state-content {
  position: relative;
  display: block;
  margin: auto;
  top: 50%;
  margin-top: -65px;
  text-align: center;
  width: 100%;
  padding: 0 10px;
}
.grid-accordion-wrapper .section-row .hover-state .hover-state-content .seperator {
  margin-bottom: 10px;
}
.grid-accordion-wrapper .section-row .hover-state .hover-state-content .item-name-hover {
  font-weight: 600;
  margin-bottom: 10px;
  text-transform: uppercase;
}
.grid-accordion-wrapper .section-row .hover-state .hover-state-content .learn-more {
  display: block;
  width: 200px;
  margin: 0 auto;
  text-align: center;
}
.grid-accordion-wrapper .section-row .hover-state .hover-state-content .job-title-hover {
  margin-bottom: 30px;
  color: #838383;
}
@media print, screen and (min-width: 45em) {
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .item-name-hover {
    font-size: 18px;
  }
}
@media screen and (min-width: 45em) and (max-width: 63.99875em) {
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content {
    margin-top: 0;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .learn-more {
    padding: 10px 4px;
  }
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .item-name-hover {
    line-height: 20px;
  }
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .job-title-hover {
    margin-bottom: 15px;
  }
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .learn-more {
    width: 145px;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-accordion-wrapper .section-row .hover-state .hover-state-content .learn-more {
    width: 200px;
  }
}
.grid-accordion-wrapper .section-row .item-grid-pic {
  margin-bottom: 5px;
}
.grid-accordion-wrapper .section-row .item-grid-pic img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.grid-accordion-wrapper .section-row.additional-row {
  margin-top: -40px;
}
.grid-accordion-wrapper .section-row.funds:last-child {
  margin-bottom: 100px;
}
.grid-accordion-wrapper .section-row.funds .item-grid-pic img {
  height: 70vw;
}
.grid-accordion-wrapper .section-row.funds .bio {
  margin-bottom: 50px;
}
.grid-accordion-wrapper .section-row.funds .hover-state {
  display: block;
  background-color: rgba(0, 0, 0, 0.4);
}
.grid-accordion-wrapper .section-row.funds .hover-state .hover-state-content {
  -webkit-transition: transform 0.3s linear;
  -webkit-transition: -webkit-transform 0.3s linear;
  transition: -webkit-transform 0.3s linear;
  transition: transform 0.3s linear;
  transition: transform 0.3s linear, -webkit-transform 0.3s linear;
  -webkit-transform: translate3d(0, 40px, 0);
  transform: translate3d(0, 40px, 0);
}
.grid-accordion-wrapper .section-row.funds .hover-state .hover-state-content .btn {
  -webkit-transition: opacity 0.5s ease-in-out;
  transition: opacity 0.5s ease-in-out;
  opacity: 0;
}
.grid-accordion-wrapper .section-row.funds .hover-state:hover .hover-state-content, .grid-accordion-wrapper .section-row.funds .hover-state.active .hover-state-content {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}
.grid-accordion-wrapper .section-row.funds .hover-state:hover .hover-state-content .btn, .grid-accordion-wrapper .section-row.funds .hover-state.active .hover-state-content .btn {
  opacity: 1;
}
.grid-accordion-wrapper .after {
  margin-bottom: 40px;
}
.grid-accordion-wrapper .item-info-background {
  position: absolute;
  left: 2px;
  z-index: 2;
  width: 100vw;
  margin-bottom: 60px;
}
.grid-accordion-wrapper .item-info-background .item-info {
  padding-top: 40px;
  padding-bottom: 60px;
}
.grid-accordion-wrapper .item-info-background .item-info .name {
  margin-bottom: 10px;
  padding-right: 25px;
}
.grid-accordion-wrapper .item-info-background .item-info .job-title {
  margin-bottom: 20px;
  color: #838383;
}
.grid-accordion-wrapper .item-info-background .item-info .close-button {
  top: -15px;
  font-size: 50px;
}
.grid-accordion-wrapper .form-title {
  margin-bottom: 30px;
}
@media print, screen and (min-width: 45em) {
  .grid-accordion-wrapper h1 {
    margin: 60px 0 40px;
  }
  .grid-accordion-wrapper .section-header {
    margin-bottom: 40px;
  }
  .grid-accordion-wrapper .section-row .after {
    margin-bottom: 20px;
  }
  .grid-accordion-wrapper .section-row.funds .item-grid-pic img {
    height: 215px;
  }
  .grid-accordion-wrapper .item-info-background .item-info .close-button {
    top: -15px;
    font-size: 55px;
  }
}
@media print, screen and (min-width: 64em) {
  .grid-accordion-wrapper .section-row {
    margin-bottom: 60px;
  }
  .grid-accordion-wrapper .section-row:last-child {
    margin-bottom: 0;
  }
  .grid-accordion-wrapper .section-row .item-grid-pic {
    margin-bottom: 5px;
  }
  .grid-accordion-wrapper .section-row .item-grid-pic img {
    height: auto;
  }
  .grid-accordion-wrapper .section-row.additional-row {
    margin-top: -60px;
  }
  .grid-accordion-wrapper .section-row.funds .item-grid-pic img {
    height: 310px;
  }
  .grid-accordion-wrapper .section-row.funds .item-info-background .item-info img {
    min-height: 600px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .grid-accordion-wrapper .item-info-background .item-info {
    padding-top: 60px;
  }
  .grid-accordion-wrapper .item-info-background .item-info .name {
    padding-right: 45px;
  }
  .grid-accordion-wrapper .item-info-background .item-info img {
    margin-left: -6px;
  }
  .grid-accordion-wrapper .after {
    margin-bottom: 50px;
  }
}
@media screen and (min-width: 87.5em) {
  .grid-accordion-wrapper {
    margin-bottom: 60px;
  }
}

.single-post .post-meta-section a {
  color: #838383;
}
.single-post .post-content p {
  margin-bottom: 20px;
}
.single-post .featured-image-carousel .slider-for .slick-dots li.slick-active button:before {
  margin-top: -3px;
}
@media print, screen and (min-width: 45em) {
  .single-post .featured-image-section.blog-single {
    margin-bottom: 60px;
  }
  .single-post .post-content {
    margin-bottom: 40px;
  }
  .single-post .featured-image-carousel {
    padding-bottom: 60px;
  }
  .single-post .featured-image-carousel .slider-nav {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .single-post .featured-image-section.blog-single {
    margin-bottom: 60px;
  }
  .single-post .featured-image-section.blog-single .header-section {
    bottom: 60px;
  }
}
@media screen and (min-width: 87.5em) {
  .single-post .featured-image-section.blog-single .header-section {
    left: 0;
    right: 0;
  }
}
.single-post .featured-image-carousel .slider-for .slick-slide img {
  width: 100%;
}

.orbit-figure img {
  width: 100%;
}

.project-container {
  padding: 0 16px;
  margin-bottom: 40px;
}
.project-container .project-title {
  margin-bottom: 20px;
  margin-top: 30px;
}
.project-container .project-details {
  font-size: 16px;
}
.project-container .project-details .project-description {
  line-height: 20px;
  margin-bottom: 20px;
}
.project-container .project-details .project-specs:last-of-type {
  margin-bottom: 60px;
  padding-bottom: 0;
}
.project-container .project-details .project-specs {
  line-height: 21px;
  padding-bottom: 15px;
}
.project-container .project-details .forward, .project-container .project-details .backward {
  letter-spacing: 0.08em;
}
.project-container .project-details .project-navigation-links {
  color: #808080;
  display: block;
  text-transform: uppercase;
}
.project-container .project-details .project-navigation-links.forward {
  margin-bottom: 15px;
}
.project-container .project-details .project-navigation-links.backward {
  margin-bottom: 20px;
}
.project-container .project-details .projects-page-link {
  padding-bottom: 2rem;
}
@media screen and (max-width: 44.99875em) {
  .project-container .project-details .projects-page-link {
    text-align: center;
  }
}
@media screen and (max-width: 44.99875em) {
  .project-container .project-details {
    padding-top: 2em;
  }
}
.project-container .slider-nav {
  margin-bottom: 0;
}
.project-container .slider-for .slick-dots li.slick-active button:before {
  margin-top: -6px;
}
@media print, screen and (min-width: 45em) {
  .project-container {
    margin-bottom: 60px;
  }
  .project-container .project-details .project-description {
    margin-bottom: 40px;
    padding-top: 1em;
  }
  .project-container .project-details .project-specs:last-of-type {
    margin-bottom: 40px;
  }
  .project-container .project-details .project-navigation-links.backward {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .project-container .featured-image-carousel {
    padding-right: 15px;
  }
  .project-container .verticle {
    border: none;
    border-left: 2px solid #718b75;
    height: 600px;
    width: 1px;
    margin-top: 0px;
    margin-left: 20px;
    margin-right: 30px;
  }
  .project-container .project-title {
    margin-top: 60px;
    margin-bottom: 40px;
  }
  .project-container .project-details {
    padding-left: 30px;
  }
  .project-container .project-details .project-specs:last-of-type {
    margin-bottom: 60px;
  }
  .project-container .project-navigation-links.forward {
    display: inline-block;
    padding-right: 20px;
  }
  .project-container .project-navigation-links.forward span {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    right: 0;
  }
  .project-container .project-navigation-links.backward {
    display: inline-block;
    padding-left: 20px;
  }
  .project-container .project-navigation-links.backward span {
    position: absolute;
    top: 50%;
    margin-top: -10px;
    left: 0;
  }
}

.pipeline .hero-wrapper {
  position: relative;
  background-color: #1E1E1E;
}
.pipeline .hero-wrapper .hero {
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
}
.pipeline .hero-wrapper .project-name {
  position: absolute;
  top: 10px;
  z-index: 5;
  padding-left: 15px;
}
.pipeline .hero-wrapper .overlay-text {
  opacity: 0;
  padding-bottom: 0;
  position: absolute;
  bottom: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, 30%);
      -ms-transform: translate(-50%, 30%);
          transform: translate(-50%, 30%);
  -webkit-transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: transform 0.8s linear, opacity 1s ease-in-out;
  transition: transform 0.8s linear, opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  z-index: 5;
}
@media screen and (max-width: 44.99875em) {
  .pipeline .hero-wrapper .overlay-text {
    width: 100%;
    text-align: center;
  }
}
.pipeline .hero-wrapper .overlay-text.in-view {
  opacity: 1;
  -webkit-transform: translate(-50%, 10%);
      -ms-transform: translate(-50%, 10%);
          transform: translate(-50%, 10%);
  -webkit-transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: opacity 1s ease-in-out, -webkit-transform 0.8s linear;
  transition: transform 0.8s linear, opacity 1s ease-in-out;
  transition: transform 0.8s linear, opacity 1s ease-in-out, -webkit-transform 0.8s linear;
}
.pipeline .hero-wrapper .tagline {
  z-index: 10;
}
@media print, screen and (min-width: 45em) {
  .pipeline .hero-wrapper .hero-group {
    position: relative;
  }
  .pipeline .hero-wrapper .project-name {
    top: 50px;
  }
  .pipeline .hero-wrapper .tagline, .pipeline .hero-wrapper .project-name {
    display: block;
    width: 100%;
    margin: 0 auto;
    left: 0;
    right: 0;
    max-width: 45rem;
  }
  .pipeline .hero-wrapper .overlay-text {
    -webkit-transform: translate(-50%, 25%);
        -ms-transform: translate(-50%, 25%);
            transform: translate(-50%, 25%);
  }
  .pipeline .hero-wrapper .overlay-text.in-view {
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
@media print, screen and (min-width: 64em) {
  .pipeline .hero-wrapper .tagline {
    bottom: 70px;
  }
  .pipeline .hero-wrapper .project-name {
    max-width: 64rem;
  }
  .pipeline .hero-wrapper .overlay-text {
    font-size: 60px;
    line-height: 64px;
  }
}
@media screen and (min-width: 87.5em) {
  .pipeline .hero-wrapper .project-name {
    top: 60px;
  }
  .pipeline .hero-wrapper .project-name {
    max-width: 75rem;
  }
}
.pipeline .project-carousel {
  margin-bottom: 60px;
}
.pipeline .project-carousel .slider-for .slick-dots li.slick-active button:before {
  margin-top: -3px;
}
.pipeline .highlight-story-wrappper {
  padding-top: 60px;
}
.pipeline .highlight-story-wrappper .heading {
  font-size: 18px;
  line-height: 21px;
  font-weight: 600;
  margin-bottom: 10px;
}
.pipeline .highlight-story-wrappper .highlight-story {
  margin-bottom: 40px;
}
.pipeline .faq-news-wrappper .faq-heading, .pipeline .faq-news-wrappper .news-heading {
  font-size: 18px;
  font-weight: 600;
  line-height: 21px;
  margin-bottom: 20px;
}
.pipeline .faq-news-wrappper .news-heading {
  padding-top: 20px;
}
.pipeline .faq-news-wrappper .faq {
  line-height: 20px;
  margin-bottom: 20px;
  font-size: 16px;
}
.pipeline .faq-news-wrappper .faq .question {
  font-weight: 700;
}
.pipeline .faq-news-wrappper .faq:last-child {
  margin-bottom: 40px;
}
.pipeline .faq-news-wrappper .article {
  margin-bottom: 30px;
}
.pipeline .faq-news-wrappper .article .external-link {
  font-weight: 600;
  color: #FFFFFF;
  display: inline-block;
}
@media print, screen and (min-width: 64em) {
  .pipeline .faq-news-wrappper .faq:last-child {
    margin-bottom: 60px;
  }
  .pipeline .faq-news-wrappper .news-wrapper {
    margin-top: 0;
    margin-left: 60px;
    padding-left: 30px;
    height: calc(100% - 60px);
  }
  .pipeline .faq-news-wrappper .news-wrapper .news-heading {
    padding-top: 0;
  }
}
.pipeline .contact-form-wrapper {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 64em) {
  .pipeline .contact-form-wrapper {
    margin-bottom: 60px;
  }
}
.pipeline .contact-form-wrapper .contact-form-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 21px;
  margin-bottom: 20px;
}

@media print, screen and (min-width: 64em) {
  .single-project .labeled-images-container {
    padding-bottom: 10px;
  }
}

.single-article {
  margin-top: 40px;
  margin-bottom: 30px;
}
.single-article .article-header .overline, .single-article .article-header .date {
  color: #838383;
}
.single-article .article-header .date {
  margin-bottom: 10px;
}
.single-article .article-header .title {
  margin-bottom: 10px;
}
.single-article .article {
  margin-bottom: 40px;
}
.single-article .article .page-video {
  margin-bottom: 40px;
}
.single-article .article .page-video iframe, .single-article .article .page-video video {
  width: 100%;
  height: 190px;
  -o-object-fit: cover;
     object-fit: cover;
}
.single-article .article .page-video .play-icon {
  z-index: 4;
  font-size: 120px;
}
.single-article .article .subheading {
  font-family: "Playfair Display", serif;
  margin-bottom: 20px;
  font-size: 20px;
  line-height: 27px;
  font-style: italic;
}
.wf-active .single-article .article .subheading {
  font-family: "Playfair Display", serif;
}
.single-article .article .body {
  margin-bottom: 40px;
}
.single-article .article .body a {
  color: #FFFFFF;
  font-weight: 700;
}
.single-article .article .subsection a {
  color: #FFFFFF;
  font-weight: 700;
}
.single-article .article .subsection h5 {
  font-family: serif;
  font-weight: 700;
  margin-bottom: 20px;
  font-size: 20px;
  line-height: 22px;
}
.wf-active .single-article .article .subsection h5 {
  font-family: "Playfair Display", serif;
}
.single-article .article .subsection .text {
  margin-bottom: 30px;
}
.single-article .article .contacts {
  margin-bottom: 20px;
}
.single-article .article .contacts .title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  margin-bottom: 5px;
}
.single-article .article .contacts .contact {
  margin-bottom: 10px;
}
.single-article .press-release .press-inner-wrapper {
  padding-top: 20px;
}
.single-article .press-release .sidebar-heading {
  font-size: 16px;
  line-height: 21px;
  font-weight: 600;
  margin-bottom: 20px;
}
.single-article .press-release .sidebar-article {
  margin-bottom: 30px;
}
.single-article .press-release .sidebar-article:last-child {
  margin-bottom: 0;
}
.single-article .press-release .sidebar-article .sidebar-date {
  color: #838383;
}
.single-article .press-release .sidebar-article .link-wrapper .external-link {
  font-weight: 600;
  color: #FFFFFF;
}
@media print, screen and (min-width: 45em) {
  .single-article {
    margin-top: 60px;
    margin-bottom: 20px;
  }
  .single-article .article {
    margin-bottom: 40px;
  }
  .single-article .article .page-video iframe, .single-article .article video {
    height: 460px;
  }
  .single-article .article .subsection h5 {
    font-size: 24px;
    line-height: 30px;
  }
  .single-article .article .contacts {
    margin-bottom: 40px;
  }
}
@media print, screen and (min-width: 64em) {
  .single-article {
    margin-bottom: 60px;
  }
  .single-article .article-header .title h1 {
    margin-bottom: 12px;
  }
  .single-article .article {
    margin-bottom: 0;
  }
  .single-article .article .page-video iframe, .single-article .article video {
    height: 470px;
  }
  .single-article .article .contacts .contact {
    margin-bottom: 20px;
  }
  .single-article .featured-image-carousel {
    margin-top: 10px;
  }
  .single-article .press-release {
    margin-left: 40px;
  }
  .single-article .press-release .press-inner-wrapper {
    padding-top: 0;
    padding-left: 30px;
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 87.5em) {
  .single-article .article .page-video iframe, .single-article .article video {
    height: 560px;
  }
}

.single-job {
  margin-top: 40px;
  margin-bottom: 40px;
  /* Then style the iframe to fit in the container div with full height and width */
}
.single-job .container {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
.single-job .responsive-iframe {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.single-job .job-container h1 {
  margin-bottom: 10px;
}
.single-job .job-container .job-metadata {
  color: #838383;
  margin-bottom: 30px;
}
.single-job .job-data-container {
  margin-bottom: 40px;
}
.single-job .job-data-container .title {
  font-weight: 600;
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 20px;
}
.single-job .job-data-container .text {
  margin-bottom: 40px;
}
.single-job .job-data-container .text.qualifications {
  margin-bottom: 0;
}
.single-job .job-data-container .text.qualifications ul {
  margin-bottom: 40px;
}
.single-job .job-data-container .text ul {
  line-height: 20px;
}
.single-job .job-application-container .contact-form .upload-label {
  color: #838383;
  margin-bottom: 20px;
  margin-top: -20px;
  font-size: 16px;
  line-height: 24px;
}
.single-job .job-application-container .contact-form .add-files {
  display: none;
  position: absolute;
  bottom: 40px;
  right: 25px;
}
.single-job .job-application-container .contact-form .codedropz-upload-handler {
  border: 1px solid #FFFFFF;
  border-radius: 0;
  margin-bottom: 20px;
}
.single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container {
  padding: 80px 20px;
}
.single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container h3 {
  color: #8eaa96;
  font-size: 60px;
  line-height: 60px;
  margin: 0 0 10px;
}
.single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container span {
  text-transform: uppercase;
  font-weight: 600;
}
.single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container .codedropz-btn-wrap {
  display: none;
}
.single-job .job-application-container .contact-form span.has-error-msg {
  position: absolute;
  top: 280px;
  left: 20px;
  width: 80vw;
}
.single-job .job-application-container .contact-form .dnd-upload-status {
  margin-bottom: 20px;
  position: absolute;
  top: 40px;
  left: 20px;
  width: 80vw;
}
.single-job .job-application-container .contact-form .dnd-upload-status:nth-child(4) {
  top: 130px;
}
.single-job .job-application-container .contact-form .dnd-upload-status:nth-child(5) {
  top: 220px;
}
.single-job .job-application-container .contact-form .dnd-upload-status:nth-child(6) {
  top: 280px;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details {
  padding-left: 0;
  border-bottom: 2px solid #373737;
  padding-bottom: 10px;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .name {
  color: #FFFFFF;
  margin-bottom: 5px;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .name em {
  color: #838383;
  display: block;
  font-style: normal;
  margin-top: 10px;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .dnd-icon-remove:before {
  content: "x";
  color: #8eaa96;
  font-size: 25px;
  font-family: "Work Sans", sans-serif;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .dnd-progress-bar {
  border-radius: 0;
  height: 5px;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .dnd-progress-bar span {
  background-color: #FFFFFF;
}
.single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-image {
  display: none;
}
.single-job .job-application-container .contact-form input[type=submit] {
  padding: 16px 45px;
}
@media print, screen and (min-width: 45em) {
  .single-job {
    margin-top: 60px;
  }
  .single-job .job-application-container .contact-form .add-files {
    bottom: 80px;
  }
  .single-job .job-application-container .contact-form span.has-error-msg {
    position: absolute;
    top: 260px;
    left: 20px;
    width: 520px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status:nth-child(4) {
    top: 110px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status:nth-child(5) {
    top: 180px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status:nth-child(6) {
    top: 260px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details {
    padding-bottom: 15px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status .dnd-upload-details .name em {
    font-weight: normal;
    padding-left: 200px;
    display: inline-block;
  }
  .single-job .job-application-container .contact-form .codedropz-upload-handler {
    margin-bottom: 60px;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status {
    width: 650px;
  }
}
@media print, screen and (min-width: 64em) {
  .single-job {
    margin-top: 60px;
  }
  .single-job .job-application-container .contact-form span.has-error-msg {
    top: 280px;
  }
  .single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container span {
    display: none;
  }
  .single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container .codedropz-btn-wrap {
    display: inherit;
  }
  .single-job .job-application-container .contact-form .codedropz-upload-handler .codedropz-upload-container .codedropz-btn-wrap a {
    color: #FFFFFF;
    font-weight: 600;
  }
  .single-job .job-application-container .contact-form .dnd-upload-status {
    width: 600px;
  }
}
@media print, screen and (min-width: 64em) {
  .single-job .job-application-container .contact-form .upload-label {
    margin-top: 0;
  }
}
@media screen and (min-width: 87.5em) {
  .single-job .job-container .job-metadata {
    margin-bottom: 40px;
  }
  .single-job .job-data-container {
    margin-bottom: 60px;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3V0dGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19ncmlkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NlbGwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS1pY29uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2ZsZXguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fdHJhbnNpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2tleWZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc2xpZGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19mYWRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL196b29tLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fc3Bpbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJhcHAuc2NzcyIsImdsb2JhbC9fYWNjZXNzaWJpbGl0eS5zY3NzIiwiZ2xvYmFsL193cC1hZG1pbi5zY3NzIiwiZ2xvYmFsL193cC1vdmVycmlkZXMuc2NzcyIsImdsb2JhbC9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3Byb3RvdHlwZS9fcm90YXRlLnNjc3MiLCJtb2R1bGVzL19uYXZpZ2F0aW9uLnNjc3MiLCJtb2R1bGVzL19jb250ZW50LnNjc3MiLCJtb2R1bGVzL19mb290ZXIuc2NzcyIsIm1vZHVsZXMvX2VkaXRvci1zdHlsZS5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2ZvbnRzLnNjc3MiLCJjb21wb25lbnRzL19saW5rcy5zY3NzIiwiY29tcG9uZW50cy9fYW5pbWF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fc2lkZWJhci5zY3NzIiwiY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fc2xpY2stc2xpZGVyLnNjc3MiLCJjb21wb25lbnRzL19jb250YWN0LWZvcm0uc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmVkLWltYWdlcy1jYXJvdXNlbC5zY3NzIiwiY29tcG9uZW50cy9fbW9zdC1wb3B1bGFyLXBvc3RzLnNjc3MiLCJjb21wb25lbnRzL19zaGFyZS1uZXdzLnNjc3MiLCJjb21wb25lbnRzL19jdXN0b20tdXRpbGl0aWVzLnNjc3MiLCJjb21wb25lbnRzL19mbGV4aWJsZS1jb250ZW50LnNjc3MiLCJ0ZW1wbGF0ZXMvX2Zyb250LnNjc3MiLCJ0ZW1wbGF0ZXMvcG9ydGZvbGlvLnNjc3MiLCJ0ZW1wbGF0ZXMvX2pvaW4tcGVnLnNjc3MiLCJ0ZW1wbGF0ZXMvX2Fib3V0LnNjc3MiLCJ0ZW1wbGF0ZXMvX25ld3Muc2NzcyIsInRlbXBsYXRlcy9fY29udGFjdC5zY3NzIiwidGVtcGxhdGVzL19ibG9nLnNjc3MiLCJ0ZW1wbGF0ZXMvX2FyY2hpdmUuc2NzcyIsInRlbXBsYXRlcy9fZ3JpZC1hY2NvcmRpb24uc2NzcyIsInRlbXBsYXRlcy9fc2luZ2xlLnNjc3MiLCJ0ZW1wbGF0ZXMvc2luZ2xlLXBlZy1wcm9qZWN0LnNjc3MiLCJ0ZW1wbGF0ZXMvX3NpbmdsZS1hcnRpY2xlcy5zY3NzIiwidGVtcGxhdGVzL19zaW5nbGUtcGVnLWpvYnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7O0VBQUE7QUNzS007RUN6SEo7SUFDRSxXQUFBO0lBQ0EsVUFBQTtJQUNBLGNBQUE7RUhwQ0Y7QUFDRjtBSVpFLDJFQUFBO0FBUUE7RUFDRSxpQkFBQTtFQUNBLDhCQUFBO0FKT0o7O0FJQ0U7RUFDRSxTQUFBO0FKRUo7O0FJSUU7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QUpESjs7QUlVRTtFQUNFLCtCQUFBO1VBQUEsdUJBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7QUpQSjs7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QVhnVFY7O0FRNVNNO0VHSEYscUJBRE07QVhvVFY7O0FRaFRNO0VHSEYscUJBRE07QVh3VFY7O0FRcFRNO0VHSEYsV0FETTtBWDRUVjs7QUUvT007RU05RkE7SUdqQkYsbUJBQUE7SUFBQSxxQkFBQTtRQUFBLGlCQUFBO1lBQUEsYUFBQTtJQTJCQSxXQUFBO0VYeVVGO0VRN1VFO0lHcEJBLG1CQUFBO0lBQUEsc0JBQUE7UUFBQSxrQkFBQTtZQUFBLGNBQUE7RVhvV0Y7RVExVUk7SUdFRixXQUFBO0VYMlVGO0VRcFVJO0lHSEYsb0JBRE07RVgyVVI7RVF2VUk7SUdIRixxQkFETTtFWDhVUjtFUTFVSTtJR0hGLFVBRE07RVhpVlI7RVE3VUk7SUdIRixxQkFETTtFWG9WUjtFUWhWSTtJR0hGLHFCQURNO0VYdVZSO0VRblZJO0lHSEYsVUFETTtFWDBWUjtFUXRWSTtJR0hGLHFCQURNO0VYNlZSO0VRelZJO0lHSEYscUJBRE07RVhnV1I7RVE1Vkk7SUdIRixVQURNO0VYbVdSO0VRL1ZJO0lHSEYscUJBRE07RVhzV1I7RVFsV0k7SUdIRixxQkFETTtFWHlXUjtFUXJXSTtJR0hGLFdBRE07RVg0V1I7QUFDRjtBRWhTTTtFTTlGQTtJR2pCRixtQkFBQTtJQUFBLHFCQUFBO1FBQUEsaUJBQUE7WUFBQSxhQUFBO0lBMkJBLFdBQUE7RVh5WEY7RVE3WEU7SUdwQkEsbUJBQUE7SUFBQSxzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtFWG9aRjtFUTFYSTtJR0VGLFdBQUE7RVgyWEY7RVFwWEk7SUdIRixvQkFETTtFWDJYUjtFUXZYSTtJR0hGLHFCQURNO0VYOFhSO0VRMVhJO0lHSEYsVUFETTtFWGlZUjtFUTdYSTtJR0hGLHFCQURNO0VYb1lSO0VRaFlJO0lHSEYscUJBRE07RVh1WVI7RVFuWUk7SUdIRixVQURNO0VYMFlSO0VRdFlJO0lHSEYscUJBRE07RVg2WVI7RVF6WUk7SUdIRixxQkFETTtFWGdaUjtFUTVZSTtJR0hGLFVBRE07RVhtWlI7RVEvWUk7SUdIRixxQkFETTtFWHNaUjtFUWxaSTtJR0hGLHFCQURNO0VYeVpSO0VRclpJO0lHSEYsV0FETTtFWDRaUjtBQUNGO0FFM1VNO0VNbkdBO0lHakJGLG1CQUFBO0lBQUEscUJBQUE7UUFBQSxpQkFBQTtZQUFBLGFBQUE7SUEyQkEsV0FBQTtFWHlhRjtFUTdhRTtJR3BCQSxtQkFBQTtJQUFBLHNCQUFBO1FBQUEsa0JBQUE7WUFBQSxjQUFBO0VYb2NGO0VRMWFJO0lHRUYsV0FBQTtFWDJhRjtFUXBhSTtJR0hGLG9CQURNO0VYMmFSO0VRdmFJO0lHSEYscUJBRE07RVg4YVI7RVExYUk7SUdIRixVQURNO0VYaWJSO0VRN2FJO0lHSEYscUJBRE07RVhvYlI7RVFoYkk7SUdIRixxQkFETTtFWHViUjtFUW5iSTtJR0hGLFVBRE07RVgwYlI7RVF0Ykk7SUdIRixxQkFETTtFWDZiUjtFUXpiSTtJR0hGLHFCQURNO0VYZ2NSO0VRNWJJO0lHSEYsVUFETTtFWG1jUjtFUS9iSTtJR0hGLHFCQURNO0VYc2NSO0VRbGNJO0lHSEYscUJBRE07RVh5Y1I7RVFyY0k7SUdIRixXQURNO0VYNGNSO0FBQ0Y7QVFqY0U7RUFDRSxXQUFBO0FSbWNKOztBUS9iRTtFQUNFLFlBQUE7QVJrY0o7O0FRcGFFO0VDekdNLHVCQUFBO0VBQUEsd0JBQUE7QVRraEJSO0FFNVlNO0VNN0JKO0lDekdNLHVCQUFBO0lBQUEsd0JBQUE7RVR1aEJOO0FBQ0Y7QVEzYUk7RUc5REEsNEJBRE07RUZyQ0osc0JBQUE7RUFBQSx1QkFBQTtBVG9oQk47QUV2Wk07RU1sQkU7SUdyRUosNEJBRE07SUZyQ0osc0JBQUE7SUFBQSx1QkFBQTtFVDBoQko7QUFDRjtBUW5kRTtFRy9CRSxXQUFBO0FYcWZKO0FRbGRFO0VHL0JFLFdBQUE7QVhvZko7QVE3Y0k7RUduQ0EscUNBRE07QVhvZlY7QVFoZEk7RUduQ0Esc0NBRE07QVh1ZlY7QVFuZEk7RUduQ0EsMkJBRE07QVgwZlY7QVF0ZEk7RUduQ0Esc0NBRE07QVg2ZlY7QVF6ZEk7RUduQ0Esc0NBRE07QVhnZ0JWO0FRNWRJO0VHbkNBLDJCQURNO0FYbWdCVjtBUS9kSTtFR25DQSxzQ0FETTtBWHNnQlY7QVFsZUk7RUduQ0Esc0NBRE07QVh5Z0JWO0FRcmVJO0VHbkNBLDJCQURNO0FYNGdCVjtBUXhlSTtFR25DQSxzQ0FETTtBWCtnQlY7QVEzZUk7RUduQ0Esc0NBRE07QVhraEJWO0FROWVJO0VHbkNBLDRCQURNO0FYcWhCVjtBRXhjTTtFTXJESjtJRy9CRSxXQUFBO0VYZ2lCRjtFUTdmQTtJRy9CRSxXQUFBO0VYK2hCRjtFUXhmRTtJR25DQSxxQ0FETTtFWCtoQlI7RVEzZkU7SUduQ0Esc0NBRE07RVhraUJSO0VROWZFO0lHbkNBLDJCQURNO0VYcWlCUjtFUWpnQkU7SUduQ0Esc0NBRE07RVh3aUJSO0VRcGdCRTtJR25DQSxzQ0FETTtFWDJpQlI7RVF2Z0JFO0lHbkNBLDJCQURNO0VYOGlCUjtFUTFnQkU7SUduQ0Esc0NBRE07RVhpakJSO0VRN2dCRTtJR25DQSxzQ0FETTtFWG9qQlI7RVFoaEJFO0lHbkNBLDJCQURNO0VYdWpCUjtFUW5oQkU7SUduQ0Esc0NBRE07RVgwakJSO0VRdGhCRTtJR25DQSxzQ0FETTtFWDZqQlI7RVF6aEJFO0lHbkNBLDRCQURNO0VYZ2tCUjtFUXhpQkE7SUcvQkUsV0FBQTtFWDBrQkY7RVF2aUJBO0lHL0JFLFdBQUE7RVh5a0JGO0VRbGlCRTtJR25DQSxxQ0FETTtFWHlrQlI7RVFyaUJFO0lHbkNBLHNDQURNO0VYNGtCUjtFUXhpQkU7SUduQ0EsMkJBRE07RVgra0JSO0VRM2lCRTtJR25DQSxzQ0FETTtFWGtsQlI7RVE5aUJFO0lHbkNBLHNDQURNO0VYcWxCUjtFUWpqQkU7SUduQ0EsMkJBRE07RVh3bEJSO0VRcGpCRTtJR25DQSxzQ0FETTtFWDJsQlI7RVF2akJFO0lHbkNBLHNDQURNO0VYOGxCUjtFUTFqQkU7SUduQ0EsMkJBRE07RVhpbUJSO0VRN2pCRTtJR25DQSxzQ0FETTtFWG9tQlI7RVFoa0JFO0lHbkNBLHNDQURNO0VYdW1CUjtFUW5rQkU7SUduQ0EsNEJBRE07RVgwbUJSO0FBQ0Y7QUU5aEJNO0VNckRKO0lHL0JFLFdBQUE7RVhzbkJGO0VRbmxCQTtJRy9CRSxXQUFBO0VYcW5CRjtFUTlrQkU7SUduQ0EscUNBRE07RVhxbkJSO0VRamxCRTtJR25DQSxzQ0FETTtFWHduQlI7RVFwbEJFO0lHbkNBLDJCQURNO0VYMm5CUjtFUXZsQkU7SUduQ0Esc0NBRE07RVg4bkJSO0VRMWxCRTtJR25DQSxzQ0FETTtFWGlvQlI7RVE3bEJFO0lHbkNBLDJCQURNO0VYb29CUjtFUWhtQkU7SUduQ0Esc0NBRE07RVh1b0JSO0VRbm1CRTtJR25DQSxzQ0FETTtFWDBvQlI7RVF0bUJFO0lHbkNBLDJCQURNO0VYNm9CUjtFUXptQkU7SUduQ0Esc0NBRE07RVhncEJSO0VRNW1CRTtJR25DQSxzQ0FETTtFWG1wQlI7RVEvbUJFO0lHbkNBLDRCQURNO0VYc3BCUjtBQUNGO0FFcmtCTTtFTTFESjtJRy9CRSxXQUFBO0VYa3FCRjtFUS9uQkE7SUcvQkUsV0FBQTtFWGlxQkY7RVExbkJFO0lHbkNBLHFDQURNO0VYaXFCUjtFUTduQkU7SUduQ0Esc0NBRE07RVhvcUJSO0VRaG9CRTtJR25DQSwyQkFETTtFWHVxQlI7RVFub0JFO0lHbkNBLHNDQURNO0VYMHFCUjtFUXRvQkU7SUduQ0Esc0NBRE07RVg2cUJSO0VRem9CRTtJR25DQSwyQkFETTtFWGdyQlI7RVE1b0JFO0lHbkNBLHNDQURNO0VYbXJCUjtFUS9vQkU7SUduQ0Esc0NBRE07RVhzckJSO0VRbHBCRTtJR25DQSwyQkFETTtFWHlyQlI7RVFycEJFO0lHbkNBLHNDQURNO0VYNHJCUjtFUXhwQkU7SUduQ0Esc0NBRE07RVgrckJSO0VRM3BCRTtJR25DQSw0QkFETTtFWGtzQlI7QUFDRjs7QVE1bUJJO0VDaEpJLHdCQUFBO0VBQUEsdUJBQUE7QVRpd0JSO0FFM25CTTtFTVVGO0lDaEpJLHdCQUFBO0lBQUEsdUJBQUE7RVRzd0JOO0FBQ0Y7QVFqbkJJO0VDdEpJLHdCQUFBO0VBQUEsdUJBQUE7QVQyd0JSO0FFcm9CTTtFTWdCRjtJQ3RKSSx3QkFBQTtJQUFBLHVCQUFBO0VUZ3hCTjtBQUNGO0FRdG5CSTtFQzNKSSx3QkFBQTtFQUFBLHVCQUFBO0FUcXhCUjtBRS9vQk07RU1xQkY7SUMzSkksd0JBQUE7SUFBQSx1QkFBQTtFVDB4Qk47QUFDRjs7QVk3eEJFO0VENERFLFdBRE07QVhzdUJWOztBWWp5QkU7RUQ0REUsVUFETTtBWDB1QlY7O0FZcnlCRTtFRDRERSxxQkFETTtBWDh1QlY7O0FZenlCRTtFRDRERSxVQURNO0FYa3ZCVjs7QVk3eUJFO0VENERFLFVBRE07QVhzdkJWOztBWWp6QkU7RUQ0REUscUJBRE07QVgwdkJWOztBWXJ6QkU7RUQ0REUscUJBRE07QVg4dkJWOztBWXp6QkU7RUQ0REUsWUFETTtBWGt3QlY7O0FFcnJCTTtFVXhJSjtJRDRERSxXQURNO0VYdXdCUjtFWWwwQkE7SUQ0REUsVUFETTtFWDB3QlI7RVlyMEJBO0lENERFLHFCQURNO0VYNndCUjtFWXgwQkE7SUQ0REUsVUFETTtFWGd4QlI7RVkzMEJBO0lENERFLFVBRE07RVhteEJSO0VZOTBCQTtJRDRERSxxQkFETTtFWHN4QlI7RVlqMUJBO0lENERFLHFCQURNO0VYeXhCUjtFWXAxQkE7SUQ0REUsWUFETTtFWDR4QlI7QUFDRjtBRWh0Qk07RVV4SUo7SUQ0REUsV0FETTtFWGl5QlI7RVk1MUJBO0lENERFLFVBRE07RVhveUJSO0VZLzFCQTtJRDRERSxxQkFETTtFWHV5QlI7RVlsMkJBO0lENERFLFVBRE07RVgweUJSO0VZcjJCQTtJRDRERSxVQURNO0VYNnlCUjtFWXgyQkE7SUQ0REUscUJBRE07RVhnekJSO0VZMzJCQTtJRDRERSxxQkFETTtFWG16QlI7RVk5MkJBO0lENERFLFlBRE07RVhzekJSO0FBQ0Y7QUVydUJNO0VVN0lKO0lENERFLFdBRE07RVgyekJSO0VZdDNCQTtJRDRERSxVQURNO0VYOHpCUjtFWXozQkE7SUQ0REUscUJBRE07RVhpMEJSO0VZNTNCQTtJRDRERSxVQURNO0VYbzBCUjtFWS8zQkE7SUQ0REUsVUFETTtFWHUwQlI7RVlsNEJBO0lENERFLHFCQURNO0VYMDBCUjtFWXI0QkE7SUQ0REUscUJBRE07RVg2MEJSO0VZeDRCQTtJRDRERSxZQURNO0VYZzFCUjtBQUNGO0FZNTRCRTtFRDRERSw0QkFETTtBWG8xQlY7O0FZLzRCRTtFRDRERSwyQkFETTtBWHcxQlY7O0FZbjVCRTtFRDRERSxzQ0FETTtBWDQxQlY7O0FZdjVCRTtFRDRERSwyQkFETTtBWGcyQlY7O0FZMzVCRTtFRDRERSwyQkFETTtBWG8yQlY7O0FZLzVCRTtFRDRERSxzQ0FETTtBWHcyQlY7O0FZbjZCRTtFRDRERSxzQ0FETTtBWDQyQlY7O0FZdjZCRTtFRDRERSw2QkFETTtBWGczQlY7O0FFbnlCTTtFVXhJSjtJRDRERSw0QkFETTtFWHEzQlI7RVloN0JBO0lENERFLDJCQURNO0VYdzNCUjtFWW43QkE7SUQ0REUsc0NBRE07RVgyM0JSO0VZdDdCQTtJRDRERSwyQkFETTtFWDgzQlI7RVl6N0JBO0lENERFLDJCQURNO0VYaTRCUjtFWTU3QkE7SUQ0REUsc0NBRE07RVhvNEJSO0VZLzdCQTtJRDRERSxzQ0FETTtFWHU0QlI7RVlsOEJBO0lENERFLDZCQURNO0VYMDRCUjtFWXI4QkE7SUQ0REUsNEJBRE07RVg2NEJSO0VZeDhCQTtJRDRERSwyQkFETTtFWGc1QlI7RVkzOEJBO0lENERFLHNDQURNO0VYbTVCUjtFWTk4QkE7SUQ0REUsMkJBRE07RVhzNUJSO0VZajlCQTtJRDRERSwyQkFETTtFWHk1QlI7RVlwOUJBO0lENERFLHNDQURNO0VYNDVCUjtFWXY5QkE7SUQ0REUsc0NBRE07RVgrNUJSO0VZMTlCQTtJRDRERSw2QkFETTtFWGs2QlI7QUFDRjtBRXQxQk07RVV4SUo7SUQ0REUsNEJBRE07RVh1NkJSO0VZbCtCQTtJRDRERSwyQkFETTtFWDA2QlI7RVlyK0JBO0lENERFLHNDQURNO0VYNjZCUjtFWXgrQkE7SUQ0REUsMkJBRE07RVhnN0JSO0VZMytCQTtJRDRERSwyQkFETTtFWG03QlI7RVk5K0JBO0lENERFLHNDQURNO0VYczdCUjtFWWovQkE7SUQ0REUsc0NBRE07RVh5N0JSO0VZcC9CQTtJRDRERSw2QkFETTtFWDQ3QlI7QUFDRjtBRTMyQk07RVU3SUo7SUQ0REUsNEJBRE07RVhpOEJSO0VZNS9CQTtJRDRERSwyQkFETTtFWG84QlI7RVkvL0JBO0lENERFLHNDQURNO0VYdThCUjtFWWxnQ0E7SUQ0REUsMkJBRE07RVgwOEJSO0VZcmdDQTtJRDRERSwyQkFETTtFWDY4QlI7RVl4Z0NBO0lENERFLHNDQURNO0VYZzlCUjtFWTNnQ0E7SUQ0REUsc0NBRE07RVhtOUJSO0VZOWdDQTtJRDRERSw2QkFETTtFWHM5QlI7QUFDRjtBUXYwQk07RUtoTkUsZUFBQTtFQUFBLGNBQUE7QWIyaENSO0FheGhDTTtFQUVJLGVBQUE7RUFBQSxjQUFBO0FiMGhDVjtBYXBnQ1k7RUZzQ1Isb0JBRE07QVhrK0JWO0FhdmdDWTtFRnNDUixxQkFETTtBWHErQlY7QWExZ0NZO0VGc0NSLFVBRE07QVh3K0JWO0FhN2dDWTtFRnNDUixxQkFETTtBWDIrQlY7QWFoaENZO0VGc0NSLHFCQURNO0FYOCtCVjtBYW5oQ1k7RUZzQ1IsVUFETTtBWGkvQlY7QWF0aENZO0VGc0NSLHFCQURNO0FYby9CVjtBYXpoQ1k7RUZzQ1IscUJBRE07QVh1L0JWO0FhNWhDWTtFRnNDUixVQURNO0FYMC9CVjtBYS9oQ1k7RUZzQ1IscUJBRE07QVg2L0JWO0FhbGlDWTtFRnNDUixxQkFETTtBWGdnQ1Y7QWFyaUNZO0VGc0NSLFdBRE07QVhtZ0NWO0FFdDdCTTtFV2xITTtJRnNDUixvQkFETTtFWHVnQ1I7RWE1aUNVO0lGc0NSLHFCQURNO0VYMGdDUjtFYS9pQ1U7SUZzQ1IsVUFETTtFWDZnQ1I7RWFsakNVO0lGc0NSLHFCQURNO0VYZ2hDUjtFYXJqQ1U7SUZzQ1IscUJBRE07RVhtaENSO0VheGpDVTtJRnNDUixVQURNO0VYc2hDUjtFYTNqQ1U7SUZzQ1IscUJBRE07RVh5aENSO0VhOWpDVTtJRnNDUixxQkFETTtFWDRoQ1I7RWFqa0NVO0lGc0NSLFVBRE07RVgraENSO0VhcGtDVTtJRnNDUixxQkFETTtFWGtpQ1I7RWF2a0NVO0lGc0NSLHFCQURNO0VYcWlDUjtFYTFrQ1U7SUZzQ1IsV0FETTtFWHdpQ1I7QUFDRjtBRTU5Qk07RVdsSE07SUZzQ1Isb0JBRE07RVg2aUNSO0VhbGxDVTtJRnNDUixxQkFETTtFWGdqQ1I7RWFybENVO0lGc0NSLFVBRE07RVhtakNSO0VheGxDVTtJRnNDUixxQkFETTtFWHNqQ1I7RWEzbENVO0lGc0NSLHFCQURNO0VYeWpDUjtFYTlsQ1U7SUZzQ1IsVUFETTtFWDRqQ1I7RWFqbUNVO0lGc0NSLHFCQURNO0VYK2pDUjtFYXBtQ1U7SUZzQ1IscUJBRE07RVhra0NSO0Vhdm1DVTtJRnNDUixVQURNO0VYcWtDUjtFYTFtQ1U7SUZzQ1IscUJBRE07RVh3a0NSO0VhN21DVTtJRnNDUixxQkFETTtFWDJrQ1I7RWFobkNVO0lGc0NSLFdBRE07RVg4a0NSO0FBQ0Y7QUU3L0JNO0VXdkhNO0lGc0NSLG9CQURNO0VYbWxDUjtFYXhuQ1U7SUZzQ1IscUJBRE07RVhzbENSO0VhM25DVTtJRnNDUixVQURNO0VYeWxDUjtFYTluQ1U7SUZzQ1IscUJBRE07RVg0bENSO0Vham9DVTtJRnNDUixxQkFETTtFWCtsQ1I7RWFwb0NVO0lGc0NSLFVBRE07RVhrbUNSO0Vhdm9DVTtJRnNDUixxQkFETTtFWHFtQ1I7RWExb0NVO0lGc0NSLHFCQURNO0VYd21DUjtFYTdvQ1U7SUZzQ1IsVUFETTtFWDJtQ1I7RWFocENVO0lGc0NSLHFCQURNO0VYOG1DUjtFYW5wQ1U7SUZzQ1IscUJBRE07RVhpbkNSO0VhdHBDVTtJRnNDUixXQURNO0VYb25DUjtBQUNGOztBUS85Qk07RUsvS0UsZUFBQTtFQUFBLGNBQUE7QWJtcENSO0FhaHBDTTtFQUVJLGdCQUFBO0VBQUEsZUFBQTtBYmtwQ1Y7O0FFampDTTtFTW1FQTtJS2hORSxlQUFBO0lBQUEsY0FBQTtFYm9zQ047RWFqc0NJO0lBRUksZUFBQTtJQUFBLGNBQUE7RWJtc0NSO0FBQ0Y7QUU1akNNO0VXM0hNO0lGK0NSLG9CQURNO0VYNm9DUjtFYTNyQ1U7SUYrQ1IscUJBRE07RVhncENSO0VhOXJDVTtJRitDUixVQURNO0VYbXBDUjtFYWpzQ1U7SUYrQ1IscUJBRE07RVhzcENSO0VhcHNDVTtJRitDUixxQkFETTtFWHlwQ1I7RWF2c0NVO0lGK0NSLFVBRE07RVg0cENSO0VhMXNDVTtJRitDUixxQkFETTtFWCtwQ1I7RWE3c0NVO0lGK0NSLHFCQURNO0VYa3FDUjtFYWh0Q1U7SUYrQ1IsVUFETTtFWHFxQ1I7RWFudENVO0lGK0NSLHFCQURNO0VYd3FDUjtFYXR0Q1U7SUYrQ1IscUJBRE07RVgycUNSO0VhenRDVTtJRitDUixXQURNO0VYOHFDUjtBQUNGO0FFbG1DTTtFV2xITTtJRnNDUixvQkFETTtFWG1yQ1I7RWF4dENVO0lGc0NSLHFCQURNO0VYc3JDUjtFYTN0Q1U7SUZzQ1IsVUFETTtFWHlyQ1I7RWE5dENVO0lGc0NSLHFCQURNO0VYNHJDUjtFYWp1Q1U7SUZzQ1IscUJBRE07RVgrckNSO0VhcHVDVTtJRnNDUixVQURNO0VYa3NDUjtFYXZ1Q1U7SUZzQ1IscUJBRE07RVhxc0NSO0VhMXVDVTtJRnNDUixxQkFETTtFWHdzQ1I7RWE3dUNVO0lGc0NSLFVBRE07RVgyc0NSO0VhaHZDVTtJRnNDUixxQkFETTtFWDhzQ1I7RWFudkNVO0lGc0NSLHFCQURNO0VYaXRDUjtFYXR2Q1U7SUZzQ1IsV0FETTtFWG90Q1I7QUFDRjtBRXhvQ007RVdsSE07SUZzQ1Isb0JBRE07RVh5dENSO0VhOXZDVTtJRnNDUixxQkFETTtFWDR0Q1I7RWFqd0NVO0lGc0NSLFVBRE07RVgrdENSO0VhcHdDVTtJRnNDUixxQkFETTtFWGt1Q1I7RWF2d0NVO0lGc0NSLHFCQURNO0VYcXVDUjtFYTF3Q1U7SUZzQ1IsVUFETTtFWHd1Q1I7RWE3d0NVO0lGc0NSLHFCQURNO0VYMnVDUjtFYWh4Q1U7SUZzQ1IscUJBRE07RVg4dUNSO0VhbnhDVTtJRnNDUixVQURNO0VYaXZDUjtFYXR4Q1U7SUZzQ1IscUJBRE07RVhvdkNSO0VhenhDVTtJRnNDUixxQkFETTtFWHV2Q1I7RWE1eENVO0lGc0NSLFdBRE07RVgwdkNSO0FBQ0Y7QUV6cUNNO0VXdkhNO0lGc0NSLG9CQURNO0VYK3ZDUjtFYXB5Q1U7SUZzQ1IscUJBRE07RVhrd0NSO0VhdnlDVTtJRnNDUixVQURNO0VYcXdDUjtFYTF5Q1U7SUZzQ1IscUJBRE07RVh3d0NSO0VhN3lDVTtJRnNDUixxQkFETTtFWDJ3Q1I7RWFoekNVO0lGc0NSLFVBRE07RVg4d0NSO0VhbnpDVTtJRnNDUixxQkFETTtFWGl4Q1I7RWF0ekNVO0lGc0NSLHFCQURNO0VYb3hDUjtFYXp6Q1U7SUZzQ1IsVUFETTtFWHV4Q1I7RWE1ekNVO0lGc0NSLHFCQURNO0VYMHhDUjtFYS96Q1U7SUZzQ1IscUJBRE07RVg2eENSO0VhbDBDVTtJRnNDUixXQURNO0VYZ3lDUjtBQUNGOztBRXB0Q007RU15RUE7SUsvS0UsZUFBQTtJQUFBLGNBQUE7RWJnMENOO0VhN3pDSTtJQUVJLGdCQUFBO0lBQUEsZUFBQTtFYit6Q1I7QUFDRjs7QUUvdENNO0VNbUVBO0lLaE5FLGVBQUE7SUFBQSxjQUFBO0ViazNDTjtFYS8yQ0k7SUFFSSxlQUFBO0lBQUEsY0FBQTtFYmkzQ1I7QUFDRjtBRTF1Q007RVczSE07SUYrQ1Isb0JBRE07RVgyekNSO0VhejJDVTtJRitDUixxQkFETTtFWDh6Q1I7RWE1MkNVO0lGK0NSLFVBRE07RVhpMENSO0VhLzJDVTtJRitDUixxQkFETTtFWG8wQ1I7RWFsM0NVO0lGK0NSLHFCQURNO0VYdTBDUjtFYXIzQ1U7SUYrQ1IsVUFETTtFWDAwQ1I7RWF4M0NVO0lGK0NSLHFCQURNO0VYNjBDUjtFYTMzQ1U7SUYrQ1IscUJBRE07RVhnMUNSO0VhOTNDVTtJRitDUixVQURNO0VYbTFDUjtFYWo0Q1U7SUYrQ1IscUJBRE07RVhzMUNSO0VhcDRDVTtJRitDUixxQkFETTtFWHkxQ1I7RWF2NENVO0lGK0NSLFdBRE07RVg0MUNSO0FBQ0Y7QUVoeENNO0VXM0hNO0lGK0NSLG9CQURNO0VYaTJDUjtFYS80Q1U7SUYrQ1IscUJBRE07RVhvMkNSO0VhbDVDVTtJRitDUixVQURNO0VYdTJDUjtFYXI1Q1U7SUYrQ1IscUJBRE07RVgwMkNSO0VheDVDVTtJRitDUixxQkFETTtFWDYyQ1I7RWEzNUNVO0lGK0NSLFVBRE07RVhnM0NSO0VhOTVDVTtJRitDUixxQkFETTtFWG0zQ1I7RWFqNkNVO0lGK0NSLHFCQURNO0VYczNDUjtFYXA2Q1U7SUYrQ1IsVUFETTtFWHkzQ1I7RWF2NkNVO0lGK0NSLHFCQURNO0VYNDNDUjtFYTE2Q1U7SUYrQ1IscUJBRE07RVgrM0NSO0VhNzZDVTtJRitDUixXQURNO0VYazRDUjtBQUNGO0FFdHpDTTtFV2xITTtJRnNDUixvQkFETTtFWHU0Q1I7RWE1NkNVO0lGc0NSLHFCQURNO0VYMDRDUjtFYS82Q1U7SUZzQ1IsVUFETTtFWDY0Q1I7RWFsN0NVO0lGc0NSLHFCQURNO0VYZzVDUjtFYXI3Q1U7SUZzQ1IscUJBRE07RVhtNUNSO0VheDdDVTtJRnNDUixVQURNO0VYczVDUjtFYTM3Q1U7SUZzQ1IscUJBRE07RVh5NUNSO0VhOTdDVTtJRnNDUixxQkFETTtFWDQ1Q1I7RWFqOENVO0lGc0NSLFVBRE07RVgrNUNSO0VhcDhDVTtJRnNDUixxQkFETTtFWGs2Q1I7RWF2OENVO0lGc0NSLHFCQURNO0VYcTZDUjtFYTE4Q1U7SUZzQ1IsV0FETTtFWHc2Q1I7QUFDRjtBRXYxQ007RVd2SE07SUZzQ1Isb0JBRE07RVg2NkNSO0VhbDlDVTtJRnNDUixxQkFETTtFWGc3Q1I7RWFyOUNVO0lGc0NSLFVBRE07RVhtN0NSO0VheDlDVTtJRnNDUixxQkFETTtFWHM3Q1I7RWEzOUNVO0lGc0NSLHFCQURNO0VYeTdDUjtFYTk5Q1U7SUZzQ1IsVUFETTtFWDQ3Q1I7RWFqK0NVO0lGc0NSLHFCQURNO0VYKzdDUjtFYXArQ1U7SUZzQ1IscUJBRE07RVhrOENSO0VhditDVTtJRnNDUixVQURNO0VYcThDUjtFYTErQ1U7SUZzQ1IscUJBRE07RVh3OENSO0VhNytDVTtJRnNDUixxQkFETTtFWDI4Q1I7RWFoL0NVO0lGc0NSLFdBRE07RVg4OENSO0FBQ0Y7O0FFbDRDTTtFTXlFQTtJSy9LRSxlQUFBO0lBQUEsY0FBQTtFYjgrQ047RWEzK0NJO0lBRUksZ0JBQUE7SUFBQSxlQUFBO0ViNitDUjtBQUNGOztBRXg0Q007RU04REE7SUtoTkUsZUFBQTtJQUFBLGNBQUE7RWJnaUROO0VhN2hESTtJQUVJLGVBQUE7SUFBQSxjQUFBO0ViK2hEUjtBQUNGO0FFbjVDTTtFV2hJTTtJRitDUixvQkFETTtFWHkrQ1I7RWF2aERVO0lGK0NSLHFCQURNO0VYNCtDUjtFYTFoRFU7SUYrQ1IsVUFETTtFWCsrQ1I7RWE3aERVO0lGK0NSLHFCQURNO0VYay9DUjtFYWhpRFU7SUYrQ1IscUJBRE07RVhxL0NSO0VhbmlEVTtJRitDUixVQURNO0VYdy9DUjtFYXRpRFU7SUYrQ1IscUJBRE07RVgyL0NSO0VhemlEVTtJRitDUixxQkFETTtFWDgvQ1I7RWE1aURVO0lGK0NSLFVBRE07RVhpZ0RSO0VhL2lEVTtJRitDUixxQkFETTtFWG9nRFI7RWFsakRVO0lGK0NSLHFCQURNO0VYdWdEUjtFYXJqRFU7SUYrQ1IsV0FETTtFWDBnRFI7QUFDRjtBRXo3Q007RVdoSU07SUYrQ1Isb0JBRE07RVgrZ0RSO0VhN2pEVTtJRitDUixxQkFETTtFWGtoRFI7RWFoa0RVO0lGK0NSLFVBRE07RVhxaERSO0VhbmtEVTtJRitDUixxQkFETTtFWHdoRFI7RWF0a0RVO0lGK0NSLHFCQURNO0VYMmhEUjtFYXprRFU7SUYrQ1IsVUFETTtFWDhoRFI7RWE1a0RVO0lGK0NSLHFCQURNO0VYaWlEUjtFYS9rRFU7SUYrQ1IscUJBRE07RVhvaURSO0VhbGxEVTtJRitDUixVQURNO0VYdWlEUjtFYXJsRFU7SUYrQ1IscUJBRE07RVgwaURSO0VheGxEVTtJRitDUixxQkFETTtFWDZpRFI7RWEzbERVO0lGK0NSLFdBRE07RVhnakRSO0FBQ0Y7QUUvOUNNO0VXaElNO0lGK0NSLG9CQURNO0VYcWpEUjtFYW5tRFU7SUYrQ1IscUJBRE07RVh3akRSO0VhdG1EVTtJRitDUixVQURNO0VYMmpEUjtFYXptRFU7SUYrQ1IscUJBRE07RVg4akRSO0VhNW1EVTtJRitDUixxQkFETTtFWGlrRFI7RWEvbURVO0lGK0NSLFVBRE07RVhva0RSO0VhbG5EVTtJRitDUixxQkFETTtFWHVrRFI7RWFybkRVO0lGK0NSLHFCQURNO0VYMGtEUjtFYXhuRFU7SUYrQ1IsVUFETTtFWDZrRFI7RWEzbkRVO0lGK0NSLHFCQURNO0VYZ2xEUjtFYTluRFU7SUYrQ1IscUJBRE07RVhtbERSO0Vham9EVTtJRitDUixXQURNO0VYc2xEUjtBQUNGO0FFcmdETTtFV3ZITTtJRnNDUixvQkFETTtFWDJsRFI7RWFob0RVO0lGc0NSLHFCQURNO0VYOGxEUjtFYW5vRFU7SUZzQ1IsVUFETTtFWGltRFI7RWF0b0RVO0lGc0NSLHFCQURNO0VYb21EUjtFYXpvRFU7SUZzQ1IscUJBRE07RVh1bURSO0VhNW9EVTtJRnNDUixVQURNO0VYMG1EUjtFYS9vRFU7SUZzQ1IscUJBRE07RVg2bURSO0VhbHBEVTtJRnNDUixxQkFETTtFWGduRFI7RWFycERVO0lGc0NSLFVBRE07RVhtbkRSO0VheHBEVTtJRnNDUixxQkFETTtFWHNuRFI7RWEzcERVO0lGc0NSLHFCQURNO0VYeW5EUjtFYTlwRFU7SUZzQ1IsV0FETTtFWDRuRFI7QUFDRjs7QUUzaURNO0VNb0VBO0lLL0tFLGVBQUE7SUFBQSxjQUFBO0ViNHBETjtFYXpwREk7SUFFSSxnQkFBQTtJQUFBLGVBQUE7RWIycERSO0FBQ0Y7O0FRcCtDTTtFTWhPRixlQUFBO0Fkd3NESjs7QVFwK0NNO0VNcE9GLGlDQUFBO0FkNHNESjs7QVE1K0NNO0VNaE9GLDBCQUFBO0FkZ3RESjs7QVE1K0NNO0VNcE9GLDRDQUFBO0Fkb3RESjs7QVFwL0NNO0VNaE9GLDJCQUFBO0Fkd3RESjs7QVFwL0NNO0VNcE9GLDZDQUFBO0FkNHRESjs7QVE1L0NNO0VNaE9GLGdCQUFBO0FkZ3VESjs7QVE1L0NNO0VNcE9GLGtDQUFBO0Fkb3VESjs7QVFwZ0RNO0VNaE9GLDJCQUFBO0Fkd3VESjs7QVFwZ0RNO0VNcE9GLDZDQUFBO0FkNHVESjs7QVE1Z0RNO0VNaE9GLDJCQUFBO0FkZ3ZESjs7QVE1Z0RNO0VNcE9GLDZDQUFBO0Fkb3ZESjs7QVFwaERNO0VNaE9GLGdCQUFBO0Fkd3ZESjs7QVFwaERNO0VNcE9GLGtDQUFBO0FkNHZESjs7QVE1aERNO0VNaE9GLDJCQUFBO0FkZ3dESjs7QVE1aERNO0VNcE9GLDZDQUFBO0Fkb3dESjs7QVFwaURNO0VNaE9GLDJCQUFBO0Fkd3dESjs7QVFwaURNO0VNcE9GLDZDQUFBO0FkNHdESjs7QVE1aURNO0VNaE9GLGdCQUFBO0FkZ3hESjs7QVE1aURNO0VNcE9GLGtDQUFBO0Fkb3hESjs7QVFwakRNO0VNaE9GLDJCQUFBO0Fkd3hESjs7QVFwakRNO0VNcE9GLDZDQUFBO0FkNHhESjs7QVE1akRNO0VNaE9GLDJCQUFBO0FkZ3lESjs7QVE1akRNO0VNcE9GLDZDQUFBO0Fkb3lESjs7QUUzcERNO0VNdUZBO0lNaE9GLGVBQUE7RWR5eURGO0VRcmtESTtJTXBPRixpQ0FBQTtFZDR5REY7RVE1a0RJO0lNaE9GLDBCQUFBO0VkK3lERjtFUTNrREk7SU1wT0YsNENBQUE7RWRrekRGO0VRbGxESTtJTWhPRiwyQkFBQTtFZHF6REY7RVFqbERJO0lNcE9GLDZDQUFBO0Vkd3pERjtFUXhsREk7SU1oT0YsZ0JBQUE7RWQyekRGO0VRdmxESTtJTXBPRixrQ0FBQTtFZDh6REY7RVE5bERJO0lNaE9GLDJCQUFBO0VkaTBERjtFUTdsREk7SU1wT0YsNkNBQUE7RWRvMERGO0VRcG1ESTtJTWhPRiwyQkFBQTtFZHUwREY7RVFubURJO0lNcE9GLDZDQUFBO0VkMDBERjtFUTFtREk7SU1oT0YsZ0JBQUE7RWQ2MERGO0VRem1ESTtJTXBPRixrQ0FBQTtFZGcxREY7RVFobkRJO0lNaE9GLDJCQUFBO0VkbTFERjtFUS9tREk7SU1wT0YsNkNBQUE7RWRzMURGO0VRdG5ESTtJTWhPRiwyQkFBQTtFZHkxREY7RVFybkRJO0lNcE9GLDZDQUFBO0VkNDFERjtFUTVuREk7SU1oT0YsZ0JBQUE7RWQrMURGO0VRM25ESTtJTXBPRixrQ0FBQTtFZGsyREY7RVFsb0RJO0lNaE9GLDJCQUFBO0VkcTJERjtFUWpvREk7SU1wT0YsNkNBQUE7RWR3MkRGO0VReG9ESTtJTWhPRiwyQkFBQTtFZDIyREY7RVF2b0RJO0lNcE9GLDZDQUFBO0VkODJERjtBQUNGO0FFdHVETTtFTXVGQTtJTWhPRixlQUFBO0VkbTNERjtFUS9vREk7SU1wT0YsaUNBQUE7RWRzM0RGO0VRdHBESTtJTWhPRiwwQkFBQTtFZHkzREY7RVFycERJO0lNcE9GLDRDQUFBO0VkNDNERjtFUTVwREk7SU1oT0YsMkJBQUE7RWQrM0RGO0VRM3BESTtJTXBPRiw2Q0FBQTtFZGs0REY7RVFscURJO0lNaE9GLGdCQUFBO0VkcTRERjtFUWpxREk7SU1wT0Ysa0NBQUE7RWR3NERGO0VReHFESTtJTWhPRiwyQkFBQTtFZDI0REY7RVF2cURJO0lNcE9GLDZDQUFBO0VkODRERjtFUTlxREk7SU1oT0YsMkJBQUE7RWRpNURGO0VRN3FESTtJTXBPRiw2Q0FBQTtFZG81REY7RVFwckRJO0lNaE9GLGdCQUFBO0VkdTVERjtFUW5yREk7SU1wT0Ysa0NBQUE7RWQwNURGO0VRMXJESTtJTWhPRiwyQkFBQTtFZDY1REY7RVF6ckRJO0lNcE9GLDZDQUFBO0VkZzZERjtFUWhzREk7SU1oT0YsMkJBQUE7RWRtNkRGO0VRL3JESTtJTXBPRiw2Q0FBQTtFZHM2REY7RVF0c0RJO0lNaE9GLGdCQUFBO0VkeTZERjtFUXJzREk7SU1wT0Ysa0NBQUE7RWQ0NkRGO0VRNXNESTtJTWhPRiwyQkFBQTtFZCs2REY7RVEzc0RJO0lNcE9GLDZDQUFBO0VkazdERjtFUWx0REk7SU1oT0YsMkJBQUE7RWRxN0RGO0VRanRESTtJTXBPRiw2Q0FBQTtFZHc3REY7QUFDRjtBRTN5RE07RU1rRkE7SU1oT0YsZUFBQTtFZDY3REY7RVF6dERJO0lNcE9GLGlDQUFBO0VkZzhERjtFUWh1REk7SU1oT0YsMEJBQUE7RWRtOERGO0VRL3RESTtJTXBPRiw0Q0FBQTtFZHM4REY7RVF0dURJO0lNaE9GLDJCQUFBO0VkeThERjtFUXJ1REk7SU1wT0YsNkNBQUE7RWQ0OERGO0VRNXVESTtJTWhPRixnQkFBQTtFZCs4REY7RVEzdURJO0lNcE9GLGtDQUFBO0VkazlERjtFUWx2REk7SU1oT0YsMkJBQUE7RWRxOURGO0VRanZESTtJTXBPRiw2Q0FBQTtFZHc5REY7RVF4dkRJO0lNaE9GLDJCQUFBO0VkMjlERjtFUXZ2REk7SU1wT0YsNkNBQUE7RWQ4OURGO0VROXZESTtJTWhPRixnQkFBQTtFZGkrREY7RVE3dkRJO0lNcE9GLGtDQUFBO0VkbytERjtFUXB3REk7SU1oT0YsMkJBQUE7RWR1K0RGO0VRbndESTtJTXBPRiw2Q0FBQTtFZDArREY7RVExd0RJO0lNaE9GLDJCQUFBO0VkNitERjtFUXp3REk7SU1wT0YsNkNBQUE7RWRnL0RGO0VRaHhESTtJTWhPRixnQkFBQTtFZG0vREY7RVEvd0RJO0lNcE9GLGtDQUFBO0Vkcy9ERjtFUXR4REk7SU1oT0YsMkJBQUE7RWR5L0RGO0VRcnhESTtJTXBPRiw2Q0FBQTtFZDQvREY7RVE1eERJO0lNaE9GLDJCQUFBO0VkKy9ERjtFUTN4REk7SU1wT0YsNkNBQUE7RWRrZ0VGO0FBQ0Y7QVE3d0RFO0VFbFBBLG9CQUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO0VBQUEsZ0NBQUE7TUFBQSw0QkFBQTtVQUFBLHdCQUFBO0FWa2dFRjtBUTd3REk7RUdqTkYsV0FBQTtFQUNBLGVBQUE7QVhpK0RGO0FRN3dESTtFR3pNQSxZQUFBO0FYeTlESjtBUTV3REk7RUd6TUEsWUFBQTtBWHc5REo7QVFqd0RNO0VBQ0Usd0JBQUE7TUFBQSw2QkFBQTtVQUFBLGdCQUFBO0FSbXdEUjtBRTM0RE07RU11SUE7SUFDRSx3QkFBQTtRQUFBLDZCQUFBO1lBQUEsZ0JBQUE7RVJ1d0ROO0FBQ0Y7QUVoNURNO0VNdUlBO0lBQ0Usd0JBQUE7UUFBQSw2QkFBQTtZQUFBLGdCQUFBO0VSNHdETjtBQUNGO0FFaDVETTtFTWtJQTtJQUNFLHdCQUFBO1FBQUEsNkJBQUE7WUFBQSxnQkFBQTtFUml4RE47QUFDRjtBUXJ3RE07RUdqUUYsbUJBQUE7RUFBQSxzQkFBQTtNQUFBLGtCQUFBO1VBQUEsY0FBQTtBWHlnRUo7QVF6dkRRO0VHaFBKLHFCQURNO0FYNitEVjtBUTV2RFE7RUdoUEosc0JBRE07QVhnL0RWO0FRL3ZEUTtFR2hQSixXQURNO0FYbS9EVjtBUWx3RFE7RUdoUEosc0JBRE07QVhzL0RWO0FRcndEUTtFR2hQSixzQkFETTtBWHkvRFY7QVF4d0RRO0VHaFBKLFdBRE07QVg0L0RWO0FRM3dEUTtFR2hQSixzQkFETTtBWCsvRFY7QVE5d0RRO0VHaFBKLHNCQURNO0FYa2dFVjtBUWp4RFE7RUdoUEosV0FETTtBWHFnRVY7QVFweERRO0VHaFBKLHNCQURNO0FYd2dFVjtBUXZ4RFE7RUdoUEosc0JBRE07QVgyZ0VWO0FRMXhEUTtFR2hQSixZQURNO0FYOGdFVjtBRWo4RE07RU0rSUU7SUc5UEosbUJBQUE7SUFBQSxxQkFBQTtRQUFBLGlCQUFBO1lBQUEsYUFBQTtJQTJCQSxZQUFBO0VYMGhFRjtFUWp6REk7SUdqUUYsbUJBQUE7SUFBQSxzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtFWHFqRUY7RVE5eURNO0lHM09KLFlBQUE7RVg0aEVGO0VReHlETTtJR2hQSixxQkFETTtFWDRoRVI7RVEzeURNO0lHaFBKLHNCQURNO0VYK2hFUjtFUTl5RE07SUdoUEosV0FETTtFWGtpRVI7RVFqekRNO0lHaFBKLHNCQURNO0VYcWlFUjtFUXB6RE07SUdoUEosc0JBRE07RVh3aUVSO0VRdnpETTtJR2hQSixXQURNO0VYMmlFUjtFUTF6RE07SUdoUEosc0JBRE07RVg4aUVSO0VRN3pETTtJR2hQSixzQkFETTtFWGlqRVI7RVFoMERNO0lHaFBKLFdBRE07RVhvakVSO0VRbjBETTtJR2hQSixzQkFETTtFWHVqRVI7RVF0MERNO0lHaFBKLHNCQURNO0VYMGpFUjtFUXowRE07SUdoUEosWUFETTtFWDZqRVI7QUFDRjtBRWovRE07RU0rSUU7SUc5UEosbUJBQUE7SUFBQSxxQkFBQTtRQUFBLGlCQUFBO1lBQUEsYUFBQTtJQTJCQSxZQUFBO0VYMGtFRjtFUWoyREk7SUdqUUYsbUJBQUE7SUFBQSxzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtFWHFtRUY7RVE5MURNO0lHM09KLFlBQUE7RVg0a0VGO0VReDFETTtJR2hQSixxQkFETTtFWDRrRVI7RVEzMURNO0lHaFBKLHNCQURNO0VYK2tFUjtFUTkxRE07SUdoUEosV0FETTtFWGtsRVI7RVFqMkRNO0lHaFBKLHNCQURNO0VYcWxFUjtFUXAyRE07SUdoUEosc0JBRE07RVh3bEVSO0VRdjJETTtJR2hQSixXQURNO0VYMmxFUjtFUTEyRE07SUdoUEosc0JBRE07RVg4bEVSO0VRNzJETTtJR2hQSixzQkFETTtFWGltRVI7RVFoM0RNO0lHaFBKLFdBRE07RVhvbUVSO0VRbjNETTtJR2hQSixzQkFETTtFWHVtRVI7RVF0M0RNO0lHaFBKLHNCQURNO0VYMG1FUjtFUXozRE07SUdoUEosWUFETTtFWDZtRVI7QUFDRjtBRTVoRU07RU0wSUU7SUc5UEosbUJBQUE7SUFBQSxxQkFBQTtRQUFBLGlCQUFBO1lBQUEsYUFBQTtJQTJCQSxZQUFBO0VYMG5FRjtFUWo1REk7SUdqUUYsbUJBQUE7SUFBQSxzQkFBQTtRQUFBLGtCQUFBO1lBQUEsY0FBQTtFWHFwRUY7RVE5NERNO0lHM09KLFlBQUE7RVg0bkVGO0VReDRETTtJR2hQSixxQkFETTtFWDRuRVI7RVEzNERNO0lHaFBKLHNCQURNO0VYK25FUjtFUTk0RE07SUdoUEosV0FETTtFWGtvRVI7RVFqNURNO0lHaFBKLHNCQURNO0VYcW9FUjtFUXA1RE07SUdoUEosc0JBRE07RVh3b0VSO0VRdjVETTtJR2hQSixXQURNO0VYMm9FUjtFUTE1RE07SUdoUEosc0JBRE07RVg4b0VSO0VRNzVETTtJR2hQSixzQkFETTtFWGlwRVI7RVFoNkRNO0lHaFBKLFdBRE07RVhvcEVSO0VRbjZETTtJR2hQSixzQkFETTtFWHVwRVI7RVF0NkRNO0lHaFBKLHNCQURNO0VYMHBFUjtFUXo2RE07SUdoUEosWUFETTtFWDZwRVI7QUFDRjs7QVFqNkRNO0VDdFRFLHNCQUFBO0VBQUEseUJBQUE7QVQ0dEVSO0FFdGxFTTtFTWdMQTtJQ3RURSxzQkFBQTtJQUFBLHlCQUFBO0VUaXVFTjtBQUNGO0FRdjZETTtFQzNURSxzQkFBQTtFQUFBLHlCQUFBO0FUc3VFUjtBRWhtRU07RU1xTEE7SUMzVEUsc0JBQUE7SUFBQSx5QkFBQTtFVDJ1RU47QUFDRjs7QVFub0VFO0VDekdNLHNCQUFBO0VBQUEseUJBQUE7QVRpdkVSO0FFM21FTTtFTTdCSjtJQ3pHTSxzQkFBQTtJQUFBLHlCQUFBO0VUc3ZFTjtBQUNGO0FRMW9FSTtFRzlEQSw2QkFETTtFRnJDSixxQkFBQTtFQUFBLHdCQUFBO0FUbXZFTjtBRXRuRU07RU1sQkU7SUdyRUosNkJBRE07SUZyQ0oscUJBQUE7SUFBQSx3QkFBQTtFVHl2RUo7QUFDRjtBUWxyRUU7RUcvQkUsWUFBQTtBWG90RUo7QVFqckVFO0VHL0JFLFlBQUE7QVhtdEVKO0FRNXFFSTtFR25DQSxzQ0FETTtBWG10RVY7QVEvcUVJO0VHbkNBLHVDQURNO0FYc3RFVjtBUWxyRUk7RUduQ0EsNEJBRE07QVh5dEVWO0FRcnJFSTtFR25DQSx1Q0FETTtBWDR0RVY7QVF4ckVJO0VHbkNBLHVDQURNO0FYK3RFVjtBUTNyRUk7RUduQ0EsNEJBRE07QVhrdUVWO0FROXJFSTtFR25DQSx1Q0FETTtBWHF1RVY7QVFqc0VJO0VHbkNBLHVDQURNO0FYd3VFVjtBUXBzRUk7RUduQ0EsNEJBRE07QVgydUVWO0FRdnNFSTtFR25DQSx1Q0FETTtBWDh1RVY7QVExc0VJO0VHbkNBLHVDQURNO0FYaXZFVjtBUTdzRUk7RUduQ0EsNkJBRE07QVhvdkVWO0FFdnFFTTtFTXJESjtJRy9CRSxZQUFBO0VYK3ZFRjtFUTV0RUE7SUcvQkUsWUFBQTtFWDh2RUY7RVF2dEVFO0lHbkNBLHNDQURNO0VYOHZFUjtFUTF0RUU7SUduQ0EsdUNBRE07RVhpd0VSO0VRN3RFRTtJR25DQSw0QkFETTtFWG93RVI7RVFodUVFO0lHbkNBLHVDQURNO0VYdXdFUjtFUW51RUU7SUduQ0EsdUNBRE07RVgwd0VSO0VRdHVFRTtJR25DQSw0QkFETTtFWDZ3RVI7RVF6dUVFO0lHbkNBLHVDQURNO0VYZ3hFUjtFUTV1RUU7SUduQ0EsdUNBRE07RVhteEVSO0VRL3VFRTtJR25DQSw0QkFETTtFWHN4RVI7RVFsdkVFO0lHbkNBLHVDQURNO0VYeXhFUjtFUXJ2RUU7SUduQ0EsdUNBRE07RVg0eEVSO0VReHZFRTtJR25DQSw2QkFETTtFWCt4RVI7RVF2d0VBO0lHL0JFLFlBQUE7RVh5eUVGO0VRdHdFQTtJRy9CRSxZQUFBO0VYd3lFRjtFUWp3RUU7SUduQ0Esc0NBRE07RVh3eUVSO0VRcHdFRTtJR25DQSx1Q0FETTtFWDJ5RVI7RVF2d0VFO0lHbkNBLDRCQURNO0VYOHlFUjtFUTF3RUU7SUduQ0EsdUNBRE07RVhpekVSO0VRN3dFRTtJR25DQSx1Q0FETTtFWG96RVI7RVFoeEVFO0lHbkNBLDRCQURNO0VYdXpFUjtFUW54RUU7SUduQ0EsdUNBRE07RVgwekVSO0VRdHhFRTtJR25DQSx1Q0FETTtFWDZ6RVI7RVF6eEVFO0lHbkNBLDRCQURNO0VYZzBFUjtFUTV4RUU7SUduQ0EsdUNBRE07RVhtMEVSO0VRL3hFRTtJR25DQSx1Q0FETTtFWHMwRVI7RVFseUVFO0lHbkNBLDZCQURNO0VYeTBFUjtBQUNGO0FFN3ZFTTtFTXJESjtJRy9CRSxZQUFBO0VYcTFFRjtFUWx6RUE7SUcvQkUsWUFBQTtFWG8xRUY7RVE3eUVFO0lHbkNBLHNDQURNO0VYbzFFUjtFUWh6RUU7SUduQ0EsdUNBRE07RVh1MUVSO0VRbnpFRTtJR25DQSw0QkFETTtFWDAxRVI7RVF0ekVFO0lHbkNBLHVDQURNO0VYNjFFUjtFUXp6RUU7SUduQ0EsdUNBRE07RVhnMkVSO0VRNXpFRTtJR25DQSw0QkFETTtFWG0yRVI7RVEvekVFO0lHbkNBLHVDQURNO0VYczJFUjtFUWwwRUU7SUduQ0EsdUNBRE07RVh5MkVSO0VRcjBFRTtJR25DQSw0QkFETTtFWDQyRVI7RVF4MEVFO0lHbkNBLHVDQURNO0VYKzJFUjtFUTMwRUU7SUduQ0EsdUNBRE07RVhrM0VSO0VROTBFRTtJR25DQSw2QkFETTtFWHEzRVI7QUFDRjtBRXB5RU07RU0xREo7SUcvQkUsWUFBQTtFWGk0RUY7RVE5MUVBO0lHL0JFLFlBQUE7RVhnNEVGO0VRejFFRTtJR25DQSxzQ0FETTtFWGc0RVI7RVE1MUVF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QUFBLG9CQUFBO0lBeUJJLGFBQUE7RWZnb0ZOO0FBQ0Y7O0FRdndFTTtFQUNFLFlBQUE7QVIwd0VSO0FFM2dGTTtFTW9RRTtJQUNFLFlBQUE7RVIwd0VSO0FBQ0Y7QUVoaEZNO0VNb1FFO0lBQ0UsWUFBQTtFUit3RVI7QUFDRjtBRWhoRk07RU0rUEU7SUFDRSxZQUFBO0VSb3hFUjtBQUNGOztBUXZqRkU7RUN6R00sc0JBQUE7RUFBQSx5QkFBQTtBVHFxRlI7QUUvaEZNO0VNN0JKO0lDekdNLHNCQUFBO0lBQUEseUJBQUE7RVQwcUZOO0FBQ0Y7QVE5akZJO0VHOURBLDZCQURNO0VGckNKLHFCQUFBO0VBQUEsd0JBQUE7QVR1cUZOO0FFMWlGTTtFTWxCRTtJR3JFSiw2QkFETTtJRnJDSixxQkFBQTtJQUFBLHdCQUFBO0VUNnFGSjtBQUNGO0FRdG1GRTtFRy9CRSxZQUFBO0FYd29GSjtBUXJtRkU7RUcvQkUsWUFBQTtBWHVvRko7QVFobUZJO0VHbkNBLHNDQURNO0FYdW9GVjtBUW5tRkk7RUduQ0EsdUNBRE07QVgwb0ZWO0FRdG1GSTtFR25DQSw0QkFETTtBWDZvRlY7QVF6bUZJO0VHbkNBLHVDQURNO0FYZ3BGVjtBUTVtRkk7RUduQ0EsdUNBRE07QVhtcEZWO0FRL21GSTtFR25DQSw0QkFETTtBWHNwRlY7QVFsbkZJO0VHbkNBLHVDQURNO0FYeXBGVjtBUXJuRkk7RUduQ0EsdUNBRE07QVg0cEZWO0FReG5GSTtFR25DQSw0QkFETTtBWCtwRlY7QVEzbkZJO0VHbkNBLHVDQURNO0FYa3FGVjtBUTluRkk7RUduQ0EsdUNBRE07QVhxcUZWO0FRam9GSTtFR25DQSw2QkFETTtBWHdxRlY7QUUzbEZNO0VNckRKO0lHL0JFLFlBQUE7RVhtckZGO0VRaHBGQTtJRy9CRSxZQUFBO0VYa3JGRjtFUTNvRkU7SUduQ0Esc0NBRE07RVhrckZSO0VROW9GRTtJR25DQSx1Q0FETTtFWHFyRlI7RVFqcEZFO0lHbkNBLDRCQURNO0VYd3JGUjtFUXBwRkU7SUduQ0EsdUNBRE07RVgyckZSO0VRdnBGRTtJR25DQSx1Q0FETTtFWDhyRlI7RVExcEZFO0lHbkNBLDRCQURNO0VYaXNGUjtFUTdwRkU7SUduQ0EsdUNBRE07RVhvc0ZSO0VRaHFGRTtJR25DQSx1Q0FETTtFWHVzRlI7RVFucUZFO0lHbkNBLDRCQURNO0VYMHNGUjtFUXRxRkU7SUduQ0EsdUNBRE07RVg2c0ZSO0VRenFGRTtJR25DQSx1Q0FETTtFWGd0RlI7RVE1cUZFO0lHbkNBLDZCQURNO0VYbXRGUjtFUTNyRkE7SUcvQkUsWUFBQTtFWDZ0RkY7RVExckZBO0lHL0JFLFlBQUE7RVg0dEZGO0VRcnJGRTtJR25DQSxzQ0FETTtFWDR0RlI7RVF4ckZFO0lHbkNBLHVDQURNO0VYK3RGUjtFUTNyRkU7SUduQ0EsNEJBRE07RVhrdUZSO0VROXJGRTtJR25DQSx1Q0FETTtFWHF1RlI7RVFqc0ZFO0lHbkNBLHVDQURNO0VYd3VGUjtFUXBzRkU7SUduQ0EsNEJBRE07RVgydUZSO0VRdnNGRTtJR25DQSx1Q0FETTtFWDh1RlI7RVExc0ZFO0lHbkNBLHVDQURNO0VYaXZGUjtFUTdzRkU7SUduQ0EsNEJBRE07RVhvdkZSO0VRaHRGRTtJR25DQSx1Q0FETTtFWHV2RlI7RVFudEZFO0lHbkNBLHVDQURNO0VYMHZGUjtFUXR0RkU7SUduQ0EsNkJBRE07RVg2dkZSO0FBQ0Y7QUVqckZNO0VNckRKO0lHL0JFLFlBQUE7RVh5d0ZGO0VRdHVGQTtJRy9CRSxZQUFBO0VYd3dGRjtFUWp1RkU7SUduQ0Esc0NBRE07RVh3d0ZSO0VRcHVGRTtJR25DQSx1Q0FETTtFWDJ3RlI7RVF2dUZFO0lHbkNBLDRCQURNO0VYOHdGUjtFUTF1RkU7SUduQ0EsdUNBRE07RVhpeEZSO0VRN3VGRTtJR25DQSx1Q0FETTtFWG94RlI7RVFodkZFO0lHbkNBLDRCQURNO0VYdXhGUjtFUW52RkU7SUduQ0EsdUNBRE07RVgweEZSO0VRdHZGRTtJR25DQSx1Q0FETTtFWDZ4RlI7RVF6dkZFO0lHbkNBLDRCQURNO0VYZ3lGUjtFUTV2RkU7SUduQ0EsdUNBRE07RVhteUZSO0VRL3ZGRTtJR25DQSx1Q0FETTtFWHN5RlI7RVFsd0ZFO0lHbkNBLDZCQURNO0VYeXlGUjtBQUNGO0FFeHRGTTtFTTFESjtJRy9CRSxZQUFBO0VYcXpGRjtFUWx4RkE7SUcvQkUsWUFBQTtFWG96RkY7RVE3d0ZFO0lHbkNBLHNDQURNO0VYb3pGUjtFUWh4RkU7SUduQ0EsdUNBRE07RVh1ekZSO0VRbnhGRTtJR25DQSw0QkFETTtFWDB6RlI7RVF0eEZFO0lHbkNBLHVDQURNO0VYNnpGUjtFUXp4RkU7SUduQ0EsdUNBRE07RVhnMEZSO0VRNXhGRTtJR25DQSw0QkFETTtFWG0wRlI7RVEveEZFO0lHbkNBLHVDQURNO0VYczBGUjtFUWx5RkU7SUduQ0EsdUNBRE07RVh5MEZSO0VRcnlGRTtJR25DQSw0QkFETTtFWDQwRlI7RVF4eUZFO0lHbkNBLHVDQURNO0VYKzBGUjtFUTN5RkU7SUduQ0EsdUNBRE07RVhrMUZSO0VROXlGRTtJR25DQSw2QkFETTtFWHExRlI7QUFDRjs7QVE3L0VJO0VPL1lJLDhCQUFBO0FmZzVGUjtBRTd3Rk07RU00UUY7SU8vWUksOEJBQUE7RWZvNUZOO0FBQ0Y7QUVseEZNO0VNNFFGO0lPL1lJLDhCQUFBO0VmeTVGTjtBQUNGO0FFbHhGTTtFTXVRRjtJTy9ZSSw4QkFBQTtFZjg1Rk47QUFDRjs7QUU1eEZNO0VNZ1JBO0lPblpFLDhCQUFBO0VmbzZGTjtBQUNGO0FFbHlGTTtFTWdSQTtJT25aRSw4QkFBQTtFZnk2Rk47QUFDRjtBRWx5Rk07RU0yUUE7SU9uWkUsOEJBQUE7RWY4NkZOO0FBQ0Y7QWdCbnRGRTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxTQUFBO0VBQ0EsVUFBQTtBaEJxdEZKOztBZ0JqdEZFO0VBQ0UsbUJWcEdzQjtFVXNHdEIsa0JBQUE7RUFDQSxnQlZ4R21CO0VVeUduQixrQ1Z2R3VCO0FOMHpGM0I7O0FnQi9zRkU7O0VBRUUsa0JBQUE7RUFDQSxvQkFBQTtBaEJrdEZKOztBZ0I5c0ZFOztFQUVFLGlCVnJNaUI7RVVzTWpCLG9CQUFBO0FoQml0Rko7O0FnQjdzRkU7RUFDRSxjVjlIYztFVStIZCxvQkFBQTtBaEJndEZKOztBZ0I1c0ZFOzs7Ozs7RUFNRSxzQ1Z0S2lCO0VVdUtqQixrQlZsS2dCO0VVbUtoQixtQlZ6Tm1CO0VVME5uQixjVmxLVztFVW1LWCxrQ1Y5SW9CO0FONjFGeEI7QWdCN3NGSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNWN1BRO0FOaTlGZDs7QWdCM3NGUTtFQUlJLGtCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBaEJtckZaOztBZ0JsdEZRO0VBSUksa0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FoQjByRlo7O0FnQnp0RlE7RUFJSSxpQkFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWhCaXNGWjs7QWdCaHVGUTtFQUlJLG1CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBaEJ3c0ZaOztBZ0J2dUZRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FoQitzRlo7O0FnQjl1RlE7RUFJSSxlQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBaEJzdEZaOztBRTE1Rk07RWNxS0U7SUFJSSxlQURpQjtFaEJ1dkYzQjtFZ0IxdkZNO0lBSUksbUJBRGlCO0VoQjB2RjNCO0VnQjd2Rk07SUFJSSxpQkFEaUI7RWhCNnZGM0I7RWdCaHdGTTtJQUlJLG9CQURpQjtFaEJnd0YzQjtFZ0Jud0ZNO0lBSUksa0JBRGlCO0VoQm13RjNCO0VnQnR3Rk07SUFJSSxlQURpQjtFaEJzd0YzQjtBQUNGO0FnQm51RkU7RUFDRSxvQkFBQTtFQUNBLGNDbFFnQjtFRG1RaEIscUJWdkxxQjtFVXlMckIsZUFBQTtBaEJvdUZKO0FnQmx1Rkk7RUFFRSxjVjlMZTtBTmk2RnJCO0FnQjd0Rkk7RUFDRSxTQUFBO0FoQit0Rk47O0FnQjF0RkU7RUFDRSxXQUFBO0VBRUEsb0JWeFRXO0VVeVRYLFNBQUE7RUFDQSxvQlYxTVE7RVU0TVIsYUFBQTtFQUNBLGVBQUE7RUFDQSxnQ1YvTVE7RVVnTlIsY0FBQTtBaEIydEZKOztBZ0J2dEZFOzs7RUFHRSxtQlZwT3NCO0VVcU90Qiw0QlZuTmtCO0VVb05sQixnQlZ2T21CO0FOaThGdkI7O0FnQnR0RkU7RUFDRSxrQkFBQTtBaEJ5dEZKOztBZ0JydEZFO0VBQ0Usb0JWN05lO0VVOE5mLHFCVmhPYztBTnc3RmxCOztBZ0JwdEZFO0VBQ0Usb0JWbk9lO0FOMDdGbkI7O0FnQmx0Rkk7RUFDRSxvQlZ4T29CO0VVeU9wQixnQkFBQTtBaEJxdEZOOztBZ0JodEZFO0VBQ0UsbUJWOU9xQjtBTmk4RnpCO0FnQmp0Rkk7RUFDRSxxQlYvT3dCO0VVZ1B4QixpQlZ2VmU7QU4waUdyQjs7QWdCOXNGRTtFQUNFLGdCQUFBO0VBQ0Esc0NWclBpQjtFVXNQakIsOEJWclBnQjtBTnM4RnBCO0FnQi9zRkk7RUFDRSxnQlZuUmlCO0VVb1JqQixjVmhZTTtBTmlsR1o7O0FnQjVzRkU7RUFDRSxjQUFBO0VBQ0Esb0JWL1BhO0VVZ1FiLGNWeFlRO0FOdWxHWjtBZ0I3c0ZJO0VBQ0UsYVZqUWdCO0FOZzlGdEI7O0FnQjFzRkU7RUFDRSxpQ1ZqUWE7RVVrUWIsWUFBQTtFQUNBLHFCQUFBO0FoQjZzRko7O0FnQnpzRkU7RUFDRSxTQUFBO0FoQjRzRko7O0FnQnhzRkU7RUFDRSxxQ1Z6U1c7RVUyU1gseUJWNVNVO0VVNlNWLHlCVm5hUztFVXFhVCw0RFYvVW9CO0VVZ1ZwQixtQlZ2WW1CO0VVd1luQixjVmxhSTtBTjJtR1I7O0FnQnJzRkU7RUFDRSxTQUFBO0VBQ0EsMkJWNVJnQjtFVThSaEIseUJWL2FTO0VVaWJULDREVjNWb0I7RVU0VnBCLGNWN2FJO0FObW5HUjs7QWtCN29HRTtFQUNFLGtCWmlMbUI7RVloTG5CLHFCWmlMc0I7RVkvS3RCLG1CWmdEbUI7RVkvQ25CLGdCWjBLbUI7RVl6S25CLGNaa0JRO0FONm5HWjs7QWtCM29HRTtFQUNFLGVaa0thO0VZaktiLGdCWmtLYztBTjQrRmxCOztBa0Ixb0dFO0VBQ0UsaUJabUthO0VZbEtiLGNBQUE7QWxCNm9HSjtBa0Izb0dJO0VBQ0Us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RUFRbkIsY0FaUTtBckI0d0daO0FxQjNtR1E7RUExSk4seUJmakVtQjtFZWtFbkIsY0FSVTtBckJneEdaO0FxQnR3R0U7RUFDRSx5QkFQbUI7RUFRbkIsY0FaUTtBckJveEdaO0FxQm5uR1E7RUExSk4seUJmakVtQjtFZWtFbkIsY0FSVTtBckJ3eEdaO0FxQjl3R0U7RUFDRSx5QkFQbUI7RUFRbkIsY0FaUTtBckI0eEdaO0FxQjNuR1E7RUExSk4seUJmakVtQjtFZWtFbkIsY0FSVTtBckJneUdaO0FxQnR4R0U7RUFDRSx5QkFQbUI7RUFRbkIsY0FaUTtBckJveUdaO0FxQm5uR0k7RUFoSEYsYWY2R3dCO0VlNUd4QixtQkFBQTtBckJzdUdGO0FxQnB1R0U7RUFDRSx5QkpqR2dCO0VJa0doQixjZnpJSTtBTisyR1I7QXFCdG5HUTtFQXJITixhZjZHd0I7RWU1R3hCLG1CQUFBO0FyQjh1R0Y7QXFCNXVHRTtFQUNFLHlCZi9IaUI7RWVnSWpCLGNBUlE7QXJCc3ZHWjtBcUI5bkdRO0VBckhOLGFmNkd3QjtFZTVHeEIsbUJBQUE7QXJCc3ZHRjtBcUJwdkdFO0VBQ0UseUJmL0hpQjtFZWdJakIsY0FSUTtBckI4dkdaO0FxQnRvR1E7RUFySE4sYWY2R3dCO0VlNUd4QixtQkFBQTtBckI4dkdGO0FxQjV2R0U7RUFDRSx5QmYvSGlCO0VlZ0lqQixjQVJRO0FyQnN3R1o7QXFCOW9HUTtFQXJITixhZjZHd0I7RWU1R3hCLG1CQUFBO0FyQnN3R0Y7QXFCcHdHRTtFQUNFLHlCZi9IaUI7RWVnSWpCLGNBUlE7QXJCOHdHWjtBcUJ0cEdRO0VBckhOLGFmNkd3QjtFZTVHeEIsbUJBQUE7QXJCOHdHRjtBcUI1d0dFO0VBQ0UseUJmL0hpQjtFZWdJakIsY0FSUTtBckJzeEdaO0FxQnRwR007RUF0SkoseUJBQUE7RUFDQSxjSnJFa0I7QWpCbzNHcEI7QXFCdDBHRTtFQUdFLDZCQUFBO0FyQnMwR0o7QXFCajBHSTtFQUVFLDZCQUFBO0FyQmswR047QXFCbnpHRTtFQUNFLHFCQU5ZO0VBT1osY0FQWTtBckI0ekdoQjtBcUJwekdJ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cUJyeUdZO0VBQ0UseUJmblRPO0FOMGxIckI7QXFCeHlHWTtFQUNFLHlCZm5UTztBTjZsSHJCO0FxQmx5R0k7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7QXJCb3lHTjs7QXFCL3hHSTtFQUVFLHFCQUFBO0FyQml5R047O0FzQjlqSEU7O0VBckNBLGNBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUxTO0VBTVQsZ0JBQUE7RUFDQSxlaEIrV2M7RWdCN1dkLHlCaEIyV2E7RWdCMVdiLGdCaEJNYztFZ0JMZCx5QmhCckJNO0VnQnNCTix5RGhCMldhO1VnQjNXYixpRGhCMldhO0VnQnpXYixvQmhCK1ZrQjtFZ0I5VmxCLGVoQitWZ0I7RWdCOVZoQixtQmhCRnFCO0VnQkdyQixnQmhCbkJrQjtFZ0JvQmxCLGNoQjlCTTtFZ0JpQ0osMkVoQnFXZTtFZ0JyV2YsbUVoQnFXZTtFZ0JyV2YsMkRoQnFXZTtFZ0JyV2Ysb0ZoQnFXZTtFZ0JoVmYsd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0F0QmdsSEo7QXNCam1IRTs7RUFDRSxhQUFBO0VBQ0EseUJoQjBWaUI7RWdCelZqQix5QmhCdENJO0VnQnVDSixtQ2hCMlZpQjtVZ0IzVmpCLDJCaEIyVmlCO0VnQnhWZiwyRWhCMFZhO0VnQjFWYixtRWhCMFZhO0VnQjFWYiwyRGhCMFZhO0VnQjFWYixvRmhCMFZhO0FOd3dHbkI7O0FzQnBsSEU7RUFDRSxlQUFBO0F0QnVsSEo7QXNCcmxISTtFQUNFLFlBQUE7QXRCdWxITjs7QXNCaGxISTs7O0VBRUUseUJoQjVFTztFZ0I2RVAsbUJoQjZUa0I7QU51eEd4Qjs7QXNCL2tIRTs7RUFFRSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSxnQmhCcERZO0FOc29IaEI7O0FzQjlrSEU7RUFDRSw4QkFBQTtVQUFBLHNCQUFBO0F0QmlsSEo7O0FzQmhrSEU7RUFDRSxjaEIzR1U7QU44cUhkOztBc0Jwa0hFO0VBQ0UsY2hCM0dVO0FOOHFIZDs7QXNCcGtIRTtFQUNFLGNoQjNHVTtBTjhxSGQ7O0FzQnBrSEU7RUFDRSxjaEIzR1U7QU44cUhkOztBc0Jwa0hFO0VBQ0UsY2hCM0dVO0FOOHFIZDs7QXVCMXVIRTs7O0VBR0UsZ0JBQUE7QXZCNnVISjs7QXVCenVIRTs7RUFFRSxxQkFBQTtFQUNBLHdCQUFBO0VBRUEsbUJBQUE7RUFDQSxrQmpCMlpXO0VpQjFaWCxnQkFBQTtBdkIydUhKO0F1Qnp1SEk7O0VBQ0UsZUFBQTtBdkI0dUhOOztBdUJ2dUhFOztFQUVFLG9CQUFBO0F2QjB1SEo7O0F1QnR1SEU7RUFDRSxXQUFBO0F2Qnl1SEo7O0F3QnJ1SEU7RUFqQkEsY0FBQTtFQUNBLFNBQUE7RUFFQSxtQmxCOFpxQjtFa0I3WnJCLG1CbEJzRXFCO0VrQnJFckIsZ0JsQjhadUI7RWtCN1p2QixjbEIwQ007QU4rc0hSO0F3QjN1SEk7RUFSRixnQkFBQTtFQUNBLG9CQUFBO0F4QnN2SEY7O0F5QnZ3SEU7RUFHRSxtQkFGYTtFQUdiLG9CbkIwWmlCO0VtQnpaakIsa0JuQjBaa0I7RW1CelpsQixjbkI4Q0k7QU4wdEhSOztBMEJ6d0hFO0VBQ0Usb0JBQUE7RUFBQSxxQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFdBQUE7RUFDQSxtQnBCb1pXO0VvQmpaVCwwQkFBQTtFQUFBLDRCQUFBO01BQUEsdUJBQUE7VUFBQSxvQkFBQTtBMUIwd0hOO0EwQnR3SE07RUFDRSxzQkFBQTtBMUJ3d0hSO0EwQm53SE07RUFDRSxzQkFBQTtBMUJxd0hSOztBMEJod0hFOzs7O0VBQ0UsU0FBQTtFQUNBLG1CQUFBO0ExQnN3SEo7O0EwQjl2SEU7RUFFRSxlQUFBO0VBQ0EseUJwQjBYa0I7RW9CelhsQixtQnBCTVM7RW9CSlQsY3BCU0k7RW9CUkosa0JBQUE7RUFDQSxtQkFBQTtFQUdFLG9CQUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0VBQ0EseUJBQUE7RUFBQSwyQkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QTFCNnZITjtBMEJydkhNO0VBQ0UsZUFBQTtBMUJ1dkhSO0EwQnB2SE07RUFDRSxjQUFBO0ExQnN2SFI7O0EwQmp2SEU7RUFFRSxnQkFBQTtFQUdFLG1CQUFBO0VBQUEscUJBQUE7TUFBQSxpQkFBQTtVQUFBLGFBQUE7RUFDQSxZQUFBO0ExQml2SE47O0EwQjd1SEU7RUFFRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUdFLG9CQUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0ExQjZ1SE47QTBCdHVISTs7OztFQU9JLDJCQUFBO01BQUEsNEJBQUE7VUFBQSxtQkFBQTtFQUNBLFlBQUE7RUFLRixjQUFBO0VBQ0EsaUJBQUE7RUFDQSxlcEJrVVk7QU4rNUdsQjs7QTJCNXpIRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtBM0IrekhKOztBMkI1ekhFO0VBQ0UsZUFBQTtFQUNBLHFCQUFBO0EzQit6SEo7O0EyQjV6SEU7RUF4QkEsa0JyQnNaZ0I7RXFCclpoQixnQnJCb1ppQjtFcUJuWmpCLHlCckJrWmdCO0FOczhHbEI7QTJCdDFIRTtFQUVFLFNBQUE7RUFDQSx1QkFBQTtFQUNBLG9CckIrWWE7QU53OEdqQjs7QTRCdHlIRTtFQTNEQSxpQkFGUztFQUdULGdCQUFBO0VBQ0EsZXRCa2JjO0VzQmhiZCx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSx5QnRCNmFhO0VzQjVhYixnQnRCd0VjO0VzQnZFZCx5QnRCNkNNO0VzQjNDTixvQnRCa2FrQjtFc0JqYWxCLGV0QmthZ0I7RXNCamFoQixtQnRCaUVxQjtFc0JoRXJCLGdCdEJnRGtCO0VzQi9DbEIsY3RCcUNNO0VDNkVOLHFPQUFBO0VxQjlHRSw4QkFBQTtFQUNBLHVDQUFBO0VBQ0EsNEJBQUE7RUFDQSx3QkFBQTtFQUVBLHFCQUFBO0VBSUEsMkV0QjhaZTtFc0I5WmYsbUV0QjhaZTtFc0I5WmYsMkR0QjhaZTtFc0I5WmYsb0Z0QjhaZTtBTis3R25CO0FPdHZIRTtFcUJ0RUE7SXJCeUVJLHVXQUFBO0VQdXZISjtBQUNGO0E0QjkxSEU7RUFDRSxhQUFBO0VBQ0EseUJ0Qm1aaUI7RXNCbFpqQix5QnRCbUJJO0VzQmxCSixtQ3RCb1ppQjtVc0JwWmpCLDJCdEJvWmlCO0VzQmpaZiwyRXRCbVphO0VzQm5aYixtRXRCbVphO0VzQm5aYiwyRHRCbVphO0VzQm5aYixvRnRCbVphO0FOMjhHbkI7QTRCejFIRTtFQUNFLHlCdEJFUztFc0JEVCxtQnRCMllvQjtBTmc5R3hCO0E0QnYxSEU7RUFDRSxhQUFBO0E1QnkxSEo7QTRCdDFIRTtFQUNFLFlBQUE7RUFDQSxzQkFBQTtBNUJ3MUhKOztBNkJ6M0hFO0VBQ0UscUJ2QjZMdUI7RXVCNUx2Qix5QkFBQTtBN0I0M0hKO0E2QjEzSEk7RUFDRSxjdkJ5THFCO0FObXNIM0I7QTZCNzNISTtFQUNFLGN2QnlMcUI7QU5tc0gzQjtBNkI3M0hJO0VBQ0UsY3ZCeUxxQjtBTm1zSDNCO0E2QjczSEk7RUFDRSxjdkJ5THFCO0FObXNIM0I7QTZCNzNISTtFQUNFLGN2QnlMcUI7QU5tc0gzQjs7QTZCbDJISTtFQUNFLGN2QitKcUI7QU5zc0gzQjs7QTZCaDJIRTtFQXpCQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQnZCdVhhO0V1QnJYYixrQnZCaUxzQjtFdUJoTHRCLGlCdkJ1Q21CO0V1QnRDbkIsY3ZCOEtrQjtBTjhzSHBCO0E2QnQySEk7RUFDRSxjQUFBO0E3QncySE47O0E4Qmp6SEU7RUF4RkEsY0FBQTtFQUNBLG1CeEJzQk07RXdCckJOLHFCQUFBO0E5QjY0SEY7QThCMTRISTtFQUNFLG1CQUFBO0E5QjQ0SE47O0E4QnI0SEU7RUFDRSxzQkFBQTtBOUJ3NEhKO0E4QnI0SEU7RUFDRSxzQkFBQTtBOUJ1NEhKOztBOEJ6ekhFO0VBbEVBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLHFCeEJvS3VCO0V3QmxLdkIseUJ4Qm9LeUI7RXdCbkt6QixnQkFBQTtFQUVBLGtCeEI0SjBCO0V3QjNKMUIsY0FBQTtFQUNBLGNi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QVJRO1VBUVIsdUJBUlE7QW5Ed2lNVjs7QWtEeC9MSTtFQ3hCRiw4QkFQUTtNQU9SLDBCQVBRO1VBT1Isc0JBUFE7QW5EMmhNVjs7QWtEaGdNSTtFQ3BDRixzQkFSUTtFQVFSLDZCQVJRO01BUVIsbUJBUlE7VUFRUixxQkFSUTtBbkRnak1WOztBa0RoZ01JO0VDeEJGLDRCQVBRO01BT1Isd0JBUFE7VUFPUixvQkFQUTtBbkRtaU1WOztBa0R4Z01JO0VDcENGLHlCQVJRO0VBUVIsMkJBUlE7TUFRUixzQkFSUTtVQVFSLG1CQVJRO0FuRHdqTVY7O0FrRHhnTUk7RUN4QkYsMEJBUFE7TUFPUiwyQkFQUTtVQU9SLGtCQVBRO0FuRDJpTVY7O0FrRGhoTUk7RUNwQ0YsMEJBUlE7RUFRUiw0QkFSUTtNQVFSLHVCQVJRO1VBUVIsb0JBUlE7QW5EZ2tNVjs7QWtEaGhNSTtFQ3hCRiwyQkFQUTtNQU9SLDRCQVBRO1VBT1IsbUJBUFE7QW5EbWpNVjs7QWtEOWdNRTtFQy9DQSx3QkFoQlE7RUFnQlIsK0JBaEJRO01BZ0JSLHFCQWhCUTtVQWdCUix1QkFoQlE7RUFpQlIseUJBUlE7RUFRUiwyQkFSUTtNQVFSLHNCQVJRO1VBUVIsbUJBUlE7RUR3RE4sNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHFCQUFBO0FsRGtoTUo7O0FrRDVnTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxEaWhNakI7O0FrRGhoTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxEcWhNakI7O0FrRHBoTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxEeWhNakI7O0FrRHhoTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxENmhNakI7O0FrRDVoTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxEaWlNakI7O0FrRGhpTU07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QWxEcWlNakI7O0FFNStMTTtFZ0R4REE7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEMGlNZjtFa0R6aU1JO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRDZpTWY7RWtENWlNSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbERnak1mO0VrRC9pTUk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEbWpNZjtFa0Rsak1JO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRHNqTWY7RWtEcmpNSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbER5ak1mO0FBQ0Y7QUVqZ01NO0VnRHhEQTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbEQ4ak1mO0VrRDdqTUk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEaWtNZjtFa0Roa01JO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRG9rTWY7RWtEbmtNSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbER1a01mO0VrRHRrTUk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEMGtNZjtFa0R6a01JO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRDZrTWY7QUFDRjtBRWhoTU07RWdEN0RBO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRGtsTWY7RWtEamxNSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbERxbE1mO0VrRHBsTUk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEd2xNZjtFa0R2bE1JO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0VsRDJsTWY7RWtEMWxNSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFbEQ4bE1mO0VrRDdsTUk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RWxEaW1NZjtBQUNGO0FrRDlyTUU7RUNZQSxvQkFBQTtFQUFBLHFCQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0FuRHFyTUY7O0FrRDdyTUU7RUFDRSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0FsRGdzTUo7O0FrRDdyTUU7RUFDRSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0FsRGdzTUo7O0FrRDdyTUU7RUFDRSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0FsRGdzTUo7O0FrRDVyTUk7RUNzREYsOEJBcEVtQjtFQW9FbkIsNkJBcEVtQjtFQW9FbkIsMkJBcEVtQjtNQW9FbkIsdUJBcEVtQjtVQW9FbkIsbUJBcEVtQjtBbkQ4c01yQjs7QWtEaHNNSTtFQ3NERiw4QkFwRW1CO0VBb0VuQiw4QkFwRW1CO0VBb0VuQixtQ0FwRW1CO01Bb0VuQiwrQkFwRW1CO1VBb0VuQiwyQkFwRW1CO0FuRGt0TXJCOztBa0Rwc01JO0VDc0RGLDRCQXBFbUI7RUFvRW5CLDZCQXBFbUI7RUFvRW5CLDhCQXBFbUI7TUFvRW5CLDBC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QTtFVDI4Tko7QUFDRjtBWXY5TkU7RUQ0REUsMkJBRE07RUZoREosdUJBQUE7RUFBQSxzQkFBQTtBVGk5Tk47QUVwMU5NO0VVeElKO0lENERFLDJCQURNO0lGaERKLHVCQUFBO0lBQUEsc0JBQUE7RVR1OU5KO0FBQ0Y7QUUzMU5NO0VVeElKO0lENERFLDJCQURNO0lGaERKLHVCQUFBO0lBQUEsc0JBQUE7RVQ4OU5KO0FBQ0Y7QVkxK05FO0VENERFLDJCQURNO0VGaERKLHVCQUFBO0VBQUEsc0JBQUE7QVRvK05OO0FFdjJOTTtFVXhJSjtJRDRERSwyQkFETTtJRmhESix1QkFBQTtJQUFBLHNCQUFBO0VUMCtOSjtBQUNGO0FFOTJOTTtFVXhJSjtJRDRERSwyQkFETTtJRmhESix1QkFBQTtJQUFBLHNCQUFBO0VUaS9OSjtBQUNGO0FZNy9ORTtFRDRERSwyQkFETTtFRmhESix1QkFBQTtFQUFBLHNCQUFBO0FUdS9OTjtBRTEzTk07RVV4SUo7SUQ0REUsMkJBRE07SUZoREosdUJBQUE7SUFBQSxzQkFBQTtFVDYvTko7QUFDRjtBRWo0Tk07RVV4SUo7SUQ0REUsc0NBRE07SUZoREosdUJBQUE7SUFBQSxzQkFBQTtFVG9nT0o7QUFDRjtBWWhoT0U7RUQ0REUsMkJBRE07RUZoREosdUJBQUE7RUFBQSxzQkFBQTtBVDBnT047QUU3NE5NO0VVeElKO0lENERFLDJCQURNO0lGaERKLHVCQUFBO0lBQUEsc0JBQUE7RVRnaE9KO0FBQ0Y7QUVwNU5NO0VVeElKO0lENERFLHNDQURNO0lGaERKLHVCQUFBO0lBQUEsc0JBQUE7RVR1aE9KO0FBQ0Y7QVluaU9FO0VENERFLDJCQURNO0VGaERKLHVCQUFBO0VBQUEsc0JBQUE7QVQ2aE9OO0FFaDZOTTtFVXhJSjtJRDRERSwyQkFETTtJRmhESix1QkFBQTtJQUFBLHNCQUFBO0VUbWlPSjtBQUNGO0FFdjZOTTtFVXhJSjtJRDRERSw2QkFETTtJRmhESix1QkFBQTtJQUFBLHNCQUFBO0VUMGlPSjtBQUNGO0FZdGpPRTtFRDRERSwyQkFETTtFRmhESix1QkFBQTtFQUFBLHNCQUFBO0FUZ2pPTjtBRW43Tk07RVV4SUo7SUQ0REUsMkJBRE07SUZoREosdUJBQUE7SUFBQSxzQkFBQTtFVHNqT0o7QUFDRjtBRTE3Tk07RVV4SUo7SUQ0REUsc0NBRE07SUZoREosdUJBQUE7SUFBQSxzQkFBQTtFVDZqT0o7QUFDRjtBZ0V0ak9FO0VsQmZBLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLG1CeEM0RGM7RXdDMURkLHlCeEN3eEJpQjtFd0N2eEJqQixnQnhDOERjO0V3QzdEZCxtRHhDd3hCaUI7VXdDeHhCakIsMkN4Q3d4QmlCO0V3Q3R4QmpCLGNBQUE7RUFJQSxxRHhDb3hCcUI7RXdDcHhCckIsNkN4Q294QnFCO0V3Q3B4QnJCLHFDeENveEJxQjtFd0NweEJyQix3RXhDb3hCcUI7QU4reU12QjtBOENqa09FO0VBRUUsdUR4Qyt3QnFCO1V3Qy93QnJCLCtDeEMrd0JxQjtBTm16TXpCO0E4Qy9qT0U7RUFDRSx3QkFBQTtVQUFBLGdCQUFBO0E5Q2lrT0o7QWdFbGtPRTtFbEJuQkEscUJBQUE7RUFDQSxlQUFBO0VBQ0EsbUJ4QzREYztFd0MxRGQseUJ4Q3d4QmlCO0V3Q3Z4QmpCLGdCeEM4RGM7RXdDN0RkLG1EeEN3eEJpQjtVd0N4eEJqQiwyQ3hDd3hCaUI7RXdDdHhCakIsY0FBQTtBOUNzbE9GOztBaUVob09BO0VBQ0UsaUJBQUE7QWpFbW9PRjs7QWlFaG9PQTs7RUFFRSxlQUFBO0VBQ0Esa0JBQUE7RUFDQSw4REFBQTtVQUFBLHNEQUFBO0FqRW1vT0Y7O0FpRWhvT0E7RUFBb0Isa0JBQUE7QWpFb29PcEI7O0FpRWxvT0E7RUFDRSxxQjNEa0c0QjtBTm1pTzlCO0FFNytOTTtFK0R6Sk47SUFHSSxnQjNEaUcwQjtFTnNpTzVCO0FBQ0Y7QUVsL05NO0UrRHpKTjtJQU1JLGdCM0QrRjBCO0VOMGlPNUI7QUFDRjtBRWwvTk07RStEOUpOO0lBU0ksZ0IzRDZGMEI7RU44aU81QjtBQUNGOztBaUV4b09BO0VBQ0UseUJBQUE7QWpFMm9PRjs7QWlFeG9PQTtFQUNJLGtCQUFBO0VBQ0EsUUFBQTtFQUFVLFVBQUE7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akd5K1lWO0VpR3YrWU07SUFDSSxtQkFBQTtFakd5K1lWO0FBQ0YiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5yZXZlYWwubGFyZ2UsIC5yZXZlYWwuc21hbGwsIC5yZXZlYWwudGlueSwgLnJldmVhbCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuaHRtbCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbmhyIHtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mb3VuZGF0aW9uLW1xIHtcbiAgZm9udC1mYW1pbHk6IFwic21hbGw9MGVtJm1lZGl1bT00NWVtJmxhcmdlPTY0ZW0meGxhcmdlPTg3LjVlbSZ4eGxhcmdlPTkzLjc1ZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogIzFFMUUxRTtcbiAgZm9udC1mYW1pbHk6IFwiV29yayBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbn1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBtYXgtd2lkdGg6IDczLjEyNXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1jb250YWluZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lci5mbHVpZCB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXIuZnVsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG59XG5cbi5jZWxsIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG1pbi1oZWlnaHQ6IDBweDtcbiAgbWluLXdpZHRoOiAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNlbGwuYXV0byB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4uY2VsbC5zaHJpbmsge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmdyaWQteCA+IC5hdXRvIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uZ3JpZC14ID4gLnNocmluayB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLXNocmluaywgLmdyaWQteCA+IC5zbWFsbC1mdWxsLCAuZ3JpZC14ID4gLnNtYWxsLTEsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0zLCAuZ3JpZC14ID4gLnNtYWxsLTQsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC02LCAuZ3JpZC14ID4gLnNtYWxsLTcsIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC05LCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluaywgLmdyaWQteCA+IC5sYXJnZS1mdWxsLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG59XG4uZ3JpZC14ID4gLnNtYWxsLTEyLCAuZ3JpZC14ID4gLnNtYWxsLTExLCAuZ3JpZC14ID4gLnNtYWxsLTEwLCAuZ3JpZC14ID4gLnNtYWxsLTksIC5ncmlkLXggPiAuc21hbGwtOCwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTYsIC5ncmlkLXggPiAuc21hbGwtNSwgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTMsIC5ncmlkLXggPiAuc21hbGwtMiwgLmdyaWQteCA+IC5zbWFsbC0xIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4uZ3JpZC14ID4gLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5ncmlkLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEyLCAuZ3JpZC14ID4gLm1lZGl1bS0xMSwgLmdyaWQteCA+IC5tZWRpdW0tMTAsIC5ncmlkLXggPiAubWVkaXVtLTksIC5ncmlkLXggPiAubWVkaXVtLTgsIC5ncmlkLXggPiAubWVkaXVtLTcsIC5ncmlkLXggPiAubWVkaXVtLTYsIC5ncmlkLXggPiAubWVkaXVtLTUsIC5ncmlkLXggPiAubWVkaXVtLTQsIC5ncmlkLXggPiAubWVkaXVtLTMsIC5ncmlkLXggPiAubWVkaXVtLTIsIC5ncmlkLXggPiAubWVkaXVtLTEsIC5ncmlkLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXggPiAubGFyZ2UtYXV0byB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTksIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTYsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTMsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTIsIC5ncmlkLXggPiAueGxhcmdlLTExLCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtOSwgLmdyaWQteCA+IC54bGFyZ2UtOCwgLmdyaWQteCA+IC54bGFyZ2UtNywgLmdyaWQteCA+IC54bGFyZ2UtNiwgLmdyaWQteCA+IC54bGFyZ2UtNSwgLmdyaWQteCA+IC54bGFyZ2UtNCwgLmdyaWQteCA+IC54bGFyZ2UtMywgLmdyaWQteCA+IC54bGFyZ2UtMiwgLmdyaWQteCA+IC54bGFyZ2UtMSwgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bztcbn1cblxuLmdyaWQtbWFyZ2luLXk6bm90KC5ncmlkLXkpID4gLmNlbGwge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5ncmlkLW1hcmdpbi14IHtcbiAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14IHtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgd2lkdGg6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gIHdpZHRoOiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgd2lkdGg6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utc2hyaW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTMge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLXBhZGRpbmcteCAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1jb250YWluZXI6bm90KC5mdWxsKSA+IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG5cbi5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogMjUlO1xufVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IDIwJTtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbn1cblxuLnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gIHdpZHRoOiAxMi41JTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAueGxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC54bGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgfVxuICAueGxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbn1cblxuLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xufVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MTQyODU3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtOCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teC54bGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxNDI4NTclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS44NzVyZW0pO1xuICB9XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cbi5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLXBhZGRpbmctY29sbGFwc2UgPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtcGFkZGluZy1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLnhsYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuOTM3NXJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMzMzMzMyUgKyAwLjkzNzVyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyAwLjkzNzVyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDI1JSArIDAuOTM3NXJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NjY2NjY3JSArIDAuOTM3NXJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMC45Mzc1cmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzMzMzMzMlICsgMC45Mzc1cmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbn1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjkzNzVyZW0pO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMCUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzMzMzMzMlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NjY2NjY3JSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDUwJSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNzUlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzMzMzMzMlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzMzMzMzMlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NjY2NjY3JSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDAlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMzMzMzMyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY2NjY2NjclICsgMC45Mzc1cmVtKTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMjUlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjkzNzVyZW0pO1xuICB9XG4gIC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzMzMzMzMlICsgMC45Mzc1cmVtKTtcbiAgfVxuICAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NjY2NjY3JSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDc1JSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMzMzMzMzJSArIDAuOTM3NXJlbSk7XG4gIH1cbiAgLnhsYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NjY2NjY3JSArIDAuOTM3NXJlbSk7XG4gIH1cbn1cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG4uZ3JpZC15ID4gLmNlbGwge1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLmdyaWQteSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQteSA+IC5zaHJpbmsge1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZ3JpZC15ID4gLnNtYWxsLXNocmluaywgLmdyaWQteSA+IC5zbWFsbC1mdWxsLCAuZ3JpZC15ID4gLnNtYWxsLTEsIC5ncmlkLXkgPiAuc21hbGwtMiwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTQsIC5ncmlkLXkgPiAuc21hbGwtNSwgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTcsIC5ncmlkLXkgPiAuc21hbGwtOCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTEwLCAuZ3JpZC15ID4gLnNtYWxsLTExLCAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgZmxleC1iYXNpczogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLXNocmluaywgLmdyaWQteSA+IC5tZWRpdW0tZnVsbCwgLmdyaWQteSA+IC5tZWRpdW0tMSwgLmdyaWQteSA+IC5tZWRpdW0tMiwgLmdyaWQteSA+IC5tZWRpdW0tMywgLmdyaWQteSA+IC5tZWRpdW0tNCwgLmdyaWQteSA+IC5tZWRpdW0tNSwgLmdyaWQteSA+IC5tZWRpdW0tNiwgLmdyaWQteSA+IC5tZWRpdW0tNywgLmdyaWQteSA+IC5tZWRpdW0tOCwgLmdyaWQteSA+IC5tZWRpdW0tOSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTExLCAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxufVxuLmdyaWQteSA+IC5zbWFsbC0xMiwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC05LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC02LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC0zLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xufVxuLmdyaWQteSA+IC5zbWFsbC0yIHtcbiAgaGVpZ2h0OiAxNi42NjY2NjY2NjY3JTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMyB7XG4gIGhlaWdodDogMjUlO1xufVxuLmdyaWQteSA+IC5zbWFsbC00IHtcbiAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNSB7XG4gIGhlaWdodDogNDEuNjY2NjY2NjY2NyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTYge1xuICBoZWlnaHQ6IDUwJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtNyB7XG4gIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTgge1xuICBoZWlnaHQ6IDY2LjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgaGVpZ2h0OiA3NSU7XG59XG4uZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbn1cbi5ncmlkLXkgPiAuc21hbGwtMTEge1xuICBoZWlnaHQ6IDkxLjY2NjY2NjY2NjclO1xufVxuLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTEyLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTAsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tMyB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG4gIC5ncmlkLXkgPiAubWVkaXVtLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS05IHtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLm1lZGl1bS0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC15ID4gLmxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTIsIC5ncmlkLXkgPiAubGFyZ2UtMTEsIC5ncmlkLXkgPiAubGFyZ2UtMTAsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS04LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS01LCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS0yLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLXNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgIGhlaWdodDogMjUlO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS02IHtcbiAgICBoZWlnaHQ6IDUwJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiA3NSU7XG4gIH1cbiAgLmdyaWQteSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5ncmlkLXkgPiAueGxhcmdlLTEyLCAuZ3JpZC15ID4gLnhsYXJnZS0xMSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTksIC5ncmlkLXkgPiAueGxhcmdlLTgsIC5ncmlkLXkgPiAueGxhcmdlLTcsIC5ncmlkLXkgPiAueGxhcmdlLTYsIC5ncmlkLXkgPiAueGxhcmdlLTUsIC5ncmlkLXkgPiAueGxhcmdlLTQsIC5ncmlkLXkgPiAueGxhcmdlLTMsIC5ncmlkLXkgPiAueGxhcmdlLTIsIC5ncmlkLXkgPiAueGxhcmdlLTEsIC5ncmlkLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQteSA+IC54bGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5ncmlkLXkgPiAueGxhcmdlLTIge1xuICAgIGhlaWdodDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmdyaWQteSA+IC54bGFyZ2UtMyB7XG4gICAgaGVpZ2h0OiAyNSU7XG4gIH1cbiAgLmdyaWQteSA+IC54bGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLnhsYXJnZS01IHtcbiAgICBoZWlnaHQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5ncmlkLXkgPiAueGxhcmdlLTYge1xuICAgIGhlaWdodDogNTAlO1xuICB9XG4gIC5ncmlkLXkgPiAueGxhcmdlLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmdyaWQteSA+IC54bGFyZ2UtOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLnhsYXJnZS05IHtcbiAgICBoZWlnaHQ6IDc1JTtcbiAgfVxuICAuZ3JpZC15ID4gLnhsYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAuZ3JpZC15ID4gLnhsYXJnZS0xMSB7XG4gICAgaGVpZ2h0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLXBhZGRpbmcteSAuZ3JpZC1wYWRkaW5nLXkge1xuICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAtMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjkzNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1wYWRkaW5nLXkgPiAuY2VsbCB7XG4gICAgcGFkZGluZy10b3A6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC45Mzc1cmVtO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDB2dztcbn1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNlbGwtYmxvY2sge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG59XG5cbi5jZWxsLWJsb2NrLXkge1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xufVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuLmNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxuICAuY2VsbCAubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5tZWRpdW0tY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7XG4gIH1cbiAgLmNlbGwgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbiAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG4gIC5sYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG4gIC5jZWxsIC54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLnhsYXJnZS1jZWxsLWJsb2NrLXkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgfVxufVxuLmdyaWQteS5ncmlkLWZyYW1lIHtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxufVxuXG4uY2VsbCAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jZWxsIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5ncmlkLW1hcmdpbi15IHtcbiAgbWFyZ2luLXRvcDogLTAuOTM3NXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15IHtcbiAgICBtYXJnaW4tdG9wOiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXRvcDogMC45Mzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tdG9wOiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtO1xuICB9XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gIGhlaWdodDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gIGhlaWdodDogY2FsYyg3NSUgLSAxLjg3NXJlbSk7XG59XG4uZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbn1cbi5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xufVxuLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1hdXRvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTExIHtcbiAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2Utc2hyaW5rIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTMge1xuICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gIH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMzMzMzMzJSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTIge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICB9XG59XG5cbi5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuODc1cmVtKTtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1tYXJnaW4teS5sYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjg3NXJlbSk7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZ3JpZC1tYXJnaW4teS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS44NzVyZW0pO1xuICB9XG59XG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5wIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogMS42O1xuICB0ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xufVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zdHJvbmcsXG5iIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cbmgxIHNtYWxsLCAuaDEgc21hbGwsXG5oMiBzbWFsbCwgLmgyIHNtYWxsLFxuaDMgc21hbGwsIC5oMyBzbWFsbCxcbmg0IHNtYWxsLCAuaDQgc21hbGwsXG5oNSBzbWFsbCwgLmg1IHNtYWxsLFxuaDYgc21hbGwsIC5oNiBzbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBjb2xvcjogIzgwODA4MDtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgfVxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMTc3OWJhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogIzE0NjhhMDtcbn1cbmEgaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5ociB7XG4gIGNsZWFyOiBib3RoO1xuICBtYXgtd2lkdGg6IDczLjEyNXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgwODA4MDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG5cbnVsIHVsLCB1bCBvbCwgb2wgdWwsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbmRsIGR0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4MDgwODA7XG59XG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzI3MjcyNztcbn1cblxuY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgY29sb3I6ICMyNzI3Mjc7XG59XG5jaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG5hYmJyLCBhYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBkb3R0ZWQgIzE0MTQxNDtcbiAgY3Vyc29yOiBoZWxwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuY29kZSB7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4MDgwODA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3QjdCN0I7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzE0MTQxNDtcbn1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3QjdCN0I7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzE0MTQxNDtcbn1cblxuLnN1YmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDAuMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBjb2xvcjogIzI3MjcyNztcbn1cblxuLmxlYWQge1xuICBmb250LXNpemU6IDEyNSU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxucCArIC5zdGF0IHtcbiAgbWFyZ2luLXRvcDogLTFyZW07XG59XG5cbnVsLm5vLWJ1bGxldCwgb2wubm8tYnVsbGV0IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi50ZXh0LWxlZnQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4udGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi50ZXh0LWp1c3RpZnkge1xuICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAubGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLmxhcmdlLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMjcyNzI3O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgfVxufVxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQ2NzllO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24udGlueSB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24ubGFyZ2Uge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYnV0dG9uLmV4cGFuZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmJ1dHRvbi5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMjYxOTU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuLmJ1dHRvbi53YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4uYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzhiMDA7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuLmJ1dHRvbi5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNTNiMmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5wcmltYXJ5IHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQucHJpbWFyeSwgLmJ1dHRvbi5kaXNhYmxlZC5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnByaW1hcnk6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnksIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnkge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5zZWNvbmRhcnksIC5idXR0b24uZGlzYWJsZWQuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnNlY29uZGFyeTpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF0uc2Vjb25kYXJ5LCAuYnV0dG9uW2Rpc2FibGVkXS5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzLCAuYnV0dG9uW2Rpc2FibGVkXS5zdWNjZXNzIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZGlzYWJsZWQuc3VjY2VzcywgLmJ1dHRvbi5kaXNhYmxlZC5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3MsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLnN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogIzE0MTQxNDtcbn1cbi5idXR0b24uZGlzYWJsZWQud2FybmluZywgLmJ1dHRvbltkaXNhYmxlZF0ud2FybmluZyB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRpc2FibGVkLndhcm5pbmcsIC5idXR0b24uZGlzYWJsZWQud2FybmluZzpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZC53YXJuaW5nOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXS53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4uYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRpc2FibGVkLmFsZXJ0LCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkLmFsZXJ0OmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXS5hbGVydCwgLmJ1dHRvbltkaXNhYmxlZF0uYWxlcnQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLmhvbGxvdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGMzZDVkO1xuICBjb2xvcjogIzBjM2Q1ZDtcbn1cbi5idXR0b24uaG9sbG93OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwYzNkNWQ7XG4gIGNvbG9yOiAjMGMzZDVkO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTU3NTM5O1xuICBjb2xvcjogIzE1NzUzOTtcbn1cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgY29sb3I6ICM4MDU3MDA7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gIGNvbG9yOiAjNjcyNTFhO1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi5jbGVhciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG4uYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhcjpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcjpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5IHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzBjM2Q1ZDtcbiAgY29sb3I6ICMwYzNkNWQ7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1c1tkaXNhYmxlZF0ge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgY29sb3I6ICMxNTc1Mzk7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzW2Rpc2FibGVkXSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmcge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjODA1NzAwO1xuICBjb2xvcjogIzgwNTcwMDtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZzpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICM2NzI1MWE7XG4gIGNvbG9yOiAjNjcyNTFhO1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3Zlci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXNbZGlzYWJsZWRdIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMC40ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICB0b3A6IC0wLjFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblt0eXBlPXRleHRdLCBbdHlwZT1wYXNzd29yZF0sIFt0eXBlPWRhdGVdLCBbdHlwZT1kYXRldGltZV0sIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgW3R5cGU9bW9udGhdLCBbdHlwZT13ZWVrXSwgW3R5cGU9ZW1haWxdLCBbdHlwZT1udW1iZXJdLCBbdHlwZT1zZWFyY2hdLCBbdHlwZT10ZWxdLCBbdHlwZT10aW1lXSwgW3R5cGU9dXJsXSwgW3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4MDgwODA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDIwLCAyMCwgMjAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMTQxNDE0O1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbn1cblt0eXBlPXRleHRdOmZvY3VzLCBbdHlwZT1wYXNzd29yZF06Zm9jdXMsIFt0eXBlPWRhdGVdOmZvY3VzLCBbdHlwZT1kYXRldGltZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgW3R5cGU9bW9udGhdOmZvY3VzLCBbdHlwZT13ZWVrXTpmb2N1cywgW3R5cGU9ZW1haWxdOmZvY3VzLCBbdHlwZT1udW1iZXJdOmZvY3VzLCBbdHlwZT1zZWFyY2hdOmZvY3VzLCBbdHlwZT10ZWxdOmZvY3VzLCBbdHlwZT10aW1lXTpmb2N1cywgW3R5cGU9dXJsXTpmb2N1cywgW3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjcyNzI3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICM4MDgwODA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0I3QjdCO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT1zdWJtaXRdLFxuW3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzgwODA4MDtcbn1cblxuW3R5cGU9ZmlsZV0sXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbCxcblt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgwODA4MDtcbiAgYmFja2dyb3VuZDogIzdCN0I3QjtcbiAgY29sb3I6ICMxNDE0MTQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgwODA4MDtcbn1cbi5maWVsZHNldCBsZWdlbmQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICBwYWRkaW5nOiAwIDAuMTg3NXJlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgwODA4MDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMxNDE0MTQ7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogcmdiJTI4MzksIDM5LCAzOSUyOSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcbiAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAtMXJlbSBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDAgKSB7XG4gIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgfVxufVxuc2VsZWN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI3MjcyNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjODA4MDgwO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3QjdCN0I7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuc2VsZWN0W211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWVkZWI7XG59XG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmFjY29yZGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5hY2NvcmRpb24taXRlbTpsYXN0LWNoaWxkID4gOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjN0I3QjdCO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbjpsYXN0LWNoaWxkOm5vdCguaXMtYWN0aXZlKSA+IC5hY2NvcmRpb24tdGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzdCN0I3QjtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5hY2NvcmRpb24tdGl0bGU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN0I3QjdCO1xufVxuLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGNvbnRlbnQ6IFwiK1wiO1xufVxuLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCTXCI7XG59XG5cbi5hY2NvcmRpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3QjdCN0I7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN0I3QjdCO1xufVxuXG4uYWNjb3JkaW9uLW1lbnUgbGkge1xuICB3aWR0aDogMTAwJTtcbn1cbi5hY2NvcmRpb24tbWVudSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDA7XG59XG4uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICNGRkZGRkYgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPXRydWVdID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItdG9wLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAjRkZGRkZGIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4uc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbi5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmbGV4OiAwIDAgYXV0bztcbn1cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmJ1dHRvbi1ncm91cC50aW55IC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNnJlbTtcbn1cbi5idXR0b24tZ3JvdXAuc21hbGwgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24tZ3JvdXAubGFyZ2UgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyNjE5NTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzVlNWU1ZTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIyYmI1YjtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjOGIwMDtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uIHtcbiAgZmxleDogMSAxIDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbG9yOiAjOGVhYTk2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5jbG9zZS1idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuLmNsb3NlLWJ1dHRvbjpob3ZlciwgLmNsb3NlLWJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmNsb3NlLWJ1dHRvbi5zbWFsbCB7XG4gIHJpZ2h0OiAwLjY2cmVtO1xuICB0b3A6IDAuMzNlbTtcbiAgZm9udC1zaXplOiAyLjdlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uY2xvc2UtYnV0dG9uLCAuY2xvc2UtYnV0dG9uLm1lZGl1bSB7XG4gIHJpZ2h0OiAxNXB4O1xuICB0b3A6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMi43ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG4ubWVudSBpbnB1dCxcbi5tZW51IHNlbGVjdCxcbi5tZW51IGEsXG4ubWVudSBidXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm1lbnUgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudSwgLm1lbnUuaG9yaXpvbnRhbCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cbi5tZW51LnZlcnRpY2FsIHtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4ubWVudS5leHBhbmRlZCBsaSB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4ubWVudS5zaW1wbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5tZW51LnNpbXBsZSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVudS5tZWRpdW0tdmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG4gIC5tZW51Lm1lZGl1bS1zaW1wbGUgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51LmxhcmdlLWhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5tZW51LmxhcmdlLXZlcnRpY2FsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tZW51LmxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5tZW51LnhsYXJnZS1ob3Jpem9udGFsIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAubWVudS54bGFyZ2UtdmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lbnUueGxhcmdlLWV4cGFuZGVkIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG4gIC5tZW51LnhsYXJnZS1zaW1wbGUgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbn1cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWVudS5pY29ucyBhIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51Lmljb24tdG9wIGEsIC5tZW51Lmljb24tcmlnaHQgYSwgLm1lbnUuaWNvbi1ib3R0b20gYSwgLm1lbnUuaWNvbi1sZWZ0IGEge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4ubWVudS5pY29uLWxlZnQgbGkgYSBpLFxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi10b3AgbGkgYSB7XG4gIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbn1cbi5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHtcbiAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xufVxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLm1lbnUuYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IGxpIC5zdWJtZW51IGxpIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5tZW51LmFsaWduLWNlbnRlciBsaSAuc3VibWVudSBsaSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5tZW51IC5tZW51LXRleHQge1xuICBwYWRkaW5nOiAwO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjRkZGRkZGLCAwIDE0cHggMCAjRkZGRkZGO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjODA4MDgwO1xuICBib3gtc2hhZG93OiAwIDdweCAwICM4MDgwODAsIDAgMTRweCAwICM4MDgwODA7XG59XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMxNDE0MTQ7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzE0MTQxNCwgMCAxNHB4IDAgIzE0MTQxNDtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjMjcyNzI3O1xuICBib3gtc2hhZG93OiAwIDdweCAwICMyNzI3MjcsIDAgMTRweCAwICMyNzI3Mjc7XG59XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4MDgwODA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRTFFMUU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiA1cHg7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDBweDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItcmlnaHQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwcHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMHB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMHB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMHB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiBpbnNldCAwcHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUueGxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS54bGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlcjogaW5zZXQgMHB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LnhsYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDBweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICB9XG59XG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDtcbn1cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAwcHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG5cbi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzgwODA4MDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogaW5zZXQgMHB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyOiBpbnNldCAwcHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSA+IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS5qcy1kcm9wZG93bi1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4ucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbi5mbGV4LXZpZGVvIGlmcmFtZSxcbi5mbGV4LXZpZGVvIG9iamVjdCxcbi5mbGV4LXZpZGVvIGVtYmVkLFxuLmZsZXgtdmlkZW8gdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4uZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmxhYmVsLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5sYWJlbC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5sYWJlbC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4ubGFiZWwud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMTQxNDE0O1xufVxuLmxhYmVsLmFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbi5tZWRpYS1vYmplY3QgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1haW4tc2VjdGlvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjAsIDIwLCAyMCwgMC43KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtY2xvc2FibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjMTQxNDE0O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub2ZmLWNhbnZhcyB7XG4gIG91dGxpbmU6IDA7XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLXB1c2gge1xuICB6LWluZGV4OiAxMjtcbn1cbi5vZmYtY2FudmFzLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDUwO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDIwLCAyMCwgMjAsIDAuNyk7XG59XG4ub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogIzE0MTQxNDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiA1MDtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgyMCwgMjAsIDIwLCAwLjcpO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDIwLCAyMCwgMjAsIDAuNyk7XG59XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDIwLCAyMCwgMjAsIDAuNyk7XG59XG5cbi5wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDIwLCAyMCwgMjAsIDAuNyk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgyMCwgMjAsIDIwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci14bGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3IteGxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3IteGxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLXhsYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLXhsYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3IteGxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci14bGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4ucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5wYWdpbmF0aW9uIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5wYWdpbmF0aW9uIGEsXG4ucGFnaW5hdGlvbiBidXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC44MTI1cmVtIDEuMzEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICMxNDE0MTQ7XG59XG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbn1cbi5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgcGFkZGluZzogMC44MTI1cmVtIDEuMzEyNXJlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjOGVhYTk2O1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICBwYWRkaW5nOiAwLjgxMjVyZW0gMS4zMTI1cmVtO1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gIHBhZGRpbmc6IDAuODEyNXJlbSAxLjMxMjVyZW07XG4gIGNvbnRlbnQ6IFwi4oCmXCI7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4ucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4ucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCq1wiO1xufVxuXG4ucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuLnBhZ2luYXRpb24tbmV4dC5kaXNhYmxlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIGNvbnRlbnQ6IFwiwrtcIjtcbn1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICB0b3A6IDA7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG4uc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4uemYtaGFzLXNjcm9sbCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnJldmVhbCB7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMzBweCAwIDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAucmV2ZWFsIHtcbiAgb3V0bGluZTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cbi5yZXZlYWwgLmNvbHVtbiB7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucmV2ZWFsIHtcbiAgICB3aWR0aDogMzAwcHg7XG4gICAgbWF4LXdpZHRoOiA3My4xMjVyZW07XG4gIH1cbn1cbi5yZXZlYWwuY29sbGFwc2Uge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnJldmVhbC50aW55IHtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogNzMuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucmV2ZWFsLnNtYWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogNzMuMTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucmV2ZWFsLmxhcmdlIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogNzMuMTI1cmVtO1xuICB9XG59XG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG50aGVhZCxcbnRib2R5LFxudGZvb3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjJmMmYyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxudGhlYWQge1xuICBiYWNrZ3JvdW5kOiAjZjlmOWY5O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxudGZvb3Qge1xuICBiYWNrZ3JvdW5kOiAjZjJmMmYyO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cblxudGhlYWQgdHIsXG50Zm9vdCB0ciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxudGhlYWQgdGgsXG50aGVhZCB0ZCxcbnRmb290IHRoLFxudGZvb3QgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50Ym9keSB0aCxcbnRib2R5IHRkIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xufVxuXG50Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xufVxuXG50YWJsZS51bnN0cmlwZWQgdGJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xufVxudGFibGUudW5zdHJpcGVkIHRib2R5IHRyIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMmYyZjI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgdGFibGUuc3RhY2sgdGhlYWQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgdGFibGUuc3RhY2sgdHIsXG4gIHRhYmxlLnN0YWNrIHRoLFxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxudGFibGUuc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG50YWJsZS5ob3ZlciB0aGVhZCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG59XG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG59XG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG59XG50YWJsZS5ob3Zlcjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xufVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3QjdCN0I7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4udGFiczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cblxuLnRhYnMudmVydGljYWwgPiBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi50YWJzLnNpbXBsZSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDA7XG59XG4udGFicy5zaW1wbGUgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG59XG4udGFicy5wcmltYXJ5ID4gbGkgPiBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4udGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogIzE2NzNiMTtcbn1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDtcbn1cbi50YWJzLXRpdGxlID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC50YWJzLXRpdGxlID4gYSB7XG4gIG91dGxpbmU6IDA7XG59XG4udGFicy10aXRsZSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjRkZGRkZGO1xuICBjb2xvcjogIzE0NjhhMDtcbn1cbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kOiAjN0I3QjdCO1xuICBjb2xvcjogIzE3NzliYTtcbn1cblxuLnRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3QjdCN0I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzdCN0I3QjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbi50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDIwLCAyMCwgMjAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG59XG5hLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDIzLCAxMjEsIDE4NiwgMC41KTtcbn1cbmEudGh1bWJuYWlsIGltYWdlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzFFMUUxRTtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG5cbi50aXRsZS1iYXItbGVmdCxcbi50aXRsZS1iYXItcmlnaHQge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRTFFMUU7XG59XG4udG9wLWJhciBpbnB1dCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udG9wLWJhciBpbnB1dC5idXR0b24ge1xuICB3aWR0aDogYXV0bztcbn1cbi50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4udG9wLWJhciAudG9wLWJhci1yaWdodCB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudG9wLWJhciB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg3LjQ5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2Uge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5My43NDg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLXhsYXJnZSAudG9wLWJhci1sZWZ0LFxuICAudG9wLWJhci5zdGFja2VkLWZvci14bGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBtYXJnaW46IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xufVxuXG4udG9wLWJhci1sZWZ0LFxuLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA4Ny40OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4Ny40OTg3NWVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIGFuZCAobWF4LXdpZHRoOiA5My43NDg3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDg3LjQ5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkzLjc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJvcmRlcjogMDtcbn1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGNsaXA6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmFsaWduLWxlZnQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLWp1c3RpZnkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbn1cblxuLmFsaWduLWxlZnQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0LnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmFsaWduLXRvcCB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tc2VsZi10b3Age1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tc2VsZi1ib3R0b20ge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLW1pZGRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmFsaWduLXN0cmV0Y2gge1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbn1cblxuLmFsaWduLXNlbGYtc3RyZXRjaCB7XG4gIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG59XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNtYWxsLW9yZGVyLTEge1xuICBvcmRlcjogMTtcbn1cblxuLnNtYWxsLW9yZGVyLTIge1xuICBvcmRlcjogMjtcbn1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMztcbn1cblxuLnNtYWxsLW9yZGVyLTQge1xuICBvcmRlcjogNDtcbn1cblxuLnNtYWxsLW9yZGVyLTUge1xuICBvcmRlcjogNTtcbn1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5tZWRpdW0tb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubWVkaXVtLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5tZWRpdW0tb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzO1xuICB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnhsYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICAueGxhcmdlLW9yZGVyLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC54bGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLnhsYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDtcbiAgfVxuICAueGxhcmdlLW9yZGVyLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC54bGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC54bGFyZ2UtZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAueGxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLnhsYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG59XG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDtcbn1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDtcbn1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNztcbn1cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpO1xuICB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTtcbiAgfVxufVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbn1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY2N3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWNjdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG59XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7XG59XG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7XG4gIH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7XG4gIH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xufVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLypcbiAgTXkgY3VzdG9tIHN0eWxlczpcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xuKi9cbi5zY3JlZW4tcmVhZGVyLXRleHQge1xuICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogMCAwIDJweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMjE3NTliO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRvcDogNXB4O1xuICB3aWR0aDogYXV0bztcbiAgei1pbmRleDogMTAwMDAwO1xufVxuXG4jd3BhZG1pbmJhciB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG5ib2R5LmFkbWluLWJhci5mLXRvcGJhci1maXhlZCAuc3RpY2t5LmZpeGVkIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbmJvZHkuYWRtaW4tYmFyLm9mZmNhbnZhcyAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdG9wOiAyLjg3NXJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4LjkzNzVlbSkge1xuICBib2R5LmFkbWluLWJhci5vZmZjYW52YXMgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdG9wOiAycmVtO1xuICB9XG59XG5cbi53cC1jYXB0aW9uID4gZmlnY2FwdGlvbiB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjOTk5O1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbnAud3AtY2FwdGlvbi10ZXh0IHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAjNjY2O1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xufVxuXG4uYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMDtcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxpZ25jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLmdhbGxlcnkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkge1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTEgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0xID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtMiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTIgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTMgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy0zID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMzMzMzMyUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTQgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy00ID4gLmdhbGxlcnktaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5nYWxsZXJ5LmdhbGxlcnktY29sdW1ucy01ID4gLmdhbGxlcnktaXRlbSB7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNiA+IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTYgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NjY2NjY3JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtNyA+IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTcgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTcgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MTQyODU3JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOCA+IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTggPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMi41JSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeS5nYWxsZXJ5LWNvbHVtbnMtOSA+IC5nYWxsZXJ5LWl0ZW0ge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjg3NXJlbSk7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdhbGxlcnkuZ2FsbGVyeS1jb2x1bW5zLTkgPiAuZ2FsbGVyeS1pdGVtIHtcbiAgICB3aWR0aDogY2FsYygxMS4xMTExMTExMTExJSAtIDEuODc1cmVtKTtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyMCwgMjAsIDIwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbn1cbi5nYWxsZXJ5IC5nYWxsZXJ5LWljb24gPiBhOmhvdmVyLCAuZ2FsbGVyeSAuZ2FsbGVyeS1pY29uID4gYTpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjMsIDEyMSwgMTg2LCAwLjUpO1xufVxuLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGEgaW1hZ2Uge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmdhbGxlcnkgLmdhbGxlcnktaWNvbiA+IGltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IHNvbGlkIDRweCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyMCwgMjAsIDIwLCAwLjIpO1xuICBsaW5lLWhlaWdodDogMDtcbn1cblxuYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuXG5ib2R5LFxuaHRtbCB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBuby1jb21tb24tbGlnYXR1cmVzICFpbXBvcnRhbnQ7XG59XG5cbi5ncmVjYXB0Y2hhLWJhZGdlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDQ0LjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNDVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA2NHJlbTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuXG4udGV4dC11cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucGxheS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgZm9udC1zaXplOiA3MHB4O1xufVxuXG4ubW9yZXRhZy13cmFwcGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE4cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuXG5zZWxlY3Q6Zm9jdXMge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uc2VwZXJhdG9yIHtcbiAgd2lkdGg6IDYycHg7XG4gIGhlaWdodDogMnB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kZWZhdWx0LXBhZ2UgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLm92ZXJsYXktaG92ZXItaXRlbTpob3ZlciAub3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG59XG4ub3ZlcmxheS1ob3Zlci1pdGVtIC5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogMC4zcyBvcGFjaXR5O1xufVxuLm92ZXJsYXktaG92ZXItaXRlbSAub3ZlcmxheS50ZXh0LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmFkaWVudC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgMzAlLCByZ2JhKDAsIDAsIDAsIDAuNikgODAlLCByZ2JhKDMwLCAzMCwgMzAsIDAuOCkgMTAwJSk7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuLm1vYmlsZS1ncmFkaWVudC5ncmFkaWVudC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCkgMzAlLCByZ2JhKDAsIDAsIDAsIDAuNikgODAlLCByZ2JhKDMwLCAzMCwgMzAsIDAuNykgMTAwJSk7XG4gIHotaW5kZXg6IDM7XG59XG5cbi5ncmFkaWVudC1ob3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIwLCAyMCwgMjAsIDAuNyk7XG4gIHotaW5kZXg6IDM7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5iaWctYmFja2dyb3VuZC1pbWFnZSB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuYmlnLWJhY2tncm91bmQtaW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuLmJpZy1iYWNrZ3JvdW5kLWltYWdlIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuYmlnLWJhY2tncm91bmQtaW1hZ2UgaDEge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG59XG4uYmlnLWJhY2tncm91bmQtaW1hZ2Uub3VyLXN0b3J5IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxNDE0MTQ7XG59XG4uYmlnLWJhY2tncm91bmQtaW1hZ2Uub3VyLXN0b3J5IC5oZWFkaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFFMUUxRTtcbn1cbi5iaWctYmFja2dyb3VuZC1pbWFnZS5mcm9udC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5iaWctYmFja2dyb3VuZC1pbWFnZS5ncmlkLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1ib3R0b206IDYwcHg7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG4uYmlnLWJhY2tncm91bmQtaW1hZ2Uud2hhdC13ZS1kby13cmFwcGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cbi5iaWctYmFja2dyb3VuZC1pbWFnZS5waXBlbGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5iaWctYmFja2dyb3VuZC1pbWFnZSB7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5ib3JkZXItYm90dG9tLWJsYWNrIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAgIWltcG9ydGFudDtcbn1cblxuLmJvcmRlci10b3AtYmxhY2sge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMCAhaW1wb3J0YW50O1xufVxuXG4uc3VibWl0LWNhdGVnb3J5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTVweDtcbiAgdG9wOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRTFFMUU7XG4gIHotaW5kZXg6IDU7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuXG4uc3VibWl0LWNhdGVnb3J5OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIHJpZ2h0OiAtMTNweDtcbiAgdG9wOiA1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFFMUUxRTtcbiAgYm9yZGVyOiBzb2xpZCAjODM4MzgzO1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDRweDtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLyogSUUxMSBoaWRlIG5hdGl2ZSBidXR0b24gKHRoYW5rcyBNYXR0ISkgKi9cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zZWxlY3QtZGl2IHNlbGVjdCB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4uZC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1mYW1pbHk6IENvdXJpZXIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNTVweDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246YWN0aXZlIHtcbiAgY29sb3I6ICM4ZWFhOTY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDcwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICB0b3A6IDEwcHg7XG4gICAgcmlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuLnJldmVhbCB7XG4gIG1heC13aWR0aDogMjYwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICBwYWRkaW5nLXRvcDogNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnJldmVhbCAuYmxvY2stdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI4LjEyNWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1heC13aWR0aDogNTEwcHg7XG4gICAgd2lkdGg6IDUxMHB4O1xuICAgIHBhZGRpbmctdG9wOiA4MHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICB3aWR0aDogNjUwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgbWF4LXdpZHRoOiA3NzBweDtcbiAgICB3aWR0aDogNzcwcHg7XG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xuICB9XG59XG5cbi5ncmlkLWNvbnRhaW5lciAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcbiAgcGFkZGluZy1yaWdodDogM3B4O1xuICBwYWRkaW5nLWxlZnQ6IDNweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyIC5ncmlkLXgubmFycm93LWdyaWQtcGFkZGluZy14ID4gLmNlbGwuc21hbGwtNjpudGgtY2hpbGQoMSksIC5ncmlkLWNvbnRhaW5lciAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteCA+IC5jZWxsLnNtYWxsLTY6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmdyaWQtY29udGFpbmVyIC5ncmlkLXgubmFycm93LWdyaWQtcGFkZGluZy14ID4gLmNlbGwuc21hbGwtNjpudGgtY2hpbGQoMm4pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1jb250YWluZXIgLmdyaWQteC5uYXJyb3ctZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5tZWRpdW0tNDpudGgtY2hpbGQoMSksIC5ncmlkLWNvbnRhaW5lciAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteCA+IC5jZWxsLm1lZGl1bS00Om50aC1jaGlsZCgzbisxKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5ncmlkLWNvbnRhaW5lciAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteCA+IC5jZWxsLm1lZGl1bS00Om50aC1jaGlsZCgzbikge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyID4gLmdyaWQteC5uYXJyb3ctZ3JpZC1wYWRkaW5nLXgtbWVkaXVtLXVwID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgfVxuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5uby1wYWRkaW5nLXgtbWVkaXVtLXVwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtY29udGFpbmVyIC5ncmlkLXgubmFycm93LWdyaWQtcGFkZGluZy14LWxhcmdlLXVwID4gLmNlbGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcbiAgfVxuICAuZ3JpZC1jb250YWluZXIgLmdyaWQteC5uYXJyb3ctZ3JpZC1wYWRkaW5nLXgtbGFyZ2UtdXAgPiAuY2VsbDpub3QoLm5vLXBhZGRpbmcpOmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIH1cbiAgLmdyaWQtY29udGFpbmVyIC5ncmlkLXgubmFycm93LWdyaWQtcGFkZGluZy14LWxhcmdlLXVwID4gLmNlbGw6bm90KC5uby1wYWRkaW5nKTpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG4gIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLm5vLXBhZGRpbmctcmlnaHQtc21hbGwtb25seSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5uby1wYWRkaW5nLWxlZnQtc21hbGwtb25seSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5uby1wYWRkaW5nLXgge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5uby1tYXJnaW4tdG9wI2ZsZXhpYmxlLWNvbnRlbnQtMCB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5IHtcbiAgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm8tY29tbW9uLWxpZ2F0dXJlcztcbn1cblxuLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNXB4O1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuXG4jdmlkZW8tbW9kYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nOiAyNXB4IDAgMDtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4jdmlkZW8tbW9kYWwgLnZpZGVvLXBsYXktYnRuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cbiN2aWRlby1tb2RhbDpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4jdmlkZW8tbW9kYWwgI3ZpZGVvLXBsYWNlaG9sZGVyIHtcbiAgaGVpZ2h0OiAzNXZoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgI3ZpZGVvLW1vZGFsICN2aWRlby1wbGFjZWhvbGRlciB7XG4gICAgaGVpZ2h0OiA3MHZoO1xuICB9XG59XG4jdmlkZW8tbW9kYWwgI3ZpZGVvLXBsYWNlaG9sZGVyICN2YXNhLXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gICN2aWRlby1tb2RhbCB7XG4gICAgbWF4LXdpZHRoOiA5NzBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLnBlZy1jYXBpdGFsLXBhcnRuZXJzIGgxLCAucGVnLWRldmVsb3BtZW50IGgxLCAucGVnLWNvbnN0cnVjdGlvbiBoMSwgLnBlZy1wcm9wZXJ0eS1ncm91cCBoMSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5wZWctY2FwaXRhbC1wYXJ0bmVycywgLnBlZy1kZXZlbG9wbWVudCwgLnBlZy1jb25zdHJ1Y3Rpb24sIC5wZWctcHJvcGVydHktZ3JvdXAge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbiAgLnBlZy1jYXBpdGFsLXBhcnRuZXJzIC5pbmZvLWJhbm5lciAuaW5mby1iYW5uZXItcGFyYWdyYXBoIC50ZXh0LWxlZnQsIC5wZWctZGV2ZWxvcG1lbnQgLmluZm8tYmFubmVyIC5pbmZvLWJhbm5lci1wYXJhZ3JhcGggLnRleHQtbGVmdCwgLnBlZy1jb25zdHJ1Y3Rpb24gLmluZm8tYmFubmVyIC5pbmZvLWJhbm5lci1wYXJhZ3JhcGggLnRleHQtbGVmdCwgLnBlZy1wcm9wZXJ0eS1ncm91cCAuaW5mby1iYW5uZXIgLmluZm8tYmFubmVyLXBhcmFncmFwaCAudGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAucGVnLWNhcGl0YWwtcGFydG5lcnMgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmxvZ28sIC5wZWctZGV2ZWxvcG1lbnQgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmxvZ28sIC5wZWctY29uc3RydWN0aW9uIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5sb2dvLCAucGVnLXByb3BlcnR5LWdyb3VwIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5sb2dvIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLm1vYmlsZS1tZW51LFxuICAuc2l0ZS10aXRsZS1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4Ny40OTg3NWVtKSB7XG4gIC5kZXNrdG9wLW1lbnUsXG4gIC5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaXRlLWRlc2t0b3AtdGl0bGUgYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4ucG9zdC1uYXZpZ2F0aW9uOjpiZWZvcmUsIC5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBmbGV4LWJhc2lzOiAwO1xuICBvcmRlcjogMTtcbn1cbi5wb3N0LW5hdmlnYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5uYXYtcHJldmlvdXMge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLm5hdi1uZXh0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uc2l0ZS1oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDtcbn1cbi5zaXRlLWhlYWRlciAudGl0bGUtYmFyLXRpdGxlIGEsXG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXItdGl0bGUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNpdGUtaGVhZGVyIC50aXRsZS1iYXItdGl0bGUgaW1nLFxuLnNpdGUtaGVhZGVyIC50b3AtYmFyLXRpdGxlIGltZyB7XG4gIHdpZHRoOiAxNDJweDtcbiAgcGFkZGluZy10b3A6IDI1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5zaXRlLWhlYWRlciAudGl0bGUtYmFyLXRpdGxlIGltZyxcbiAgLnNpdGUtaGVhZGVyIC50b3AtYmFyLXRpdGxlIGltZyB7XG4gICAgcGFkZGluZy10b3A6IDE2cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi5zaXRlLWhlYWRlciAudG9wLWJhciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbjogNTJweCAwIDI2cHggNDBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbSBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLnNpdGUtaGVhZGVyIC50b3AtYmFyIC5tZW51LWl0ZW0ubWVudS1pdGVtLWhhcy1jaGlsZHJlbiA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGVhYTk2O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHRyYW5zaXRpb246IDFzIGVhc2U7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbS5tZW51LWl0ZW0taGFzLWNoaWxkcmVuLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGE6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzhlYWE5NjtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbS5jdXJyZW50X3BhZ2VfaXRlbSA+IGE6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzhlYWE5NjtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbSBhOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGVhYTk2O1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICB3aWR0aDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDFzIGVhc2U7XG4gIHRyYW5zaXRpb246IDFzIGVhc2U7XG4gIG1hcmdpbi10b3A6IDVweDtcbn1cbi5zaXRlLWhlYWRlciAudG9wLWJhciAubWVudS1pdGVtLmN1cnJlbnQtbWVudS1pdGVtIGE6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzhlYWE5NjtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICBoZWlnaHQ6IDE4cHg7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbSBhOmhvdmVyIHtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLm1lbnUtaXRlbSBhOmhvdmVyOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IGNhbGMoMTAwJSArIDI4cHgpO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBwYWRkaW5nLXRvcDogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgei1pbmRleDogNTAwO1xufVxuLnNpdGUtaGVhZGVyIC50b3AtYmFyIC5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZW51LWl0ZW0ge1xuICBtYXJnaW46IDAgMTI5cHggMTJweCAxOXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLnNpdGUtaGVhZGVyIC50b3AtYmFyIC5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IC5tZW51LWl0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDIzcHg7XG59XG4uc2l0ZS1oZWFkZXIgLnRvcC1iYXIgLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLm1lbnUtaXRlbSBhIHtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2l0ZS1oZWFkZXIgLnRpdGxlLWJhciB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLnNpdGUtaGVhZGVyIC50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIG1hcmdpbi10b3A6IDM3cHg7XG4gIG1hcmdpbi1ib3R0b206IDM3cHg7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZzogMTVweCAycHg7XG59XG4uc2l0ZS1oZWFkZXIgLnRpdGxlLWJhciAubWVudS1pY29uOmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhlYWE5NjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDExcHggMCAjOGVhYTk2LCAwIDIycHggMCAjOGVhYTk2O1xuICBib3gtc2hhZG93OiAwIDExcHggMCAjOGVhYTk2LCAwIDIycHggMCAjOGVhYTk2O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBoZWlnaHQ6IDVweDtcbiAgd2lkdGg6IDMycHg7XG59XG5cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IGxpIHtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAuY2xvc2UtYnV0dG9uIHtcbiAgY29sb3I6ICM4ZWFhOTY7XG4gIGZvbnQtc2l6ZTogNTBweDtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IGEge1xuICBsZWZ0OiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDIwcHg7XG4gIGxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGVhYTk2O1xuICB3aWR0aDogMDtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAxcyBlYXNlO1xuICB0cmFuc2l0aW9uOiAxcyBlYXNlO1xufVxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgLm1lbnUgLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGE6YWZ0ZXIsXG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAubWVudSAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAxO1xufVxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgLm1lbnUgYTpob3ZlcjphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAxO1xufVxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUgLm1lbnUgbGkge1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAubWVudSAubmVzdGVkIHtcbiAgbWFyZ2luOiAxNXB4IDAgMDtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAuc3VibWVudS10b2dnbGUge1xuICB0b3A6IC0xMHB4O1xuICByaWdodDogMTBweDtcbn1cbi5tb2JpbGUtb2ZmLWNhbnZhcy1tZW51IC5zdWJtZW51LXRvZ2dsZTphZnRlciB7XG4gIGJvcmRlcjogc29saWQgIzgzODM4MztcbiAgYm9yZGVyLXdpZHRoOiAwIDFweCAxcHggMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA1cHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4ubW9iaWxlLW9mZi1jYW52YXMtbWVudSAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXTphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICBtYXJnaW4tdG9wOiAxMXB4O1xufVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgY29sb3I6ICM4ZWFhOTY7XG59XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIG1heC13aWR0aDogNzMuMTI1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5tYWluLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG5cbi5tYWluLWdyaWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1haW4tZ3JpZCB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxufVxuLm1haW4tZ3JpZCBoMiBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4ubWFpbi1ncmlkLnNpZGViYXItbGVmdCAubWFpbi1jb250ZW50IHtcbiAgb3JkZXI6IDE7XG59XG4ubWFpbi1ncmlkLnNpZGViYXItbGVmdCAuc2lkZWJhciB7XG4gIG9yZGVyOiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLm1haW4tY29udGVudCB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm1haW4tZ3JpZC5zaWRlYmFyLWxlZnQgLnNpZGViYXIge1xuICAgIG9yZGVyOiAxO1xuICB9XG59XG4ubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQtZnVsbC13aWR0aCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjg3NXJlbSk7XG4gIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC45Mzc1cmVtO1xufVxuLm1haW4tZ3JpZCAubWFpbi1jb250ZW50IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuODc1cmVtKTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubWFpbi1ncmlkIC5tYWluLWNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY2NjY2NjclIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5tYWluLWdyaWQgLnNpZGViYXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMS44NzVyZW0pO1xuICBtYXJnaW4tcmlnaHQ6IDAuOTM3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5tYWluLWdyaWQgLnNpZGViYXIge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMS44NzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjkzNzVyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuRm9vdGVyIFNlY3Rpb25cbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uZm9vdGVyLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvIDE1cHg7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOGVhYTk2O1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5mb290ZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5mb290ZXItY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG4gIH1cbn1cbi5mb290ZXItY29udGFpbmVyIGEsXG4uZm9vdGVyLWNvbnRhaW5lciBhOmFjdGl2ZSxcbi5mb290ZXItY29udGFpbmVyIGE6bGluayxcbi5mb290ZXItY29udGFpbmVyIGE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmZvb3Rlci1jb250YWluZXIgLmZvb3Rlci1jb250ZW50cyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuLmZvb3Rlci1jb250YWluZXIgLm5hbWUtc2xvZ29uIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbn1cbi5mb290ZXItY29udGFpbmVyIC5uYW1lLXNsb2dvbiAubmFtZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmZvb3Rlci1jb250YWluZXIgLm5hbWUtc2xvZ29uIC5uYW1lIHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjOGVhYTk2O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZm9vdGVyLWNvbnRhaW5lciAubmFtZS1zbG9nb24gLnNsb2dhbnMgLnNsb2dhbiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZm9vdGVyLWNvbnRhaW5lciAubmFtZS1zbG9nb24gLnNsb2dhbnMge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIH1cbn1cbi5mb290ZXItY29udGFpbmVyIC5uYW1lLXNsb2dvbiAubmFtZS1icmVhay1zbWFsbCB7XG4gIGJvcmRlci1jb2xvcjogIzhlYWE5NjtcbiAgd2lkdGg6IDE1cHg7XG4gIG1hcmdpbjogNXB4IDA7XG59XG4uZm9vdGVyLWNvbnRhaW5lciAuc29jaWFsLWljb25zIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLmZvb3Rlci1jb250YWluZXIgLnNvY2lhbC1pY29ucyAuaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItY29udGFpbmVyIC5zb2NpYWwtaWNvbnMge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmZvb3Rlci1jb250YWluZXIgLnNvY2lhbC1pY29ucyB7XG4gICAgcGFkZGluZy10b3A6IDI1cHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbiAgLmZvb3Rlci1jb250YWluZXIgLnNvY2lhbC1pY29ucyAuaWNvbiB7XG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgfVxufVxuLmZvb3Rlci1jb250YWluZXIgLnBob25lIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLmZvb3Rlci1jb250YWluZXIgLmNvcHlyaWdodCB7XG4gIHBhZGRpbmctdG9wOiAzMHB4O1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICBjb2xvcjogIzgwODA4MDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItY29udGFpbmVyIC5jb3B5cmlnaHQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4uZm9vdGVyLWNvbnRhaW5lciAuY29udGFjdCBwIHtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItY29udGFpbmVyIC5jb250YWN0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG5ib2R5I3RpbnltY2Uge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogNzMuMTI1cmVtO1xuICBwYWRkaW5nOiAxLjI1cmVtICFpbXBvcnRhbnQ7XG59XG5cbi5idG4ge1xuICBwYWRkaW5nOiAxNnB4IDI4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uYnRuLmJ0bi13aGl0ZS1vdXRsaW5lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGO1xufVxuLmJ0bi5idG4td2hpdGUtb3V0bGluZSBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uYnRuLmJ0bi13aGl0ZS1vdXRsaW5lOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgY29sb3I6ICMwMDA7XG59XG4uYnRuLmJ0bi13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmJ0bi5idG4td2hpdGUgYSB7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmJ0bi5idG4td2hpdGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRTVFN0U5O1xuICBjb2xvcjogIzAwMDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuaGVyby13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbi5mZWF0dXJlZC1oZXJvIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBoZWlnaHQ6IGF1dG87XG59XG4uZmVhdHVyZWQtaGVybyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbiAuaGVhZGVyLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyNzI3O1xuICBwYWRkaW5nOiA0MHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIHotaW5kZXg6IDI1O1xuICB3aWR0aDogMTAwJTtcbn1cbi5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uIC5oZWFkZXItc2VjdGlvbiBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4uZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbiAuaGVhZGVyLXNlY3Rpb24gLnBvc3QtbWV0YS1zZWN0aW9uIHtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4uZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbiAuaGVhZGVyLXNlY3Rpb24gLnBvc3QtbWV0YS1zZWN0aW9uID4gc3BhbiB7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24gLmhlYWRlci1zZWN0aW9uIC5wb3N0LW1ldGEtc2VjdGlvbiA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uIC5oZWFkZXItc2VjdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogNDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24gLmhlYWRlci1zZWN0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gIH1cbiAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24gLmhlYWRlci1zZWN0aW9uIC5wb3N0LW1ldGEtc2VjdGlvbiB7XG4gICAgY29sb3I6ICNGRkZGRkY7XG4gIH1cbiAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24gLmhlYWRlci1zZWN0aW9uIC5wb3N0LW1ldGEtc2VjdGlvbiBhIHtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24gLmhlYWRlci1zZWN0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDYwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDY4cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbiAuaGVhZGVyLXNlY3Rpb24ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsIC5oMSB7XG4gIGZvbnQtZmFtaWx5OiBzZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi53Zi1hY3RpdmUgaDEsXG4ud2YtYWN0aXZlIGgyLFxuLndmLWFjdGl2ZSBoMyxcbi53Zi1hY3RpdmUgaDQsIC53Zi1hY3RpdmUgLmgxIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbn1cblxuaDMsXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLndmLWFjdGl2ZSBoMyxcbi53Zi1hY3RpdmUgaDUge1xuICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMzVweDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG59XG4ud2YtYWN0aXZlIGgxLCAud2YtYWN0aXZlIC5oMSB7XG4gIGZvbnQtc2l6ZTogMzBweDtcbn1cblxuaDIge1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLndmLWFjdGl2ZSBoMiB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbn1cblxuaDMge1xuICBmb250LXNpemU6IDIycHg7XG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xufVxuLndmLWFjdGl2ZSBoMyB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xufVxuLndmLWFjdGl2ZSBoNCB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuaDUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuLndmLWFjdGl2ZSBoNSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cblxuaDYge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xufVxuLndmLWFjdGl2ZSBoNiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiA1MXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA1MnB4O1xuICB9XG4gIC53Zi1hY3RpdmUgaDEsIC53Zi1hY3RpdmUgLmgxIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgfVxuICAud2YtYWN0aXZlIGgyIHtcbiAgICBmb250LXNpemU6IDM2cHg7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMzRweDtcbiAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgfVxuICAud2YtYWN0aXZlIGgzIHtcbiAgICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDM0cHg7XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuICAud2YtYWN0aXZlIGg0IHtcbiAgICBmb250LXNpemU6IDI4cHg7XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgfVxuICAud2YtYWN0aXZlIGg1IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gIH1cbiAgaDYge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgfVxuICAud2YtYWN0aXZlIGg2IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cbnAge1xuICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4ud2YtYWN0aXZlIHAge1xuICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBhOmZvY3VzLCBidXR0b246Zm9jdXMgW2RhdGEtd2hhdGlucHV0PXRvdWNoXSBhOmZvY3VzLFxuYnV0dG9uOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuYSxcbmE6YWN0aXZlLFxuYTpmb2N1cyxcbmE6bGluayxcbmE6dmlzaXRlZCB7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuXG5hW3RhcmdldD1fYmxhbmtdIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbmEubGluay13aGl0ZSxcbmEubGluay13aGl0ZTphY3RpdmUsXG5hLmxpbmstd2hpdGU6Zm9jdXMsXG5hLmxpbmstd2hpdGU6bGluayxcbmEubGluay13aGl0ZTp2aXNpdGVkIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5cbi8qYW5pbWF0aW9uIGVsZW1lbnQqL1xuLmFuaW1hdGlvbi1lbGVtZW50LFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWRvd24sIC5hbmltYXRpb24tZWxlbWVudC5zbGlkZS1sZWZ0LCAuYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQsIC5hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cCxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS1kb3duLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWxlZnQsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtdXAge1xuICBvcGFjaXR5OiAwO1xuICAtbW96LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGxpbmVhciwgb3BhY2l0eSAxcyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cyBsaW5lYXIsIG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGxpbmVhciwgb3BhY2l0eSAxcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWRvd24uaW4tdmlldywgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWxlZnQuaW4tdmlldywgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLXJpZ2h0LmluLXZpZXcsIC5hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cC5pbi12aWV3LFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWRvd24uaW4tdmlldyxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS1sZWZ0LmluLXZpZXcsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQuaW4tdmlldyxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cC5pbi12aWV3IHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtZG93bi5vdXQtb2YtdmlldywgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWxlZnQub3V0LW9mLXZpZXcsIC5hbmltYXRpb24tZWxlbWVudC5zbGlkZS1yaWdodC5vdXQtb2YtdmlldywgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLXVwLm91dC1vZi12aWV3LFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWRvd24ub3V0LW9mLXZpZXcsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtbGVmdC5vdXQtb2Ytdmlldyxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS1yaWdodC5vdXQtb2Ytdmlldyxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cC5vdXQtb2YtdmlldyB7XG4gIG9wYWNpdHk6IDA7XG4gIC1tb3otdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzIGxpbmVhciwgb3BhY2l0eSAxcyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cyBsaW5lYXIsIG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtdXAsIC5hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cC5vdXQtb2Ytdmlldyxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cCxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS11cC5vdXQtb2YtdmlldyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwcHgsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwcHgsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwcHgsIDApO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLXJpZ2h0LCAuYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQub3V0LW9mLXZpZXcsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtcmlnaHQub3V0LW9mLXZpZXcge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTcwcHgsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTcwcHgsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC03MHB4LCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNzBweCwgMCwgMCk7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtbGVmdCwgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWxlZnQub3V0LW9mLXZpZXcsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtbGVmdCxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS1sZWZ0Lm91dC1vZi12aWV3IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDcwcHgsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNzBweCwgMCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNzBweCwgMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNzBweCwgMCwgMCk7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtZG93biwgLmFuaW1hdGlvbi1lbGVtZW50LnNsaWRlLWRvd24ub3V0LW9mLXZpZXcsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuc2xpZGUtZG93bixcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5zbGlkZS1kb3duLm91dC1vZi12aWV3IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC03MHB4LCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC03MHB4LCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNzBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTcwcHgsIDApO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4gLmNhdC1pdGVtLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4gLmNhdC1pdGVtIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5hbmltYXRpb24tZWxlbWVudC5mYWRlLWluLmFzLW9uZSxcbi5hbmltYXRpb24tZWxlbWVudC5mYWRlLWluIC5yaXBwbGUtZWxlbWVudCxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5mYWRlLWluLmFzLW9uZSxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5mYWRlLWluIC5yaXBwbGUtZWxlbWVudCB7XG4gIG9wYWNpdHk6IDA7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4uYXMtb25lLCAuYW5pbWF0aW9uLWVsZW1lbnQuZmFkZS1pbi5pbi12aWV3LFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4uYXMtb25lLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4uaW4tdmlldyB7XG4gIG9wYWNpdHk6IDE7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQuZmFkZS1pbi5vdXQtb2Ytdmlldy5hcy1vbmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuZmFkZS1pbi5vdXQtb2Ytdmlldy5hcy1vbmUge1xuICBvcGFjaXR5OiAwO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmZhZGUtaW4ub3V0LW9mLXZpZXcucmlwcGxlIC5yaXBwbGUtZWxlbWVudCxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5mYWRlLWluLm91dC1vZi12aWV3LnJpcHBsZSAucmlwcGxlLWVsZW1lbnQge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLWRlbGF5OiBub25lO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtdG9wLWRvd246YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtdG9wLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDFweDtcbiAgb3BhY2l0eTogMDtcbiAgYW5pbWF0aW9uOiBncm93IDJzIDAuNXMgMSBmb3J3YXJkcztcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLXRvcC1kb3duLmFsbDpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5hbGw6YmVmb3JlIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOGVhYTk2O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5zbWFsbDpiZWZvcmUsXG4gIC5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLXRvcC1kb3duLnNtYWxsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOGVhYTk2O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5tZWRpdW06YmVmb3JlLFxuICAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5tZWRpdW06YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA4Ny40OTg3NWVtKSB7XG4gIC5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLXRvcC1kb3duLmxhcmdlOmJlZm9yZSxcbiAgLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtdG9wLWRvd24ubGFyZ2U6YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkgYW5kIChtYXgtd2lkdGg6IDkzLjc0ODc1ZW0pIHtcbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtdG9wLWRvd24ueGxhcmdlOmJlZm9yZSxcbiAgLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtdG9wLWRvd24ueGxhcmdlOmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOGVhYTk2O1xuICB9XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5vdXQtb2YtdmlldzpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS10b3AtZG93bi5vdXQtb2YtdmlldzpiZWZvcmUge1xuICBhbmltYXRpb246IHJldmVyc2UtZ3JvdyAxcyAxIGZvcndhcmRzO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50IC5saW5lLXNsaWRlLW1pZGRsZS1vdXQtaG92ZXIsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQgLmxpbmUtc2xpZGUtbWlkZGxlLW91dC1ob3ZlciB7XG4gIHdpZHRoOiAwO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50IC5ob3Zlci1hbmltYXRpb24tZWxlbWVudDpob3ZlciAubGluZS1zbGlkZS1taWRkbGUtb3V0LWhvdmVyOmJlZm9yZSxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudCAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQ6aG92ZXIgLmxpbmUtc2xpZGUtbWlkZGxlLW91dC1ob3ZlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xuICBhbmltYXRpb24tbmFtZTogd2lkZW4tNTA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDFweDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOGVhYTk2O1xufVxuLmFuaW1hdGlvbi1lbGVtZW50IC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLmdyYWRpZW50LWhvdmVyLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50IC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLmdyYWRpZW50LWhvdmVyIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGUtZ3JhZGllbnQtaW47XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5Aa2V5ZnJhbWVzIG1vdmUtZ3JhZGllbnQge1xuICBmcm9tIHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgdG8ge1xuICAgIHRvcDogLTgwJTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlLWdyYWRpZW50LWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dDpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQuaG9yaXpvbnRhbDpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0Lmhvcml6b250YWw6YmVmb3JlIHtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMDtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZGVuO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC52ZXJ0aWNhbDpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0LnZlcnRpY2FsOmJlZm9yZSB7XG4gIG1hcmdpbjogYXV0bztcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAxcHg7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzhlYWE5NjtcbiAgYW5pbWF0aW9uLW5hbWU6IGdyb3c7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0I3JpcHBsZS1lbGVtZW50LTA6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dCNyaXBwbGUtZWxlbWVudC0wOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0I3JpcHBsZS1lbGVtZW50LTE6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dCNyaXBwbGUtZWxlbWVudC0xOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4zcztcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQjcmlwcGxlLWVsZW1lbnQtMjpiZWZvcmUsXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0I3JpcHBsZS1lbGVtZW50LTI6YmVmb3JlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjZzO1xufVxuLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dCNyaXBwbGUtZWxlbWVudC0zOmJlZm9yZSxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQjcmlwcGxlLWVsZW1lbnQtMzpiZWZvcmUge1xuICBhbmltYXRpb24tZGVsYXk6IDAuOXM7XG59XG4uYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0I3JpcHBsZS1lbGVtZW50LTQ6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dCNyaXBwbGUtZWxlbWVudC00OmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMS4ycztcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQucmlwcGxlLWVsZW1lbnQ6Zmlyc3QtY2hpbGQ6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5yaXBwbGUtZWxlbWVudDpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQub3V0LW9mLXZpZXc6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5vdXQtb2YtdmlldzpiZWZvcmUge1xuICBhbmltYXRpb246IHJldmVyc2Utd2lkZW4gMXMgMSBmb3J3YXJkcztcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQuYWxsLmhvcml6b250YWw6YmVmb3JlLFxuLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5hbGwuaG9yaXpvbnRhbDpiZWZvcmUge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzhlYWE5Njtcbn1cbi5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQuYWxsLnZlcnRpY2FsOmJlZm9yZSxcbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQuYWxsLnZlcnRpY2FsOmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzhlYWE5Njtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5zbWFsbC5ob3Jpem9udGFsOmJlZm9yZSxcbiAgLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5zbWFsbC5ob3Jpem9udGFsOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5zbWFsbC52ZXJ0aWNhbDpiZWZvcmUsXG4gIC5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQuc21hbGwudmVydGljYWw6YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQubWVkaXVtLmhvcml6b250YWw6YmVmb3JlLFxuICAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0Lm1lZGl1bS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5tZWRpdW0udmVydGljYWw6YmVmb3JlLFxuICAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0Lm1lZGl1bS52ZXJ0aWNhbDpiZWZvcmUge1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgIzhlYWE5NjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDg3LjQ5ODc1ZW0pIHtcbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5sYXJnZS5ob3Jpem9udGFsOmJlZm9yZSxcbiAgLmhvdmVyLWFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5sYXJnZS5ob3Jpem9udGFsOmJlZm9yZSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC5sYXJnZS52ZXJ0aWNhbDpiZWZvcmUsXG4gIC5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQubGFyZ2UudmVydGljYWw6YmVmb3JlIHtcbiAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4ZWFhOTY7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkgYW5kIChtYXgtd2lkdGg6IDkzLjc0ODc1ZW0pIHtcbiAgLmFuaW1hdGlvbi1lbGVtZW50LmxpbmUtc2xpZGUtbWlkZGxlLW91dC54bGFyZ2UuaG9yaXpvbnRhbDpiZWZvcmUsXG4gIC5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQueGxhcmdlLmhvcml6b250YWw6YmVmb3JlIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzhlYWE5NjtcbiAgfVxuICAuYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0LnhsYXJnZS52ZXJ0aWNhbDpiZWZvcmUsXG4gIC5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQueGxhcmdlLnZlcnRpY2FsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjOGVhYTk2O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5hbmltYXRpb24tZWxlbWVudC5saW5lLXNsaWRlLW1pZGRsZS1vdXQudmVydGljYWw6YmVmb3JlLFxuICAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQubGluZS1zbGlkZS1taWRkbGUtb3V0LnZlcnRpY2FsOmJlZm9yZSB7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZ3JvdyB7XG4gIGZyb20ge1xuICAgIGhlaWdodDogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIHRvIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyB3aWRlbiB7XG4gIGZyb20ge1xuICAgIHdpZHRoOiAwO1xuICB9XG4gIHRvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQGtleWZyYW1lcyByZXZlcnNlLWdyb3cge1xuICBmcm9tIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgdG8ge1xuICAgIGhlaWdodDogMDtcbiAgfVxufVxuQGtleWZyYW1lcyByZXZlcnNlLXdpZGVuIHtcbiAgZnJvbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgdG8ge1xuICAgIHdpZHRoOiAwO1xuICB9XG59XG5cbi5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLmxpbmUtc2xpZGUtbGVmdC1yaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWRlbi01MDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAxcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XG59XG5cbkBrZXlmcmFtZXMgd2lkZW4tNTAge1xuICBmcm9tIHtcbiAgICB3aWR0aDogMDtcbiAgfVxuICB0byB7XG4gICAgd2lkdGg6IDUwcHg7XG4gIH1cbn1cbi5ob3Zlci11bmRlcmxpbmUtdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5ob3Zlci11bmRlcmxpbmUtdGV4dDphZnRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGVhYTk2O1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb250ZW50OiBcIlwiO1xuICB0cmFuc2l0aW9uOiAwLjVzIHdpZHRoO1xufVxuLmhvdmVyLXVuZGVybGluZS10ZXh0LmdyYXk6YWZ0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgzODM4Mztcbn1cbi5ob3Zlci11bmRlcmxpbmUtdGV4dC53aGl0ZTphZnRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGRkZGO1xufVxuLmhvdmVyLXVuZGVybGluZS10ZXh0OmhvdmVyOmFmdGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaG92ZXItdW5kZXJsaW5lLXRleHQuYmFja3dhcmQ6aG92ZXI6YWZ0ZXIge1xuICB3aWR0aDogNjAlO1xufVxuXG4udG9wLW92ZXJsYXktYW5pbWF0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDIwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjcyNzI3O1xuICBvcGFjaXR5OiAxO1xuICBhbmltYXRpb24tbmFtZTogZmFkZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbn1cblxuQGtleWZyYW1lcyBmYWRlIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLm92ZXJsYXktYW5pbWF0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI3MjcyNztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA7XG59XG5cbi5ob3Zlci1hbmltYXRpb24tZWxlbWVudC5mYWRlLWluLmFzLW9uZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbn1cblxuLnNlYXJjaGZvcm0tc21hbGwgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwLFxuLnNpZGViYXIgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5zZWFyY2hmb3JtLXNtYWxsICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cC1maWVsZCxcbi5zaWRlYmFyICNzZWFyY2hmb3JtIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzgzODM4MztcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgzODM4MztcbiAgcGFkZGluZzogMTVweCAwIDI1cHg7XG59XG4uc2VhcmNoZm9ybS1zbWFsbCAjc2VhcmNoc3VibWl0LFxuLnNpZGViYXIgI3NlYXJjaHN1Ym1pdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzgzODM4MztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4MzgzODM7XG4gIG1hcmdpbi1sZWZ0OiAtMnB4O1xuICBwYWRkaW5nOiA1cHggMTBweCAxNXB4IDA7XG59XG5cbi5zaWRlYmFyLWNvbnRhaW5lciB7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMjBweCk7XG59XG5cbi5zaWRlYmFyLXdyYXBwZXIge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmctbGVmdDogMzBweDtcbiAgbWFyZ2luLWxlZnQ6IDYwcHg7XG59XG4uc2lkZWJhci13cmFwcGVyIC5zaWRlYmFyIC53aWRnZXRfc2VhcmNoIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgb3BhY2l0eTogMDtcbn1cbi5zaWRlYmFyLXdyYXBwZXIgLnNpZGViYXIgLndpZGdldF9jYXRlZ29yaWVzIGg2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zaWRlYmFyLXdyYXBwZXIgLnNpZGViYXIgLndpZGdldF9jYXRlZ29yaWVzIHVsIC5jYXQtaXRlbSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTdweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5zaWRlYmFyLXdyYXBwZXIgLnNpZGViYXIgLndpZGdldF9jYXRlZ29yaWVzIHVsIC5jYXQtaXRlbSBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnNpZGViYXItd3JhcHBlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1cHg7XG4gIH1cbiAgLnNpZGViYXItd3JhcHBlciAuc2lkZWJhciB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA1MHB4KTtcbiAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAuc2VhcmNoLXJlc3VsdHMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgzODM4MztcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAuc2VhcmNoLXJlc3VsdHMgLnBvc3QtaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLnBvc3QtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLnBvc3QtbWV0YS1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAucG9zdC1tZXRhLXNlY3Rpb24gYSB7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLmV4Y2VycHQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLnNpZGViYXIge1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpO1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLm1vcmV0YWctd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDE1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAuZXhjZXJwdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAuc2VhcmNoLXJlc3VsdHMgLnBvc3QtaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ucGFnaW5hdGlvbiBsaSB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG4ucGFnaW5hdGlvbiBsaSBhLCAucGFnaW5hdGlvbiBsaSBhOmZvY3VzLCAucGFnaW5hdGlvbiBsaSBhOnZpc2l0ZWQge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgcGFkZGluZzogMTRweCAyMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLnBhZ2luYXRpb24gbGk6aG92ZXIgYSB7XG4gIGNvbG9yOiAjMUUxRTFFO1xufVxuLnBhZ2luYXRpb24gbGkgLmN1cnJlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGVhYTk2O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAxOHB4IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxNC41cHg7XG59XG4ucGFnaW5hdGlvbiBsaS5wYWdpbmF0aW9uLW5leHQsIC5wYWdpbmF0aW9uIGxpLnBhZ2luYXRpb24tcHJldmlvdXMge1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5wYWdpbmF0aW9uIGxpLnBhZ2luYXRpb24tbmV4dCwgLnBhZ2luYXRpb24gbGkucGFnaW5hdGlvbi1wcmV2aW91cyB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbn1cbi5wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbiAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlcixcbi5wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBtYXJnaW46IDA7XG59XG4ucGFnaW5hdGlvbiBzcGFuLm5hdmlnYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBhZ2luYXRpb24gLmVsbGlwc2lzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgcGFkZGluZzogMTFweCAxOHB4O1xufVxuLnBhZ2luYXRpb24gLmVsbGlwc2lzOmFmdGVyIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLXByZXZpb3VzIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIC5wYWdpbmF0aW9uIHNwYW4ubmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5wYWdpbmF0aW9uIGkubmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2luYXRpb24gbGkge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2xpZGVyLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWRlZHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uc2xpZGVyLWNvbnRhaW5lciAuc2xpZGVkci5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWRlZHIgLnNsaWNrLXNsaWRlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWRlZHIgLnNsaWNrLXNsaWRlIGltZzpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpZGVyLWNvbnRhaW5lciAuc2xpZGVkciAuc2xpY2stc2xpZGU6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWNrLWRvdHMge1xuICBib3R0b206IDIyJTtcbiAgei1pbmRleDogNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zbGlkZXItY29udGFpbmVyIC5zbGljay1kb3RzIHtcbiAgICBib3R0b206IDE4JTtcbiAgfVxufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWNrLWRvdHMgbGkge1xuICBtYXJnaW46IDA7XG59XG4uc2xpZGVyLWNvbnRhaW5lciAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHRvcDogM3B4O1xufVxuLnNsaWRlci1jb250YWluZXIgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGNvbnRlbnQ6IFwi4pqsXCI7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwcHg7XG59XG4uc2xpY2stZG90cyBsaSB7XG4gIG1hcmdpbjogMDtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjRkZGRkZGO1xuICBib3JkZXItcmFkaXVzOiAyNnB4O1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBvcGFjaXR5OiAxO1xufVxuLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cbi5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGJvcmRlcjogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuXG4uY29udGFjdC1mb3JtIGlucHV0W3R5cGU9dGV4dF0sIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT1lbWFpbF0sIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZWxdLCAuY29udGFjdC1mb3JtIHNlbGVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRkZGRkZGO1xuICBjb2xvcjogIzgzODM4MztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMCAwIDE1cHg7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvKiBGaXJlZm94LCBvdGhlciBHZWNrbyAqL1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLyogT3BlcmEvSUUgOCsgKi9cbn1cbi5jb250YWN0LWZvcm0gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSksIC5jb250YWN0LWZvcm0gc2VsZWN0IHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLmNvbnRhY3QtZm9ybSBpbnB1dDpub3QoW3R5cGU9Y2hlY2tib3hdKTpub3QoW3R5cGU9cmFkaW9dKTo6cGxhY2Vob2xkZXIsIC5jb250YWN0LWZvcm0gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5jb250YWN0LWZvcm0gaW5wdXQ6bm90KFt0eXBlPWNoZWNrYm94XSk6bm90KFt0eXBlPXJhZGlvXSk6LW1zLWlucHV0LXBsYWNlaG9sZGVyLCAuY29udGFjdC1mb3JtIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pOjotbW96LXBsYWNlaG9sZGVyLCAuY29udGFjdC1mb3JtIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pOi1tb3otcGxhY2Vob2xkZXIsIC5jb250YWN0LWZvcm0gc2VsZWN0OjpwbGFjZWhvbGRlciwgLmNvbnRhY3QtZm9ybSBzZWxlY3Q6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsIC5jb250YWN0LWZvcm0gc2VsZWN0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgLmNvbnRhY3QtZm9ybSBzZWxlY3Q6Oi1tb3otcGxhY2Vob2xkZXIsIC5jb250YWN0LWZvcm0gc2VsZWN0Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzgzODM4MztcbiAgb3BhY2l0eTogMTtcbn1cbi5jb250YWN0LWZvcm0gc2VsZWN0OmludmFsaWQge1xuICBjb2xvcjogIzgzODM4MztcbiAgb3BhY2l0eTogMTtcbn1cbi5jb250YWN0LWZvcm0gLndwY2Y3LW5vdC12YWxpZC10aXAge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBtYXJnaW4tdG9wOiAtNTBweDtcbn1cbi5jb250YWN0LWZvcm0gbGFiZWwge1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5jb250YWN0LWZvcm0gLnNlbGVjdF9ib3gge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY29udGFjdC1mb3JtIC5zZWxlY3RfYm94OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDVweDtcbiAgcmlnaHQ6IDVweDtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogOTg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4MzgzODM7XG4gIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogNXB4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLmNvbnRhY3QtZm9ybSB0ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgYm9yZGVyOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5jb250YWN0LWZvcm0gaW5wdXRbdHlwZT10ZXh0XSwgLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPWVtYWlsXSwgLmNvbnRhY3QtZm9ybSBpbnB1dFt0eXBlPXRlbF0sIC5jb250YWN0LWZvcm0gc2VsZWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5jb250YWN0LWZvcm0gdGV4dGFyZWEge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbi5zbGlkZXItbmF2IHtcbiAgbWF4LWhlaWdodDogMTkwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uc2xpZGVyLW5hdiB2aWRlbywgLnNsaWRlci1uYXYgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzB2dztcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuc2xpZGVyLW5hdiB7XG4gICAgbWF4LWhlaWdodDogMTUwcHg7XG4gIH1cbiAgLnNsaWRlci1uYXYgdmlkZW8sIC5zbGlkZXItbmF2IGltZyB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNsaWRlci1uYXYge1xuICAgIG1heC1oZWlnaHQ6IDE1NHB4O1xuICB9XG4gIC5zbGlkZXItbmF2IHZpZGVvLCAuc2xpZGVyLW5hdiBpbWcge1xuICAgIGhlaWdodDogMTQycHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuc2xpZGVyLW5hdiB7XG4gICAgbWF4LWhlaWdodDogMTg0cHg7XG4gIH1cbiAgLnNsaWRlci1uYXYgdmlkZW8sIC5zbGlkZXItbmF2IGltZyB7XG4gICAgaGVpZ2h0OiAxNjhweDtcbiAgfVxufVxuLnNsaWRlci1uYXYgLnBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwgLTUwJSk7XG4gIGZvbnQtc2l6ZTogNzBweDtcbn1cbi5zbGlkZXItbmF2IC5zbGljay1zbGlkZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbi5zbGlkZXItbmF2IC5zbGljay1saXN0IHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuLnNsaWRlci1uYXYgLnJlbW92ZS10cmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbn1cbi5zbGlkZXItbmF2IC5zbGljay10cmFjayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNsaWRlci1mb3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDZweDtcbn1cbi5zbGlkZXItZm9yIGltZyB7XG4gIG1pbi13aWR0aDogMzIwcHg7XG59XG4uc2xpZGVyLWZvciBpZnJhbWUsIC5zbGlkZXItZm9yIHZpZGVvLCAuc2xpZGVyLWZvciBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA2NXZ3O1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5zbGlkZXItZm9yIC5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDVweDtcbn1cbi5zbGlkZXItZm9yIC5zbGljay1kb3RzIGxpIHtcbiAgbWFyZ2luOiAwO1xufVxuLnNsaWRlci1mb3IgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbn1cbi5zbGlkZXItZm9yIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDI2cHg7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpZGVyLWZvciAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUge1xuICBib3R0b206IDFweDtcbn1cbi5zbGlkZXItZm9yIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG4uc2xpZGVyLWZvciAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBib3JkZXI6IG5vbmU7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5zbGlkZXItZm9yIC5zbGljay1kb3RzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbiAgLnNsaWRlci1mb3IgaWZyYW1lLCAuc2xpZGVyLWZvciB2aWRlbywgLnNsaWRlci1mb3IgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQ2MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2xpZGVyLWZvciBpZnJhbWUsIC5zbGlkZXItZm9yIHZpZGVvLCAuc2xpZGVyLWZvciBpbWcge1xuICAgIGhlaWdodDogNDM1cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuc2xpZGVyLWZvciBpbWcsIC5zbGlkZXItZm9yIGlmcmFtZSwgLnNsaWRlci1mb3IgdmlkZW8ge1xuICAgIGhlaWdodDogNTEzcHg7XG4gIH1cbn1cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5zbGlkZXItd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zbGlkZXItd3JhcHBlciAuc2xpY2stbmV4dDpiZWZvcmUsXG4uc2xpZGVyLXdyYXBwZXIgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cbi5zbGlkZXItd3JhcHBlciAuc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB6LWluZGV4OiAxMDA7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgb3BhY2l0eTogMC41O1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgd2lkdGg6IDMwcHg7XG59XG4uc2xpZGVyLXdyYXBwZXIgLnNsaWNrLWFycm93LnByZXYge1xuICBsZWZ0OiAxMHB4O1xufVxuLnNsaWRlci13cmFwcGVyIC5zbGljay1hcnJvdy5uZXh0IHtcbiAgcmlnaHQ6IDEwcHg7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uc2xpZGVyLXdyYXBwZXIgLnNsaWNrLWFycm93OmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5zbGlkZXItd3JhcHBlciAuc2xpY2stYXJyb3cge1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICB3aWR0aDogNTBweDtcbiAgfVxuICAuc2xpZGVyLXdyYXBwZXIgLnNsaWNrLWFycm93LnByZXYge1xuICAgIGxlZnQ6IDMwcHg7XG4gIH1cbiAgLnNsaWRlci13cmFwcGVyIC5zbGljay1hcnJvdy5uZXh0IHtcbiAgICByaWdodDogMzBweDtcbiAgfVxufVxuXG4uaWZyYW1lLm5vLWNhcm91c2VsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNjB2dztcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmlmcmFtZS5uby1jYXJvdXNlbCB7XG4gICAgd2lkdGg6IDY5MHB4O1xuICAgIGhlaWdodDogNDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pZnJhbWUubm8tY2Fyb3VzZWwge1xuICAgIHdpZHRoOiA4NTRweDtcbiAgICBoZWlnaHQ6IDQzNXB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmlmcmFtZS5uby1jYXJvdXNlbCB7XG4gICAgaGVpZ2h0OiA1MTNweDtcbiAgfVxufVxuLndwcC10aHVtYm5haWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1heC1oZWlnaHQ6IDE4MHB4O1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI1ZW0pIHtcbiAgLndwcC10aHVtYm5haWwge1xuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAud3BwLXRodW1ibmFpbCB7XG4gICAgbWF4LWhlaWdodDogMjIwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC53cHAtdGh1bWJuYWlsIHtcbiAgICBtYXgtaGVpZ2h0OiAxNDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC53cHAtdGh1bWJuYWlsIHtcbiAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgfVxufVxuXG4ubW9zdC1wb3B1bGFyLXBvc3RzIC5zbGljay10cmFjayB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnBvcHVsYXItcG9zdC1jYXJvdXNlbCB7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLmhlYWRpbmcge1xuICBoZWlnaHQ6IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmctdG9wOiA0cHg7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5tb3N0LXBvcHVsYXItcG9zdHMge1xuICBtYXgtaGVpZ2h0OiAzOTBweDtcbn1cbi5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLm1vc3QtcG9wdWxhci1wb3N0cyAucG9wdWxhci1wb3N0IC50aXRsZSBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5tb3N0LXBvcHVsYXItcG9zdHMgLnBvcHVsYXItcG9zdCAudGh1bWIge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLnBvcHVsYXItcG9zdC1jYXJvdXNlbCAubW9zdC1wb3B1bGFyLXBvc3RzIC5wb3B1bGFyLXBvc3QgLnNwZWNzIHtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5tb3N0LXBvcHVsYXItcG9zdHMgLnBvcHVsYXItcG9zdCAuc3BlY3Mgc3BhbiB7XG4gIG1hcmdpbjogMCA1cHg7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5tb3N0LXBvcHVsYXItcG9zdHMgLnBvcHVsYXItcG9zdCAuc3BlY3Mgc3BhbjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnBvcHVsYXItcG9zdC1jYXJvdXNlbCAuc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTM1cHg7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB6LWluZGV4OiAxMDtcbn1cbi5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLnNsaWNrLXByZXYge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMzVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDUwcHg7XG4gIH1cbiAgLnBvcHVsYXItcG9zdC1jYXJvdXNlbCAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDE1cHg7XG4gIH1cbn1cbi5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLm5hdi1hcnJvd3Mge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5uYXYtYXJyb3dzIGltZyB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5uYXYtYXJyb3dzIC5wb3B1bGFyLXBvc3QtbmV4dCBpbWcge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLnBvcHVsYXItcG9zdC1jYXJvdXNlbCAuc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4ucG9wdWxhci1wb3N0LWNhcm91c2VsIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnBvcHVsYXItcG9zdC1jYXJvdXNlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICBwYWRkaW5nOiA2MHB4IDA7XG4gIH1cbiAgLnBvcHVsYXItcG9zdC1jYXJvdXNlbCAubW9zdC1wb3B1bGFyLXBvc3RzIC5wb3B1bGFyLXBvc3Qge1xuICAgIG1hcmdpbjogMTVweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvcHVsYXItcG9zdC1jYXJvdXNlbCB7XG4gICAgcGFkZGluZzogOTBweCAwO1xuICB9XG4gIC5wb3B1bGFyLXBvc3QtY2Fyb3VzZWwgLnNsaWNrLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cblxuLnNoYXJlLXRoaXMge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLnNoYXJlLXRoaXMgLnNoYXJlLWhlYWRpbmcge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnNoYXJlLXRoaXMgLnNoYXJlLWljb25zIHtcbiAgZm9udC1zaXplOiAzNXB4O1xufVxuLnNoYXJlLXRoaXMgLnNoYXJlLWljb25zIC5pY29uLCAuc2hhcmUtdGhpcyAuc2hhcmUtaWNvbnMgYSwgLnNoYXJlLXRoaXMgLnNoYXJlLWljb25zIGE6aG92ZXIsIC5zaGFyZS10aGlzIC5zaGFyZS1pY29ucyBhOmxpbmssIC5zaGFyZS10aGlzIC5zaGFyZS1pY29ucyBhOnZpc2l0ZWQge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnNoYXJlLXRoaXMge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbn1cblxuLm1iLTAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ubXQtMzAge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4ucHQtMzAge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4ubWItMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ucGItMTAge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ubWItNTAge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4ubWItODAge1xuICBtYXJnaW4tYm90dG9tOiA4MHB4O1xufVxuXG4ucmVsYXRpdmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5iYWNrZ3JvdW5kLWRhcmstZ3JheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyNzI3Mjc7XG59XG5cbi5iYWNrZ3JvdW5kLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE0MTQxNDtcbn1cblxuLmJhY2tncm91bmQtbGlnaHQtYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUUxRTFFO1xufVxuXG4uYmFja2dyb3VuZC1kYXJrLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLmV4dHJhLXN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5zdHJvbmcge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uc2VtaS1zdHJvbmcge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaG9tZS1iYW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmhvbWUtYmFubmVyIC5jdXN0b20tZ3JpZCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyBoMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuZ3JpZC1jb250YWluZXIgLmdyaWQteCAuY2VsbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDRlbTtcbiAgfVxufVxuLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIHtcbiAgbWFyZ2luLWJvdHRvbTogODBweDtcbn1cbi5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCBoMiB7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG59XG4uaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMgLmNlbGwgLmN1c3RvbS1ncmlkIC5pbm5lci1jZWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAyNXB4ICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMgLmNlbGwgLmN1c3RvbS1ncmlkIC5pbm5lci1jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGwgLnRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIC5jZWxsIC5jdXN0b20tZ3JpZCAuaW5uZXItY2VsbCAuZGF0YSB7XG4gIGZvbnQtc2l6ZTogNDJweDtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xufVxuLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIC5jZWxsIC5jdXN0b20tZ3JpZCAuaW5uZXItY2VsbCAuc2VwZXJhdG9yIHtcbiAgaGVpZ2h0OiAycHg7XG4gIHdpZHRoOiAxMTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGw6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGw6bGFzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIC5jZWxsIC5jdXN0b20tZ3JpZCAuaW5uZXItY2VsbDpsYXN0LWNoaWxkIC5zZXBlcmF0b3Ige1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIC5jZWxsIC5jdXN0b20tZ3JpZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAuaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMgLmNlbGwgLmN1c3RvbS1ncmlkIC5pbm5lci1jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyMCUgLSA1cHgpO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgcGFkZGluZzogMTBweCAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGwgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIH1cbiAgLmhvbWUtYmFubmVyIC5zdGF0cy1oaWdobGlnaHRzIC5jZWxsIC5jdXN0b20tZ3JpZCAuaW5uZXItY2VsbCAuZGF0YSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMgLmNlbGwgLmN1c3RvbS1ncmlkIC5pbm5lci1jZWxsIC5kYXRhIHtcbiAgICBmb250LXNpemU6IDMycHg7XG4gICAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuaG9tZS1iYW5uZXIgLnN0YXRzLWhpZ2hsaWdodHMgLmNlbGwgLmN1c3RvbS1ncmlkIC5pbm5lci1jZWxsIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyAuY2VsbCAuY3VzdG9tLWdyaWQgLmlubmVyLWNlbGwgLmRhdGEge1xuICAgIGZvbnQtc2l6ZTogNDJweDtcbiAgICBsaW5lLWhlaWdodDogNDhweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ob21lLWJhbm5lciAuc3RhdHMtaGlnaGxpZ2h0cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTIwcHg7XG4gIH1cbn1cblxuLnJlY2VudC1uZXdzIHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5yZWNlbnQtbmV3cyAuYXJ0aWNsZXMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctbGVmdDogNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLnJlY2VudC1uZXdzIC5zbGljay1uZXh0LCAucmVjZW50LW5ld3MgLnNsaWNrLXByZXYge1xuICAgIHdpZHRoOiAzNXB4O1xuICB9XG59XG4ucmVjZW50LW5ld3MgaDIge1xuICBwYWRkaW5nLWJvdHRvbTogMmVtO1xufVxuLnJlY2VudC1uZXdzIC5hcnRpY2xlIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuZmVhdHVyZWQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAyNjBweDtcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuZmVhdHVyZWQtaW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiAyNjBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJlY2VudC1uZXdzIC5hcnRpY2xlIC5mZWF0dXJlZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gIH1cbiAgLnJlY2VudC1uZXdzIC5hcnRpY2xlIC5mZWF0dXJlZC1pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuY3RhIHtcbiAgcGFkZGluZzogMDtcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSBoNCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZGVyO1xuICBwYWRkaW5nLXRvcDogMWVtO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xufVxuLnJlY2VudC1uZXdzIC5hcnRpY2xlIC5kZXNjcmlwdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuZGVzY3JpcHRpb24gcCB7XG4gIGNvbG9yOiAjODM4MzgzO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuZGVzY3JpcHRpb24gcDpmaXJzdC1vZi10eXBlIHtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzgzODM4Mztcbn1cbi5yZWNlbnQtbmV3cyAuYXJ0aWNsZSAuZGVzY3JpcHRpb24gcDpsYXN0LW9mLXR5cGUge1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xufVxuLnJlY2VudC1uZXdzIC5hcnRpY2xlIC5kZXNjcmlwdGlvbiBhIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzgzODM4MztcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLnJlY2VudC1uZXdzIC5hcnRpY2xlIC5jdGEgYSBidXR0b24ge1xuICBjb2xvcjogIzgzODM4MztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ucmVjZW50LW5ld3MgLnNsaWNrLXByZXYge1xuICB6LWluZGV4OiAxMDAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNjAwJSk7XG59XG4ucmVjZW50LW5ld3MgLnNsaWNrLW5leHQge1xuICB6LWluZGV4OiAxMDAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNjAwJSk7XG59XG4ucmVjZW50LW5ld3MgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBjb250ZW50OiBcIiDina9cIjtcbiAgY29sb3I6ICM2NzhlNzg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG4ucmVjZW50LW5ld3MgLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBjb250ZW50OiBcIiDina5cIjtcbiAgY29sb3I6ICM2NzhlNzg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLnJlY2VudC1uZXdzIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMXB4O1xuICB9XG4gIC5yZWNlbnQtbmV3cyAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogMXB4O1xuICB9XG59XG4uaW1hZ2Utc2xpZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDVlbTtcbn1cbi5pbWFnZS1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICBtYXgtaGVpZ2h0OiA1NzBweDtcbn1cbi5pbWFnZS1zbGlkZXIgLmRldGFpbHMge1xuICBtYXgtaGVpZ2h0OiA1NzBweDtcbn1cbi5pbWFnZS1zbGlkZXIgLmltYWdlIHtcbiAgbWF4LWhlaWdodDogNTcwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5pbWFnZS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICBsZWZ0OiAzZW07XG4gIHotaW5kZXg6IDEwMDA7XG4gIG1hcmdpbi1sZWZ0OiAxNTBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5pbWFnZS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5pbWFnZS1zbGlkZXIgLnNsaWNrLXByZXYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG4uaW1hZ2Utc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDNlbTtcbiAgei1pbmRleDogMTAwMDtcbiAgbWFyZ2luLXJpZ2h0OiAxNTBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5pbWFnZS1zbGlkZXIgLnNsaWNrLW5leHQge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuaW1hZ2Utc2xpZGVyIC5zbGljay1uZXh0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gIH1cbn1cbi5pbWFnZS1zbGlkZXIgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgZm9udC1zaXplOiA1NXB4O1xuICBjb250ZW50OiBcIiDina9cIjtcbiAgY29sb3I6ICM2NzhlNzg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG4uaW1hZ2Utc2xpZGVyIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGZvbnQtc2l6ZTogNTVweDtcbiAgY29udGVudDogXCIg4p2uXCI7XG4gIGNvbG9yOiAjNjc4ZTc4O1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuLmltYWdlLXNsaWRlciAuY29udGFpbmVyIGgyIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBwYWRkaW5nLXRvcDogM2VtO1xuICBwYWRkaW5nLWJvdHRvbTogMGVtO1xufVxuLmltYWdlLXNsaWRlciAuY29udGFpbmVyIGhyIHtcbiAgY29sb3I6ICM3MThiNzU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBtYXgtd2lkdGg6IDUwcmVtO1xufVxuLmltYWdlLXNsaWRlciAuY29udGFpbmVyIHAge1xuICBwYWRkaW5nLWxlZnQ6IDRlbTtcbiAgcGFkZGluZy1yaWdodDogNGVtO1xufVxuXG4ucmVkdWNlZC13aWR0aC1iYW5uZXIge1xuICBtYXJnaW4tYm90dG9tOiA1ZW07XG4gIGJhY2tncm91bmQ6ICM2NzhjNzg7XG4gIHBhZGRpbmc6IDA7XG59XG4ucmVkdWNlZC13aWR0aC1iYW5uZXIgLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnJlZHVjZWQtd2lkdGgtYmFubmVyIC5zbGljay1saXN0IHtcbiAgbWF4LWhlaWdodDogNTcwcHg7XG59XG4ucmVkdWNlZC13aWR0aC1iYW5uZXIgLmRldGFpbHMge1xuICBtYXgtaGVpZ2h0OiA1NzBweDtcbn1cbi5yZWR1Y2VkLXdpZHRoLWJhbm5lciAuaW1hZ2Uge1xuICBtYXgtaGVpZ2h0OiA1NzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLnJlZHVjZWQtd2lkdGgtYmFubmVyIC5zbGljay1wcmV2IHtcbiAgbGVmdDogM2VtO1xuICB6LWluZGV4OiAxMDAwO1xuICBtYXJnaW4tbGVmdDogNTBweDtcbn1cbi5yZWR1Y2VkLXdpZHRoLWJhbm5lciAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAzZW07XG4gIHotaW5kZXg6IDEwMDA7XG4gIG1hcmdpbi1yaWdodDogNTBweDtcbn1cbi5yZWR1Y2VkLXdpZHRoLWJhbm5lciAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBmb250LXNpemU6IDU1cHg7XG4gIGNvbnRlbnQ6IFwiIOKdr1wiO1xuICBjb2xvcjogIzY3OGU3ODtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cbi5yZWR1Y2VkLXdpZHRoLWJhbm5lciAuc2xpY2stcHJldjpiZWZvcmUge1xuICBmb250LXNpemU6IDU1cHg7XG4gIGNvbnRlbnQ6IFwiIOKdrlwiO1xuICBjb2xvcjogIzY3OGU3ODtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuaW1hZ2Utc2xpZGVyIC5jb250YWluZXIgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyZW07XG4gICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cbiAgLnJlZHVjZWQtd2lkdGgtYmFubmVyIC5pbWFnZS1kZXNjcmlwdGlvbiBwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDNlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzZW07XG4gIH1cbn1cbi5pbWFnZS1kZXNjcmlwdGlvbiBoMiB7XG4gIGZvbnQtc2l6ZTogMjZweDtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG59XG4uaW1hZ2UtZGVzY3JpcHRpb24gcCB7XG4gIHBhZGRpbmctYm90dG9tOiA0ZW07XG4gIHBhZGRpbmctbGVmdDogNGVtO1xuICBwYWRkaW5nLXJpZ2h0OiA0ZW07XG59XG5cbi5mdWxsLXdpZHRoLWJhbm5lciAuZ3JpZC14IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2M2EzMDtcbiAgcGFkZGluZzogNGVtIDA7XG59XG4uZnVsbC13aWR0aC1iYW5uZXIgLmdyaWQteCAuY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZnVsbC13aWR0aC1iYW5uZXIgLmdyaWQteCAuY29udGFpbmVyIGgyIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLmZ1bGwtd2lkdGgtYmFubmVyIC5ncmlkLXggLmNvbnRhaW5lciBociB7XG4gIGNvbG9yOiAjNzE4Yjc1O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgbWF4LXdpZHRoOiA1MHJlbTtcbn1cbi5mdWxsLXdpZHRoLWJhbm5lciAuZ3JpZC14IC5jb250YWluZXIgLmN0YSB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xufVxuXG4uc2luZ2xlLWRlc2NyaXB0aW9uLWJsb2NrIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayAuYmxvY2sgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogODE4cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayAucm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY3OGU3ODtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayAucm93IGgyIHtcbiAgcGFkZGluZy10b3A6IDUwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgYm9sZCAyNnB4LzMycHggUGxheWZhaXIgRGlzcGxheTtcbn1cbi5zaW5nbGUtZGVzY3JpcHRpb24tYmxvY2sgLnJvdyBwIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNGVtO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5zaW5nbGUtZGVzY3JpcHRpb24tYmxvY2sgLmJsb2NrIGltZyB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxuICAuc2luZ2xlLWRlc2NyaXB0aW9uLWJsb2NrIC5ibG9jayAucm93IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbiAgLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayAuYmxvY2sgLnJvdyBoMiB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayAuYmxvY2sgLnJvdyBwIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgfVxufVxuLmhlcm8tYmFubmVyLXZpZGVvIHtcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcbn1cbi5oZXJvLWJhbm5lci12aWRlbyAudmlkZW8td3JhcHBlciB7XG4gIGhlaWdodDogNjAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uaGVyby1iYW5uZXItdmlkZW8gLmltYWdlLXdyYXBwZXIgaW1nIHtcbiAgaGVpZ2h0OiA0MDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmhlcm8tYmFubmVyLXZpZGVvIC5pbWFnZS13cmFwcGVyIC5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLCAtNTAlKTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVyby1iYW5uZXItdmlkZW8gLmltYWdlLXdyYXBwZXIgLm92ZXJsYXkgaDMge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDQuNXZ3O1xuICBsaW5lLWhlaWdodDogMS4xO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW46IDAgMTVweDtcbn1cbi5oZXJvLWJhbm5lci12aWRlbyAuY29udHJvbHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi10b3A6IC0xMDBweDtcbiAgbWFyZ2luLWxlZnQ6IC03MHB4O1xufVxuLmhlcm8tYmFubmVyLXZpZGVvIC5jb250cm9scyBpIHtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBjb2xvcjogIzgzODM4MztcbiAgYm9yZGVyOiAxMnB4IHNvbGlkICM4MzgzODM7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5oZXJvLWJhbm5lci12aWRlbyB7XG4gICAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgfVxuICAuaGVyby1iYW5uZXItdmlkZW8gLmltYWdlLXdyYXBwZXIgaW1nIHtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5oZXJvLWJhbm5lci12aWRlbyAuaW1hZ2Utd3JhcHBlciAub3ZlcmxheSBoMyB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1iYW5uZXItdmlkZW8ge1xuICAgIG1hcmdpbi1ib3R0b206IDEzMHB4O1xuICB9XG4gIC5oZXJvLWJhbm5lci12aWRlbyAuYmFubmVyLXZpZGVvIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiA0MDBweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgei1pbmRleDogMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuaGVyby1iYW5uZXItdmlkZW8ge1xuICAgIG1hcmdpbi1ib3R0b206IDEzMHB4O1xuICB9XG4gIC5oZXJvLWJhbm5lci12aWRlbyAudmlkZW8td3JhcHBlciB7XG4gICAgaGVpZ2h0OiA3ODBweDtcbiAgfVxufVxuXG4udGV4dC1zZWN0aW9uLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiA1MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgfVxufVxuLnRleHQtc2VjdGlvbi1jb250YWluZXIgLmNvbnRlbnRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnRleHQtc2VjdGlvbi1jb250YWluZXIgLmNvbnRlbnRzIC5vdmVybGF5LXRleHQtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMDBweDtcbn1cbi50ZXh0LXNlY3Rpb24tY29udGFpbmVyIC5jb250ZW50cyAub3ZlcmxheS10ZXh0LXNlY3Rpb24gcCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICM4ZWFhOTY7XG4gIG9wYWNpdHk6IDE7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDMycHgvNDNweCBQbGF5ZmFpciBEaXNwbGF5O1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuLnRleHQtc2VjdGlvbi1jb250YWluZXIgLndpdGhvdXQtc3BpZGVyLWltYWdlIC5vdmVybGF5LXRleHQtc2VjdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDg3LjQ5ODc1ZW0pIHtcbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIgLmNvbnRlbnRzIC5vdmVybGF5LXRleHQtc2VjdGlvbiBwIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgfVxuICAudGV4dC1zZWN0aW9uLWNvbnRhaW5lciAuY29udGVudHMgLm92ZXJsYXktdGV4dC1zZWN0aW9uIGgzIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50ZXh0LXNlY3Rpb24tY29udGFpbmVyIC5jb250ZW50cyAub3ZlcmxheS10ZXh0LXNlY3Rpb24gcCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gIH1cbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIgLmNvbnRlbnRzIC5vdmVybGF5LXRleHQtc2VjdGlvbiBoMyB7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC50ZXh0LXNlY3Rpb24tY29udGFpbmVyIC5jb250ZW50cyAuZnVsbC13aWR0aC1pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMjU4cHg7XG4gIH1cbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIgLmNvbnRlbnRzIC5vdmVybGF5LXRleHQtc2VjdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxuICAudGV4dC1zZWN0aW9uLWNvbnRhaW5lciAuY29udGVudHMgLm92ZXJsYXktdGV4dC1zZWN0aW9uIHAge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgfVxuICAudGV4dC1zZWN0aW9uLWNvbnRhaW5lciAuY29udGVudHMgLm92ZXJsYXktdGV4dC1zZWN0aW9uIGgyLCAudGV4dC1zZWN0aW9uLWNvbnRhaW5lciAuY29udGVudHMgLm92ZXJsYXktdGV4dC1zZWN0aW9uIGgzIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIH1cbn1cbi5pbmZvLWJhbm5lciB7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xufVxuLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi1vbmUgdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tb25lIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBtYXgtaGVpZ2h0OiA2NzNweDtcbn1cbi5pbmZvLWJhbm5lciAuY29udGFpbmVyIC52ZXJ0aWNsZSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjNzE4Yjc1O1xuICBoZWlnaHQ6IDMwMHB4O1xuICB3aWR0aDogMXB4O1xuICBtYXJnaW4tdG9wOiAwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG59XG4uaW5mby1iYW5uZXIgLmNvbnRhaW5lciAuY29sdW1uLXR3byAubG9nbyB7XG4gIGhlaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAzNTBweDtcbiAgbWF4LWhlaWdodDogMjMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDJlbTtcbn1cbi5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbn1cbi5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5jb250ZW50IC5pbmZvLWJhbm5lci1wYXJhZ3JhcGgge1xuICBwYWRkaW5nLWJvdHRvbTogNmVtO1xufVxuLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmNvbnRlbnQgLmluZm8tYmFubmVyLXBhcmFncmFwaCBwIHtcbiAgcGFkZGluZy10b3A6IDFlbTtcbiAgbWF4LXdpZHRoOiAzOTBweDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAuaW5mby1iYW5uZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi1vbmUgaHIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuaW5mby1iYW5uZXIgLmNvbnRhaW5lciAuY29sdW1uLXR3byAubG9nbyB7XG4gICAgaGVpZ2h0OiAxNTBweDtcbiAgICBtYXJnaW46IDFlbSBhdXRvO1xuICB9XG4gIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmNvbnRlbnQgLmluZm8tYmFubmVyLXBhcmFncmFwaCB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmNvbnRlbnQgLmluZm8tYmFubmVyLXBhcmFncmFwaCBwIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIC5jb250ZW50IC5jdGEge1xuICAgIHBhZGRpbmc6IDAgMWVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAyZW07XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmNvbnRlbnQgLmN0YSBhIGJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tb25lIGhyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jb2x1bW4tdHdvIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNvbHVtbi10d28gLmxvZ28ge1xuICAgIG1hcmdpbjogMWVtIGF1dG87XG4gIH1cbiAgLmluZm8tYmFubmVyIC5jb250YWluZXIgLmNlbGwgLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuaW5mby1iYW5uZXIgLmNvbnRhaW5lciAuY2VsbCAuY29udGVudCAuaW5mby1iYW5uZXItcGFyYWdyYXBoIHAge1xuICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5pbmZvLWJhbm5lciAuY29udGFpbmVyIC5jZWxsIC5jb250ZW50IC5jdGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5hdXRvLXNsaWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAwZW07XG4gIHBhZGRpbmctbGVmdDogMGVtICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDBlbSAhaW1wb3J0YW50O1xufVxuLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIHtcbiAgcGFkZGluZy1ib3R0b206IDEyZW07XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgaW1nIHtcbiAgaGVpZ2h0OiA1NzBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgaDMge1xuICBwYWRkaW5nLXRvcDogOTBweDtcbiAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBib2xkIDI2cHgvMzJweCBQbGF5ZmFpciBEaXNwbGF5O1xuICBmb250LXNpemU6IDI2cHg7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmNvbnRhaW5lciBociB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NzhFNzg7XG4gIGhlaWdodDogMnB4O1xuICBib3JkZXI6IG5vbmU7XG4gIG1heC13aWR0aDogNTByZW07XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmNvbnRhaW5lciAuY3RhIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmNvbnRhaW5lciAudmlzYWJsZS1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLnZpc2FibGUtYmFja2dyb3VuZCBoMyB7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgYm9sZCAyNnB4LzMycHggUGxheWZhaXIgRGlzcGxheTtcbn1cbi5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC52aXNhYmxlLWJhY2tncm91bmQgcCB7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsIDE2cHgvMjBweCBXb3JrIFNhbnM7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmNvbnRhaW5lciAudmlzYWJsZS1iYWNrZ3JvdW5kIC5jdGEge1xuICBwYWRkaW5nLXRvcDogNjBweDtcbn1cbi5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC50cmFuc3BhcmVudC1iYWNrZ3JvdW5kIC5jb250YWluZXIgLmN0YSB7XG4gIHBhZGRpbmctdG9wOiA2MHB4O1xufVxuLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLnRyaWFuZ2xlIHtcbiAgYmFja2dyb3VuZDogIzEyM0EzMTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAwIDFlbTtcbn1cbi5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC50cmlhbmdsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjMTIzQTMxO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oLTQxJSAzJSwgMTAzJSA0JSwgNzUlIDY3JSk7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmJhY2tncm91bmRfdHdvIC50cmlhbmdsZSB7XG4gIGJhY2tncm91bmQ6ICMzRTY4NTg7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmJhY2tncm91bmRfdHdvIC50cmlhbmdsZTphZnRlciB7XG4gIGNsaXAtcGF0aDogcG9seWdvbigtODElIC03NCUsIDEwNyUgNCUsIDUwJSA2NyUpO1xuICBiYWNrZ3JvdW5kOiAjM0U2ODU4O1xufVxuLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5iYWNrZ3JvdW5kX3RocmVlIC50cmlhbmdsZSB7XG4gIGJhY2tncm91bmQ6ICMzRTY4NTg7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmJhY2tncm91bmRfdGhyZWUgLnRyaWFuZ2xlOmFmdGVyIHtcbiAgY2xpcC1wYXRoOiBwb2x5Z29uKC00MSUgLTc0JSwgMTEwJSA0JSwgMjUlIDY3JSk7XG4gIGJhY2tncm91bmQ6ICMzRTY4NTg7XG59XG4uYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmN0YSB7XG4gIHBhZGRpbmctdG9wOiAxNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOWVtO1xuICB9XG4gIC5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSBpbWcge1xuICAgIGhlaWdodDogNDgwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLnRyYW5zcGFyZW50LWJhY2tncm91bmQgaDMge1xuICAgIHBhZGRpbmctdG9wOiAyZW07XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLnZpc2FibGUtYmFja2dyb3VuZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICB9XG4gIC5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC52aXNhYmxlLWJhY2tncm91bmQgaDMge1xuICAgIHBhZGRpbmctdG9wOiAyZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmF1dG8tc2xpZGVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogN2VtO1xuICB9XG4gIC5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIGltZyB7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgfVxuICAuYXV0by1zbGlkZXIgLmF1dG8tc2xpZGVyLWhvbWUgLmNvbnRhaW5lciBoMyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLmN0YSB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgLmF1dG8tc2xpZGVyIC5hdXRvLXNsaWRlci1ob21lIC5jb250YWluZXIgLnZpc2FibGUtYmFja2dyb3VuZCB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC52aXNhYmxlLWJhY2tncm91bmQgaDMge1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICB9XG4gIC5hdXRvLXNsaWRlciAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIC52aXNhYmxlLWJhY2tncm91bmQgcCB7XG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIH1cbn1cbi5hdXRvLXNsaWRlci5zdGFja2VkIHtcbiAgbWFyZ2luLXRvcDogMTUwcHg7XG59XG4uYXV0by1zbGlkZXIuc3RhY2tlZCAudHJpYW5nbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDEwMCU7XG4gIGhlaWdodDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oNzElIDQwJSwgMTAyJSAxMDIlLCAwJSAxMDAlKTtcbiAgYmFja2dyb3VuZDogIzNFNjg1ODtcbn1cbi5hdXRvLXNsaWRlci5zdGFja2VkIC50cmlhbmdsZS5saWdodCB7XG4gIGJhY2tncm91bmQ6ICM4RUFBOTYgIWltcG9ydGFudDtcbn1cbi5hdXRvLXNsaWRlci5zdGFja2VkIC50cmlhbmdsZS5saWdodDpiZWZvcmUsIC5hdXRvLXNsaWRlci5zdGFja2VkIC50cmlhbmdsZS5saWdodDphZnRlciB7XG4gIGJhY2tncm91bmQ6ICM4RUFBOTYgIWltcG9ydGFudDtcbn1cbi5hdXRvLXNsaWRlci5zdGFja2VkIC5zbGlkZS1pbWFnZXMge1xuICBwYWRkaW5nLXRvcDogM2VtO1xuICBwYWRkaW5nLWJvdHRvbTogM2VtO1xufVxuLmF1dG8tc2xpZGVyLnN0YWNrZWQgLnRlc3RpbW9uaWFsLWNvbHVtbnMge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5hdXRvLXNsaWRlci5zdGFja2VkIC50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjc4RTc4ICFpbXBvcnRhbnQ7XG59XG4uYXV0by1zbGlkZXIuc3RhY2tlZCAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIGgzIHtcbiAgcGFkZGluZy10b3A6IDJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hdXRvLXNsaWRlci5zdGFja2VkIGltZyB7XG4gICAgaGVpZ2h0OiA2MzBweDtcbiAgfVxufVxuXG4udGVzdGltb25pYWwtY29sdW1ucyB7XG4gIHBhZGRpbmctYm90dG9tOiA2ZW07XG59XG4udGVzdGltb25pYWwtY29sdW1ucyBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLnRlc3RpbW9uaWFsLWNvbHVtbnMgLmNlbGwge1xuICBwYWRkaW5nOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMzZDY4NTc7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudGVzdGltb25pYWwtY29sdW1ucyAuY2VsbCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZDY4NTc7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsIHtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzNkNjg1NztcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIH1cbn1cbi50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsOm50aC1vZi10eXBlKDNuKSxcbi50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsOmxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAudGVzdGltb25pYWwtY29sdW1ucyAuY2VsbCBwIHtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsIHAge1xuICAgIGJvcmRlci1yaWdodDogMTAwMDBweDtcbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkltYWdlIEJsb2NrXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmltYWdlLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cbi5pbWFnZS1ibG9jayAuaGVhZGluZyB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uaW1hZ2UtYmxvY2sgLmRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4uaW1hZ2UtYmxvY2sgLnZpZGVvLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxOTNweDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaW1hZ2UtYmxvY2sgLnZpZGVvLWxpbmsgLnZpZGVvLXBsYXktaWNvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDI0dnc7XG4gIGNvbG9yOiAjN0I3QjdCO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmltYWdlLWJsb2NrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxuICAuaW1hZ2UtYmxvY2sgLnZpZGVvLXJldmVhbC1idXR0b24ge1xuICAgIGhlaWdodDogNDYwcHg7XG4gIH1cbiAgLmltYWdlLWJsb2NrIC52aWRlby1saW5rIHtcbiAgICBoZWlnaHQ6IDM2MHB4O1xuICB9XG4gIC5pbWFnZS1ibG9jayAudmlkZW8tbGluayAudmlkZW8tcHJldmlldyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmltYWdlLWJsb2NrIC52aWRlby1saW5rIC52aWRlby1wbGF5LWljb24ge1xuICAgIGZvbnQtc2l6ZTogMTIwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gIH1cbiAgLmltYWdlLWJsb2NrIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmltYWdlLWJsb2NrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxuICAuaW1hZ2UtYmxvY2sgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5pbWFnZS1ibG9jayAudmlkZW8tcmV2ZWFsLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG4gIC5pbWFnZS1ibG9jayAudmlkZW8tbGluayB7XG4gICAgaGVpZ2h0OiAzNzdweDtcbiAgfVxuICAuaW1hZ2UtYmxvY2sgLnZpZGVvLWxpbmsgLnZpZGVvLXByZXZpZXcge1xuICAgIGhlaWdodDogMzc3cHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbiAgLmltYWdlLWJsb2NrIC52aWRlby1saW5rIC52aWRlby1wbGF5LWljb24ge1xuICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICB9XG59XG5cbi5pbWFnZS1ibG9jay1yZXZlYWwge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGhlaWdodDogYXV0bztcbiAgbWluLWhlaWdodDogYXV0bztcbn1cbi5pbWFnZS1ibG9jay1yZXZlYWwgLmlmcmFtZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDE1MHB4O1xufVxuLmltYWdlLWJsb2NrLXJldmVhbCAuYmxvY2stdmlkZW8ge1xuICBwYWRkaW5nOiAwIDE1cHggMzBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDI4LjEyNWVtKSB7XG4gIC5pbWFnZS1ibG9jay1yZXZlYWwgLmlmcmFtZSB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmltYWdlLWJsb2NrLXJldmVhbCAuYmxvY2stdmlkZW8ge1xuICAgIHBhZGRpbmc6IDAgNTBweCA1MHB4O1xuICB9XG4gIC5pbWFnZS1ibG9jay1yZXZlYWwgLmlmcmFtZSB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5pbWFnZS1ibG9jay1yZXZlYWwgLmJsb2NrLXZpZGVvIHtcbiAgICBwYWRkaW5nOiAwIDUwcHggNTBweDtcbiAgfVxuICAuaW1hZ2UtYmxvY2stcmV2ZWFsIC5pZnJhbWUge1xuICAgIGhlaWdodDogNDUwcHg7XG4gIH1cbn1cblxuLmxhYmVsLWRlc2NyaXB0aW9uLXJldmVhbCB7XG4gIHBhZGRpbmc6IDQwcHggMjVweDtcbn1cbi5sYWJlbC1kZXNjcmlwdGlvbi1yZXZlYWwgLmxvZ28ge1xuICBtYXJnaW46IDQwcHggMCA0MHB4O1xufVxuLmxhYmVsLWRlc2NyaXB0aW9uLXJldmVhbCAuY2xvc2UtYnV0dG9uIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbn1cbi5sYWJlbC1kZXNjcmlwdGlvbi1yZXZlYWwgLnJldmVhbC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubGFiZWwtZGVzY3JpcHRpb24tcmV2ZWFsIHtcbiAgICBwYWRkaW5nOiA3MHB4O1xuICB9XG4gIC5sYWJlbC1kZXNjcmlwdGlvbi1yZXZlYWwgLmxvZ28ge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYWJlbC1kZXNjcmlwdGlvbi1yZXZlYWwge1xuICAgIHBhZGRpbmc6IDgwcHg7XG4gIH1cbiAgLmxhYmVsLWRlc2NyaXB0aW9uLXJldmVhbCAuY2xvc2UtYnV0dG9uIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbiAgLmxhYmVsLWRlc2NyaXB0aW9uLXJldmVhbCAubG9nbyB7XG4gICAgcGFkZGluZzogMCA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAubGFiZWwtZGVzY3JpcHRpb24tcmV2ZWFsIHtcbiAgICBwYWRkaW5nOiAxMTBweCAxMDBweDtcbiAgfVxuICAubGFiZWwtZGVzY3JpcHRpb24tcmV2ZWFsIC5jbG9zZS1idXR0b24ge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cHg7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIGgzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogNDBweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTQxNDE0O1xuICB3aWR0aDogMjYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwge1xuICAgIGJvdHRvbTogNDBweDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIC5sYWJlbC10ZXh0IHtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIC5sYWJlbC10ZXh0LnRpdGxlIHtcbiAgbWFyZ2luOiAzMHB4IDAgMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci5kZXNjLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIuZGVzYy1sYWJlbCAubGFiZWwtaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAxODBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIuZGVzYy1sYWJlbCAubGFiZWwtY2VsbCB7XG4gICAgYm90dG9tOiAwO1xuICB9XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLmRlc2MtbGFiZWwgLmRlc2NyaXB0aW9uIHtcbiAgaGVpZ2h0OiA2MHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAxNXB4IDIwcHggMzBweCA0MHB4O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cbi5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIudGl0bGUtbGFiZWwgLmxhYmVsLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogOTBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsOm5vdCguZGVzY3JpcHRpb24tYm94KTpob3ZlciAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBpbmhlcml0O1xuICBtYXJnaW4tdG9wOiAxNXB4O1xufVxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci50aXRsZS1sYWJlbCAubGFiZWwtY2VsbDpub3QoLmRlc2NyaXB0aW9uLWJveCk6aG92ZXIgLnNlcGVyYXRvciB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5kZXNjcmlwdGlvbiB7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW46IDQ1cHggMjBweCAzMHB4IDQwcHg7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBkaXNwbGF5OiBub25lO1xufVxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAubGluay13cmFwcGVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG1hcmdpbjogMzBweCAyNXB4IDUwcHggMDtcbn1cbi5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxpbmstd3JhcHBlciAubGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4ubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5saW5rLXdyYXBwZXIgLmxpbmsgc3BhbiB7XG4gIHBhZGRpbmctbGVmdDogMnB4O1xufVxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAuc2VwZXJhdG9yIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgd2lkdGg6IDUycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAuc2VwZXJhdG9yOmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDM3LjVlbSkge1xuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIHtcbiAgICB3aWR0aDogNDUwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIudGl0bGUtbGFiZWwgLmxhYmVsLWNlbGwuY3JlYXRpdml0eTpob3ZlciB7XG4gICAgaGVpZ2h0OiAzNzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5ncmlkLXgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci5kZXNjLWxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIuZGVzYy1sYWJlbCAubGFiZWwtaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci5kZXNjLWxhYmVsIC5sYWJlbC1jZWxsIHtcbiAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci5kZXNjLWxhYmVsIC5sYWJlbC1jZWxsLnJpZ2h0LWxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci50aXRsZS1sYWJlbCAubGFiZWwtaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci50aXRsZS1sYWJlbCAubGFiZWwtY2VsbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIHRyYW5zaXRpb246IDAuNXMgaGVpZ2h0O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIudGl0bGUtbGFiZWwgLmxhYmVsLWNlbGw6bm90KC5kZXNjcmlwdGlvbi1ib3gpOmhvdmVyIHtcbiAgICBoZWlnaHQ6IDI4MHB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIudGl0bGUtbGFiZWwgLmxhYmVsLWNlbGw6bm90KC5kZXNjcmlwdGlvbi1ib3gpOmhvdmVyIC5kZXNjcmlwdGlvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IGFsbCAycztcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsLnJpZ2h0LWxhYmVsIHtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIudGl0bGUtbGFiZWwgLmxhYmVsLWNlbGwgLmRlc2NyaXB0aW9uIHtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDAuNXM7XG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAubGFiZWwtY2VsbCB7XG4gICAgd2lkdGg6IDMzMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC01NXB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwucmlnaHQtbGFiZWwge1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwubGVmdC1sYWJlbCB7XG4gICAgbGVmdDogMTVweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIC5sYWJlbC10ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiA0NXB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwgLnNlcGVyYXRvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5saW5rLXdyYXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAubGFiZWwtY2VsbCB7XG4gICAgd2lkdGg6IDQ4MHB4O1xuICAgIG1hcmdpbi10b3A6IC03NXB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwucmlnaHQtbGFiZWwge1xuICAgIHJpZ2h0OiAxNXB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwubGVmdC1sYWJlbCB7XG4gICAgbGVmdDogMTVweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLmRlc2MtbGFiZWwgLmxhYmVsLWltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIuZGVzYy1sYWJlbC5kZXNjLWxhYmVsIC5sYWJlbC1jZWxsIHtcbiAgICBtYXJnaW4tdG9wOiAtMTIwcHg7XG4gIH1cbiAgLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciAubGFiZWxlZC1pbWFnZXMtd3JhcHBlci50aXRsZS1sYWJlbCAubGFiZWwtY2VsbCB7XG4gICAgaGVpZ2h0OiAxMzBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsOm5vdCguZGVzY3JpcHRpb24tYm94KTpob3ZlciB7XG4gICAgaGVpZ2h0OiAyOTBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsIC50aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIgLmxhYmVsLWNlbGwge1xuICAgIHdpZHRoOiA2NzBweDtcbiAgICBtYXJnaW4tdG9wOiAtNjVweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5sYWJlbC1jZWxsIC5sYWJlbC10ZXh0LnRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICB9XG4gIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXIgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIuZGVzYy1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyLnRpdGxlLWxhYmVsIC5sYWJlbC1jZWxsIC50aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5zZXBlcmF0b3Ige1xuICAgIHdpZHRoOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIGgzIHtcbiAgICBwYWRkaW5nLXRvcDogMTMwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIC5sYWJlbGVkLWltYWdlcy13cmFwcGVyIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiA0NXB4IDgwcHggMzBweCA2MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgfVxuICAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi5mcm9udC13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAgSGVybyBCYW5uZXJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFRleHQgSGlnaGxpZ2h0IGJsb2NrXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgICBTcGVjaWFsaXR5IENhcmRcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAgIFN0YXRzIEhpZ2hsaWdodHNcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZnJvbnQtd3JhcHBlciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEzMHB4O1xuICB9XG59XG4uZnJvbnQtd3JhcHBlciAuaGVyby1iYW5uZXIge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIC52aWRlby13cmFwcGVyIHtcbiAgaGVpZ2h0OiA2MDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5mcm9udC13cmFwcGVyIC5oZXJvLWJhbm5lciAuaW1hZ2Utd3JhcHBlciBpbWcge1xuICBoZWlnaHQ6IDQwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uZnJvbnQtd3JhcHBlciAuaGVyby1iYW5uZXIgLmltYWdlLXdyYXBwZXIgLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xuICB3aWR0aDogMTAwJTtcbn1cbi5mcm9udC13cmFwcGVyIC5oZXJvLWJhbm5lciAuaW1hZ2Utd3JhcHBlciAub3ZlcmxheSBoMyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogNC41dnc7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbjogMCAxNXB4O1xufVxuLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIC5jb250cm9scyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTEwMHB4O1xuICBtYXJnaW4tbGVmdDogLTcwcHg7XG59XG4uZnJvbnQtd3JhcHBlciAuaGVyby1iYW5uZXIgLmNvbnRyb2xzIGkge1xuICBmb250LXNpemU6IDUwcHg7XG4gIGNvbG9yOiAjODM4MzgzO1xuICBib3JkZXI6IDEycHggc29saWQgIzgzODM4MztcbiAgcGFkZGluZzogMTVweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG4gIC5mcm9udC13cmFwcGVyIC5oZXJvLWJhbm5lciAuaW1hZ2Utd3JhcHBlciBpbWcge1xuICAgIGhlaWdodDogNjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIC5pbWFnZS13cmFwcGVyIC5vdmVybGF5IGgzIHtcbiAgICBmb250LXNpemU6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5oZXJvLWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XG4gIH1cbiAgLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIC5iYW5uZXItdmlkZW8ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDA7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB6LWluZGV4OiAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5oZXJvLWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XG4gIH1cbiAgLmZyb250LXdyYXBwZXIgLmhlcm8tYmFubmVyIC52aWRlby13cmFwcGVyIHtcbiAgICBoZWlnaHQ6IDc4MHB4O1xuICB9XG59XG4uZnJvbnQtd3JhcHBlciAudGV4dC1oaWdobGlnaHQtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB6LWluZGV4OiAxMDtcbn1cbi5mcm9udC13cmFwcGVyIC50ZXh0LWhpZ2hsaWdodC1ibG9jayAudGV4dC1oaWdobGlnaHQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAxMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnRleHQtaGlnaGxpZ2h0LWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG4gIC5mcm9udC13cmFwcGVyIC50ZXh0LWhpZ2hsaWdodC1ibG9jayAudGV4dC1oaWdobGlnaHQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnRleHQtaGlnaGxpZ2h0LWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMzBweDtcbiAgfVxuICAuZnJvbnQtd3JhcHBlciAudGV4dC1oaWdobGlnaHQtYmxvY2sgLnRleHQtaGlnaGxpZ2h0IHtcbiAgICBmb250LXNpemU6IDM4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuZnJvbnQtd3JhcHBlciAudGV4dC1oaWdobGlnaHQtYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDEzMHB4O1xuICB9XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuaGFzLXZpZGVvLmxhcmdlLTQgLnNwZWNpYWxpdHktY2FyZCAuaW1hZ2Uge1xuICBtYXgtaGVpZ2h0OiAzMDBweDtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5oYXMtdmlkZW8ubGFyZ2UtNiAuc3BlY2lhbGl0eS1jYXJkIC5pbWFnZSB7XG4gIG1heC1oZWlnaHQ6IDQwMHB4O1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgaWZyYW1lID4gLm1vYmlsZS1ncmFkaWVudCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyBpZnJhbWUgPiAuZ3JhZGllbnQtb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuZ3JhZGllbnQtb3ZlcmxheSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5jb2x1bW4tYmxvY2tzLWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy1ib3R0b206IDNlbTtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLm92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMUUxRTFFO1xuICBvcGFjaXR5OiAwLjc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLmxvZ28ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IGF1dG87XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAubG9nby1ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IGF1dG87XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC52aWRlby1ib3gge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnZpZGVvLXBsYXktYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5sb2dvIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLmltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzgycHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBvYmplY3QtcG9zaXRpb246IDIwJSB0b3A7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnRpdGxlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTIwcHg7XG4gIHotaW5kZXg6IDU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnNlcGVyYXRvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOGVhYTk2O1xuICBoZWlnaHQ6IDVweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMztcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnNlcGVyYXRvcjpiZWZvcmUge1xuICBsZWZ0OiAtMjVweDtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLmRlc2NyaXB0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDU7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgcGFkZGluZy1ib3R0b206IDJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuc3BlY2lhbGl0eS1jYXJkLWluZm8ge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAudmlkZW8tYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLmxvZ28tYm94IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLmxvZ28tYm94IGltZyB7XG4gIHdpZHRoOiAyMDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5sb2dvLWJveCAudGVzdGltb25pYWwtY29sdW1ucyAuY2VsbCBwIHtcbiAgICBib3JkZXItcmlnaHQ6IDEwMDAwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLmxvZ28tYm94IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuYmxvY2stY3RhIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuYmxvY2stY3RhIGEgYnV0dG9uOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDYwMHB4KSBhbmQgKG1heC13aWR0aDogMTM5OXB4KSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5sb2dvLWJveCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgfVxuICAuZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuYmxvY2stY3RhIHtcbiAgICBwYWRkaW5nLXRvcDogMWVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLmhpZGUtaG92ZXIge1xuICBvcGFjaXR5OiAwO1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZDpob3ZlciAuc3BlY2lhbGl0eS1jYXJkLWluZm8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDU7XG4gIHRyYW5zaXRpb246IDFzIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkOmhvdmVyIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAudGl0bGUge1xuICB0b3A6IDA7XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkOmhvdmVyIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuYmxvY2stY3RhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDJlbTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5ibG9jay1jdGEge1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZDpob3ZlciAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLmJsb2NrLWN0YSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5zZXBlcmF0b3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiAxNnB4IGF1dG87XG59XG4uZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkOmhvdmVyIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAucmVkdWNlZC1zaXplLWNhcmQgLmltYWdlIHtcbiAgaGVpZ2h0OiAzMDBweDtcbn1cbi5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLnJlZHVjZWQtc2l6ZS1jYXJkIC5jYXRlZ29yeSBwIHtcbiAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcbiAgZm9udDogV29yayBTYW5zIFNlbWlCb2xkO1xufVxuLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAucmVkdWNlZC1zaXplLWNhcmQgLmdyYWRpZW50LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDAsIDAsIDAsIDApIDAsIHJnYmEoMCwgMCwgMCwgMC42KSA4MCUsIHJnYmEoMzAsIDMwLCAzMCwgMC43KSAxMDAlKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLmltYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIG9iamVjdC1wb3NpdGlvbjogdG9wIGxlZnQ7XG4gIH1cbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgfVxuICAuZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyAuc3BlY2lhbGl0eS1jYXJkIC5kZXNjcmlwdGlvbiB7XG4gICAgcGFkZGluZzogMCA5MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSBhbmQgKG1pbi13aWR0aDogNDVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQ6aG92ZXIgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5zZXBlcmF0b3Ige1xuICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLmltYWdlIHtcbiAgICBoZWlnaHQ6IDQzM3B4O1xuICB9XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIC5zcGVjaWFsaXR5LWNhcmQgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gIH1cbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZDpob3ZlciAuc3BlY2lhbGl0eS1jYXJkLWluZm8gLnNlcGVyYXRvciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLnNwZWNpYWxpdHktY2FyZHMgLnNwZWNpYWxpdHktY2FyZCAuaW1hZ2Uge1xuICAgIGhlaWdodDogNTEycHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5zcGVjaWFsaXR5LWNhcmRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZnJvbnQtd3JhcHBlciAuc3BlY2lhbGl0eS1jYXJkcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICB9XG59XG4uZnJvbnQtd3JhcHBlciAubG9nb3MtYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxMzBweDtcbn1cbi5mcm9udC13cmFwcGVyIC5sb2dvcy1ibG9jayAuaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5mcm9udC13cmFwcGVyIC5sb2dvcy1ibG9jayAucGFyYWdyYXBoIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5mcm9udC13cmFwcGVyIC5sb2dvcy1ibG9jayAubG9nbyB7XG4gIG1hcmdpbjogMTBweCAzMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmZyb250LXdyYXBwZXIgLmxvZ29zLWJsb2NrIC5wYXJhZ3JhcGgge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5sb2dvcy1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5mcm9udC13cmFwcGVyIC5sb2dvcy1ibG9jayAucGFyYWdyYXBoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgfVxufVxuXG4uZnVsbC13aWR0aC1pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnBvcnRmb2xpby1ncmlkIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5wb3J0Zm9saW8tZ3JpZCAuY2F0ZWdvcnktdGl0bGUge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxOHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAucG9ydGZvbGlvLWdyaWQgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgfVxufVxuLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS1zZWxlY3Rvcixcbi5wb3J0Zm9saW8tZ3JpZCAuY2F0ZWdvcnktc2VsZWN0b3I6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzgwODA4MDtcbiAgY29sb3I6ICM4MDgwODA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAycztcbn1cbi5wb3J0Zm9saW8tZ3JpZCAucHJvamVjdHMtY29udGFpbmVyIC5wcm9qZWN0cyAuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gIG1pbi1oZWlnaHQ6IDk1cHg7XG4gIGhlaWdodDogYXV0bztcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5wcm9qZWN0LWNhcHRpb24gLnByb2plY3QtbmFtZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDIxcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5wcm9qZWN0LWNhcHRpb24gLnByb2plY3QteWVhciB7XG4gIGNvbG9yOiAjODA4MDgwO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICB9XG4gIC5wb3J0Zm9saW8tZ3JpZCAucHJvamVjdHMtY29udGFpbmVyIC5wcm9qZWN0cyAuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XG4gICAgbWluLWhlaWdodDogMTUwcHg7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5wcm9qZWN0LWNhcHRpb24gLnByb2plY3QtbmFtZSxcbiAgLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5wcm9qZWN0LWNhcHRpb24gLnByb2plY3QteWVhciB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgfVxuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMge1xuICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5hdHRhY2htZW50LXBvc3QtdGh1bWJuYWlsIHtcbiAgICBtaW4taGVpZ2h0OiAxNTVweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMuYWN0aXZlOmhvdmVyIC5wcm9qZWN0LWNhcHRpb24ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogMXMgb3BhY2l0eTtcbiAgfVxuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMgLnByb2plY3QtY2FwdGlvbiB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5wcm9qZWN0cy1jb250YWluZXIgLnByb2plY3RzIC5wcm9qZWN0LWNhcHRpb24gLnByb2plY3QtbmFtZSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAucG9ydGZvbGlvLWdyaWQgLnByb2plY3RzLWNvbnRhaW5lciAucHJvamVjdHMgLmF0dGFjaG1lbnQtcG9zdC10aHVtYm5haWwge1xuICAgIG1pbi1oZWlnaHQ6IDE4NXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucG9ydGZvbGlvLWdyaWQgLmNhdGVnb3J5LXRpdGxlIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS1zZWxlY3RvciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvcnRmb2xpby1ncmlkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5wb3J0Zm9saW8tZ3JpZCAuY2F0ZWdvcnktdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMzJweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbiAgLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS1jb250YWluZXIgLmNhdGVnb3J5LW5hbWVzIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICB9XG4gIC5wb3J0Zm9saW8tZ3JpZCAuY2F0ZWdvcnktY29udGFpbmVyIC5jYXRlZ29yeS1uYW1lczphY3RpdmUsIC5wb3J0Zm9saW8tZ3JpZCAuY2F0ZWdvcnktY29udGFpbmVyIC5jYXRlZ29yeS1uYW1lczpob3ZlciwgLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS1jb250YWluZXIgLmNhdGVnb3J5LW5hbWVzOnZpc2l0ZWQge1xuICAgIGNvbG9yOiAjRkZGRkZGO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnBvcnRmb2xpby1ncmlkIC5jYXRlZ29yeS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuSm9pbiBvdXIgVGVhbVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5qb2ItcG9zdGluZ3Mtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uam9iLXBvc3RpbmdzLXdyYXBwZXIgaDEge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBmb250OiBub3JtYWwgbm9ybWFsIGJvbGQgNTRweC81MnB4IFBsYXlmYWlyIERpc3BsYXk7XG59XG4uam9iLXBvc3RpbmdzLXdyYXBwZXIgaDMge1xuICBmb250OiBub3JtYWwgbm9ybWFsIDI2cHgvMzJweCBXb3JrIFNhbnM7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG59XG4uam9iLXBvc3RpbmdzLXdyYXBwZXIgLmpvYi13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgIzgzODM4Mztcbn1cbi5qb2ItcG9zdGluZ3Mtd3JhcHBlciAuam9iLXdyYXBwZXIgLmpvYi1uYW1lIHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5qb2ItcG9zdGluZ3Mtd3JhcHBlciAuam9iLXdyYXBwZXIgLmpvYi1tZXRhZGF0YSB7XG4gIGNvbG9yOiAjODM4MzgzO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmpvYi1wb3N0aW5ncy13cmFwcGVyIC5qb2Itd3JhcHBlciAuam9iLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5qb2ItcG9zdGluZ3Mtd3JhcHBlciAuam9iLXdyYXBwZXIgLmFwcGx5LWxpbmsge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiAjODM4MzgzO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmpvYi1wb3N0aW5ncy13cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgLmpvYi1wb3N0aW5ncy13cmFwcGVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG4gIC5qb2ItcG9zdGluZ3Mtd3JhcHBlciAuam9iLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLmpvYi1wb3N0aW5ncy13cmFwcGVyIC5qb2Itd3JhcHBlciAuam9iLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5qb2ItcG9zdGluZ3Mtd3JhcHBlciAuam9iLXdyYXBwZXIgLmFwcGx5LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLmpvYi1wb3N0aW5ncy13cmFwcGVyIC5jZWxsOm50aC1sYXN0LW9mLXR5cGUoMikgLmpvYi13cmFwcGVyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gIH1cbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblBhcnRuZXIgV2l0aCBQRUdcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ucGFydG5lci13cmFwcGVyIHtcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgSW5xdWlyeSBCbG9ja1xuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICBQYXJ0bmVyIENvbnRhY3QgRm9ybVxuICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xufVxuLnBhcnRuZXItd3JhcHBlciBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZy10b3A6IDQycHg7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4O1xufVxuLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaGVhZGluZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmRlc2NyaXB0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaW5xdWlyeS13cmFwcGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaW5xdWlyeS13cmFwcGVyIC5pbnF1aXJ5IHtcbiAgd2lkdGg6IDI3MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmlucXVpcnktd3JhcHBlciAuaW5xdWlyeTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmlucXVpcnktd3JhcHBlciAuaW5xdWlyeTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmlucXVpcnktd3JhcHBlciAuaW5xdWlyeSAuc2VwZXJhdG9yIHtcbiAgbWFyZ2luOiAyNXB4IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMzBweDtcbiAgfVxuICAucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIC5oZWFkaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICB9XG4gIC5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmlucXVpcnktd3JhcHBlciAuaW5xdWlyeSB7XG4gICAgbWFyZ2luOiAwIDAgNjBweDtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbiAgLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaW5xdWlyeS13cmFwcGVyIC5pbnF1aXJ5OmZpcnN0LWNoaWxkLCAucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIC5pbnF1aXJ5LXdyYXBwZXIgLmlucXVpcnk6bnRoLWNoaWxkKDNuKzEpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gIH1cbiAgLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaW5xdWlyeS13cmFwcGVyIC5pbnF1aXJ5Om50aC1jaGlsZCgzbikge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcbiAgfVxuICAucGFydG5lci13cmFwcGVyIC5pbnF1aXJ5LWJsb2NrIC5pbnF1aXJ5LXdyYXBwZXIgLmlucXVpcnkge1xuICAgIG1hcmdpbjogMCA3NXB4IDY1cHg7XG4gICAgd2lkdGg6IDIyMHB4O1xuICB9XG4gIC5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmlucXVpcnktd3JhcHBlciAuaW5xdWlyeTpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIH1cbiAgLnBhcnRuZXItd3JhcHBlciAuaW5xdWlyeS1ibG9jayAuaW5xdWlyeS13cmFwcGVyIC5pbnF1aXJ5Om50aC1jaGlsZCgzbikge1xuICAgIG1hcmdpbi1yaWdodDogNDVweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5wYXJ0bmVyLXdyYXBwZXIgLmlucXVpcnktYmxvY2sgLmhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLnBhcnRuZXItY29udGFjdC1mb3JtIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wYXJ0bmVyLXdyYXBwZXIgLnBhcnRuZXItY29udGFjdC1mb3JtIC5zZWxlY3Qtc3ViamVjdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAucGFydG5lci13cmFwcGVyIGgxIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFydG5lci13cmFwcGVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWltYWdlLWJsb2NrIC5pbWFnZS1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxRTFFMUU7XG4gIHBhZGRpbmc6IDMwcHggMDtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIC5zZXJ2aWNlLWNhcmQubG9nby1jYXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgcGFkZGluZzogMzBweCA0MHB4O1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCAudGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkIC5sb2dvIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIC5zZXJ2aWNlLWNhcmQgLmRlc2NyaXB0aW9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCAuZGVzY3JpcHRpb24td3JhcHBlciAuZGVzY3JpcHRpb24ge1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAwIDI1cHggMjBweDtcbiAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgbGluZS1icmVhazogc3RyaWN0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGh5cGhlbnM6IGF1dG87XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkIC5kZXNjcmlwdGlvbi13cmFwcGVyIC5sZWFybi1tb3JlIHtcbiAgY29sb3I6ICM4MzgzODM7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4xNmVtO1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCAuZGVzY3JpcHRpb24td3JhcHBlciAubGVhcm4tbW9yZSBhIHtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkIC5pY29uIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA3NXB4O1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZDpob3ZlciAuaWNvbiwgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZDpob3ZlciAubG9nbyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkOmhvdmVyIC5kZXNjcmlwdGlvbi13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIC5zZXJ2aWNlLWNhcmQ6aG92ZXIubG9nby1jYXJkIC5sZWFybi1tb3JlIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIC5zZXJ2aWNlLWNhcmQuc2VydmljZSB7XG4gICAgbWFyZ2luOiAwIDE1cHggNDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCB7XG4gICAgcGFkZGluZzogMzBweCAwIDA7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZC5sb2dvLWNhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCAuaWNvbiB7XG4gICAgd2lkdGg6IDk1cHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZCAubGVhcm4tbW9yZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZC5zZXJ2aWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkLmxvZ28tY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkLnNlcnZpY2Uge1xuICAgIG1hcmdpbjogMCAzMHB4IDkwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkLnNlcnZpY2Uge1xuICAgIG1hcmdpbjogMCAwIDkwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtY2FyZHMgLnNlcnZpY2UtY2FyZC5zZXJ2aWNlLmxnLWNhcmQtMSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIC5zZXJ2aWNlLWNhcmQuc2VydmljZS5sZy1jYXJkLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyAuc2VydmljZS1jYXJkLnNlcnZpY2UubGctY2FyZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtaW1hZ2UtYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAuYWJvdXQtaW1hZ2UtYmxvY2sgLmltYWdlLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLmFib3V0LWNhcmRzIHtcbiAgICBwYWRkaW5nLXRvcDogMTMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDExMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAud2hhdC13ZS1kby13cmFwcGVyIC5hYm91dC1jYXJkcyB7XG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyRTJFMkU7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNlY3Rpb24tdGl0bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTNlbTtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG59XG4ud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGlkZXItbG9nb3Mge1xuICB3aWR0aDogMTAwJTtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGlkZXItbG9nb3MtbmF2IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5sb2dvcyAubG9nby13cmFwcGVyIHtcbiAgd2lkdGg6IDIxMHB4O1xuICBoZWlnaHQ6IDY1cHg7XG4gIG1hcmdpbjogMCBhdXRvIDIwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyAuc2xpZGVyLWxvZ29zLXdyYXBwZXIgLmxvZ29zIC5sb2dvLXdyYXBwZXIgLmxvZ28ge1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyAjbG9nby13cmFwcGVyLTMge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyB7XG4gICAgcGFkZGluZy10b3A6IDkwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyAuc2VjdGlvbi10aXRsZSB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGljay1kb3RzIC5zbGljay1hY3RpdmUge1xuICAgIHRvcDogLTJweDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAuc2xpZGVyLWxvZ29zLW5hdiB7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgei1pbmRleDogMTA7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tdG9wOiAtODBweDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAuc2xpZGVyLWxvZ29zLW5hdiAuc2hvdy1vbi1ob3ZlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAuc2xpZGVyLWxvZ29zLW5hdjpob3ZlciAuc2hvdy1vbi1ob3ZlciB7XG4gICAgZGlzcGxheTogaW5oZXJpdDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAuc2xpZGVyLWxvZ29zLW5hdjpob3ZlciAuaGlkZS1vbi1ob3ZlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAuc2xpZGVyLWxvZ29zLW5hdi5wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGlkZXItbG9nb3MtbmF2Lm5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDMwO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyAuc2xpZGVyLWxvZ29zLXdyYXBwZXIgLmxvZ29zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5sb2dvcyAubG9nby13cmFwcGVyIHtcbiAgICB3aWR0aDogMjMwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgMzBweCA1MHB4O1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5sb2dvcyAubG9nby13cmFwcGVyIC5sb2dvIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5sb2dvcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAubG9nb3MgLmxvZ28td3JhcHBlciB7XG4gICAgbWFyZ2luOiAwIDI1cHggNDBweDtcbiAgICB3aWR0aDogMjQwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAud2hhdC13ZS1kby13cmFwcGVyIC5wYXJ0bmVyLWxvZ29zIC5zbGlkZXItbG9nb3Mtd3JhcHBlciAubG9nb3Mge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLndoYXQtd2UtZG8td3JhcHBlciAucGFydG5lci1sb2dvcyAuc2xpZGVyLWxvZ29zLXdyYXBwZXIgLmxvZ29zIC5sb2dvLXdyYXBwZXIge1xuICAgIG1hcmdpbjogMCAxMHB4IDQwcHg7XG4gICAgd2lkdGg6IDI3MHB4O1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGlkZXItbG9nb3MtbmF2LnByZXYge1xuICAgIGxlZnQ6IC03NXB4O1xuICB9XG4gIC53aGF0LXdlLWRvLXdyYXBwZXIgLnBhcnRuZXItbG9nb3MgLnNsaWRlci1sb2dvcy13cmFwcGVyIC5zbGlkZXItbG9nb3MtbmF2Lm5leHQge1xuICAgIHJpZ2h0OiAtNzVweDtcbiAgfVxufVxuLndoYXQtd2UtZG8td3JhcHBlciAuc2xpY2stc2xpZGUgaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuLmNhcmQtZGVzY3JpcHRpb24tcmV2ZWFsIHtcbiAgcGFkZGluZzogNjBweCAyNXB4IDQwcHg7XG59XG4uY2FyZC1kZXNjcmlwdGlvbi1yZXZlYWwgLmxvZ28ge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5jYXJkLWRlc2NyaXB0aW9uLXJldmVhbCB7XG4gICAgcGFkZGluZzogODBweCA1NXB4IDcwcHg7XG4gIH1cbiAgLmNhcmQtZGVzY3JpcHRpb24tcmV2ZWFsIC5sb2dvIHtcbiAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhcmQtZGVzY3JpcHRpb24tcmV2ZWFsIHtcbiAgICBwYWRkaW5nOiA5MHB4IDgwcHg7XG4gIH1cbiAgLmNhcmQtZGVzY3JpcHRpb24tcmV2ZWFsIC5sb2dvIHtcbiAgICBwYWRkaW5nOiAwIDYwcHggNTBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5jYXJkLWRlc2NyaXB0aW9uLXJldmVhbCB7XG4gICAgcGFkZGluZzogMTEwcHggMTAwcHg7XG4gIH1cbiAgLmNhcmQtZGVzY3JpcHRpb24tcmV2ZWFsIC5sb2dvIHtcbiAgICBwYWRkaW5nOiAwIDkwcHggNTBweDtcbiAgfVxufVxuXG4ubmV3cy13cmFwcGVyLCAudmlkZW9zLXBhZ2Utd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG4ubmV3cy13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24sIC52aWRlb3MtcGFnZS13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLm5ld3Mtd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIC5kaXZpZGVyLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIC5kaXZpZGVyIHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29udGVudDogXCJcIjtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xufVxuLm5ld3Mtd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIGgxLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIGgxIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm5ld3Mtd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIC5zb2NpYWwtaWNvbnMsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24gLnNvY2lhbC1pY29ucyB7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBmb250LXNpemU6IDE5cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubmV3cy13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24sIC52aWRlb3MtcGFnZS13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLm5ld3Mtd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIGgxLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIGgxIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzNXB4O1xuICB9XG4gIC5uZXdzLXdyYXBwZXIgLmhlYWRpbmctc2VjdGlvbiAuZGl2aWRlciwgLnZpZGVvcy1wYWdlLXdyYXBwZXIgLmhlYWRpbmctc2VjdGlvbiAuZGl2aWRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgIGhlaWdodDogNjBweDtcbiAgfVxuICAubmV3cy13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24gLnNvY2lhbC1pY29ucywgLnZpZGVvcy1wYWdlLXdyYXBwZXIgLmhlYWRpbmctc2VjdGlvbiAuc29jaWFsLWljb25zIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5ld3Mtd3JhcHBlciAuaGVhZGluZy1zZWN0aW9uIC5zb2NpYWwtaWNvbnMsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5oZWFkaW5nLXNlY3Rpb24gLnNvY2lhbC1pY29ucyB7XG4gICAgZm9udC1zaXplOiAzNXB4O1xuICB9XG59XG4ubmV3cy13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciwgLm5ld3Mtd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIsIC52aWRlb3MtcGFnZS13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgIzgzODM4MztcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5uZXdzLXdyYXBwZXIgLm5ld3MtYXJ0aWNsZS13cmFwcGVyIGg0LCAubmV3cy13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIgaDQsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBoNCwgLnZpZGVvcy1wYWdlLXdyYXBwZXIgLnZpZGVvLXBhZ2Utd3JhcHBlciBoNCB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4ubmV3cy13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC5uZXdzLXdyYXBwZXIgLnZpZGVvLXBhZ2Utd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTk1cHg7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLm5ld3Mtd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIgLmxpbmssIC5uZXdzLXdyYXBwZXIgLnZpZGVvLXBhZ2Utd3JhcHBlciAubGluaywgLnZpZGVvcy1wYWdlLXdyYXBwZXIgLm5ld3MtYXJ0aWNsZS13cmFwcGVyIC5saW5rLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyIC5saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyOC4xMjVlbSkge1xuICAubmV3cy13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC5uZXdzLXdyYXBwZXIgLnZpZGVvLXBhZ2Utd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIgaW1nIHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzNC4zNzVlbSkge1xuICAubmV3cy13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC5uZXdzLXdyYXBwZXIgLnZpZGVvLXBhZ2Utd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciBpbWcsIC52aWRlb3MtcGFnZS13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIgaW1nIHtcbiAgICBoZWlnaHQ6IDM1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAubmV3cy13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciwgLm5ld3Mtd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIsIC52aWRlb3MtcGFnZS13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLm5ld3Mtd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIgaW1nLCAubmV3cy13cmFwcGVyIC52aWRlby1wYWdlLXdyYXBwZXIgaW1nLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIgaW1nLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyIGltZyB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLm5ld3Mtd3JhcHBlciAubmV3cy1hcnRpY2xlLXdyYXBwZXIgLmxpbmstd3JhcHBlciwgLm5ld3Mtd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyIC5saW5rLXdyYXBwZXIsIC52aWRlb3MtcGFnZS13cmFwcGVyIC5uZXdzLWFydGljbGUtd3JhcHBlciAubGluay13cmFwcGVyLCAudmlkZW9zLXBhZ2Utd3JhcHBlciAudmlkZW8tcGFnZS13cmFwcGVyIC5saW5rLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLm5ld3Mtd3JhcHBlciwgLnZpZGVvcy1wYWdlLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cblxuLmNvbnRhY3Qtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4uY29udGFjdC13cmFwcGVyIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5jb250YWN0LXdyYXBwZXIgLm1hcCB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uY29udGFjdC13cmFwcGVyIC5jb250YWN0LXVzLWZvcm0ge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8ge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8gLmRlcGFydG1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8gLmRlcGFydG1lbnQgYSB7XG4gIGNvbG9yOiAjRkZGRkZGO1xufVxuLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8gLmRlcGFydG1lbnQgLm5hbWUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uY29udGFjdC13cmFwcGVyIC5kZXBhcnRtZW50LWNvbnRhY3QtaW5mbyAuZGVwYXJ0bWVudCAuZW1haWwsXG4uY29udGFjdC13cmFwcGVyIC5kZXBhcnRtZW50LWNvbnRhY3QtaW5mbyAuZGVwYXJ0bWVudCAucGhvbmUge1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5jb250YWN0LXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgLmNvbnRhY3Qtd3JhcHBlciBoMSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBsaW5lLWhlaWdodDogNjRweDtcbiAgfVxuICAuY29udGFjdC13cmFwcGVyIC5jb250YWN0LXVzLWZvcm0ge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbiAgLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmNvbnRhY3Qtd3JhcHBlciAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8gLmRlcGFydG1lbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jb250YWN0LXdyYXBwZXIgLm1hcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5jb250YWN0LXdyYXBwZXIgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cblxuLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3Qge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgzODM4MztcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAubW9zdC1yZWNlbnQtcG9zdDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3QgaDQge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3QgLnBvc3QtaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3QgLnBvc3QtbWV0YS1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICM4MzgzODM7XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAubW9zdC1yZWNlbnQtcG9zdCAubW9yZXRhZyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEzZW07XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAubW9zdC1yZWNlbnQtcG9zdDpob3ZlciAubW9yZXRhZzphZnRlciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLnNpZGViYXIgI3NlYXJjaGZvcm0gLmlucHV0LWdyb3VwLCAuaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAuc2VhcmNoZm9ybS1zbWFsbCAjc2VhcmNoZm9ybSAuaW5wdXQtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3Qge1xuICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICB9XG4gIC5ob21lLWJsb2ctd3JhcHBlciAubW9zdC1yZWNlbnQtcG9zdC1zZWN0aW9uIC5tb3N0LXJlY2VudC1wb3N0Omxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhvbWUtYmxvZy13cmFwcGVyIC5tb3N0LXJlY2VudC1wb3N0LXNlY3Rpb24gLm1vc3QtcmVjZW50LXBvc3Q6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5ob21lLWJsb2ctd3JhcHBlciAubW9zdC1yZWNlbnQtcG9zdC1zZWN0aW9uIC5wYWdpbmF0aW9uIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAuc2lkZWJhciB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcbiAgfVxuICAuaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAubW9zdC1yZWNlbnQtcG9zdCBoNCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxuICAuaG9tZS1ibG9nLXdyYXBwZXIgLm1vc3QtcmVjZW50LXBvc3Qtc2VjdGlvbiAubW9zdC1yZWNlbnQtcG9zdCAucG9zdC1pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmhvbWUtYmxvZy13cmFwcGVyIC5zdWJzY3JpYmUtcG9zdC1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5ob21lLWJsb2ctd3JhcHBlciAuc3Vic2NyaWJlLXBvc3Qtc2VjdGlvbiAuY29udGFjdC1mb3JtIHtcbiAgY29sb3I6ICNGRkZGRkY7XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLnN1YnNjcmliZS1wb3N0LXNlY3Rpb24gLmNvbnRhY3QtZm9ybSAuc3Vic2NyaWJlLWJsb2ctdGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uaG9tZS1ibG9nLXdyYXBwZXIgLnN1YnNjcmliZS1wb3N0LXNlY3Rpb24gLmNvbnRhY3QtZm9ybSAuYnRuLXN1YnNjcmliZSB7XG4gIHBhZGRpbmc6IDE1cHggNDhweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ob21lLWJsb2ctd3JhcHBlciAuc3Vic2NyaWJlLXBvc3Qtc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmhvbWUtYmxvZy13cmFwcGVyIC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaG9tZS1ibG9nLXdyYXBwZXIgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cblxuLmJsb2ctd3JhcHBlciAuY2F0ZWdvcnktc2VsZWN0b3Ige1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzgzODM4MztcbiAgY29sb3I6ICM4MzgzODM7XG59XG5cbi5hcmNoaXZlLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xufVxuLmFyY2hpdmUtd3JhcHBlciAuYXJjaGl2ZS1pbm5lci13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5hcmNoaXZlLXdyYXBwZXIgaDEge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmFyY2hpdmUtd3JhcHBlciAuY2F0ZWdvcnktc2VsZWN0b3Ige1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmFyY2hpdmUtd3JhcHBlciAucG9zdC1zZWN0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5hcmNoaXZlLXdyYXBwZXIgLnBvc3Qtc2VjdGlvbiAucG9zdC1pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG4uYXJjaGl2ZS13cmFwcGVyIC5wb3N0LXNlY3Rpb24gLnBvc3QtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbi5hcmNoaXZlLXdyYXBwZXIgLnBvc3Qtc2VjdGlvbiAucG9zdC1tZXRhLXNlY3Rpb24ge1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi5hcmNoaXZlLXdyYXBwZXIgLnBvc3Qtc2VjdGlvbiAucG9zdC1tZXRhLXNlY3Rpb24gYSB7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuLmFyY2hpdmUtd3JhcHBlciAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYXJjaGl2ZS13cmFwcGVyIC5zaWRlYmFyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLmFyY2hpdmUtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICAuYXJjaGl2ZS13cmFwcGVyIC5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICB9XG4gIC5hcmNoaXZlLXdyYXBwZXIgLnBvc3Qtc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAuYXJjaGl2ZS13cmFwcGVyIC5hcmNoaXZlLWlubmVyLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hcmNoaXZlLXdyYXBwZXIgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuYXJjaGl2ZS13cmFwcGVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG5cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgaDEge1xuICBtYXJnaW46IDMwcHggMDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyAuaXRlbTpob3ZlciAuaG92ZXItc3RhdGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyAuaG92ZXItc3RhdGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02NXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IC5zZXBlcmF0b3Ige1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCAuaXRlbS1uYW1lLWhvdmVyIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyAuaG92ZXItc3RhdGUgLmhvdmVyLXN0YXRlLWNvbnRlbnQgLmxlYXJuLW1vcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCAuam9iLXRpdGxlLWhvdmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgY29sb3I6ICM4MzgzODM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkge1xuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IC5pdGVtLW5hbWUtaG92ZXIge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDVlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIH1cbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCAubGVhcm4tbW9yZSB7XG4gICAgcGFkZGluZzogMTBweCA0cHg7XG4gIH1cbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCAuaXRlbS1uYW1lLWhvdmVyIHtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IC5qb2ItdGl0bGUtaG92ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93IC5ob3Zlci1zdGF0ZSAuaG92ZXItc3RhdGUtY29udGVudCAubGVhcm4tbW9yZSB7XG4gICAgd2lkdGg6IDE0NXB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IC5sZWFybi1tb3JlIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyAuaXRlbS1ncmlkLXBpYyB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyAuaXRlbS1ncmlkLXBpYyBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cuYWRkaXRpb25hbC1yb3cge1xuICBtYXJnaW4tdG9wOiAtNDBweDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdy5mdW5kczpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cuZnVuZHMgLml0ZW0tZ3JpZC1waWMgaW1nIHtcbiAgaGVpZ2h0OiA3MHZ3O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmZ1bmRzIC5iaW8ge1xuICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmZ1bmRzIC5ob3Zlci1zdGF0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cuZnVuZHMgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IHtcbiAgLW1vei10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBsaW5lYXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDQwcHgsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDBweCwgMCk7XG4gIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDBweCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNDBweCwgMCk7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cuZnVuZHMgLmhvdmVyLXN0YXRlIC5ob3Zlci1zdGF0ZS1jb250ZW50IC5idG4ge1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UtaW4tb3V0O1xuICBvcGFjaXR5OiAwO1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmZ1bmRzIC5ob3Zlci1zdGF0ZTpob3ZlciAuaG92ZXItc3RhdGUtY29udGVudCwgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmZ1bmRzIC5ob3Zlci1zdGF0ZS5hY3RpdmUgLmhvdmVyLXN0YXRlLWNvbnRlbnQge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdy5mdW5kcyAuaG92ZXItc3RhdGU6aG92ZXIgLmhvdmVyLXN0YXRlLWNvbnRlbnQgLmJ0biwgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmZ1bmRzIC5ob3Zlci1zdGF0ZS5hY3RpdmUgLmhvdmVyLXN0YXRlLWNvbnRlbnQgLmJ0biB7XG4gIG9wYWNpdHk6IDE7XG59XG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuYWZ0ZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLml0ZW0taW5mby1iYWNrZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAycHg7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDB2dztcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5pdGVtLWluZm8tYmFja2dyb3VuZCAuaXRlbS1pbmZvIHtcbiAgcGFkZGluZy10b3A6IDQwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA2MHB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLml0ZW0taW5mby1iYWNrZ3JvdW5kIC5pdGVtLWluZm8gLm5hbWUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLml0ZW0taW5mby1iYWNrZ3JvdW5kIC5pdGVtLWluZm8gLmpvYi10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLml0ZW0taW5mby1iYWNrZ3JvdW5kIC5pdGVtLWluZm8gLmNsb3NlLWJ1dHRvbiB7XG4gIHRvcDogLTE1cHg7XG4gIGZvbnQtc2l6ZTogNTBweDtcbn1cbi5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5mb3JtLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIGgxIHtcbiAgICBtYXJnaW46IDYwcHggMCA0MHB4O1xuICB9XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLmFmdGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdy5mdW5kcyAuaXRlbS1ncmlkLXBpYyBpbWcge1xuICAgIGhlaWdodDogMjE1cHg7XG4gIH1cbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLml0ZW0taW5mby1iYWNrZ3JvdW5kIC5pdGVtLWluZm8gLmNsb3NlLWJ1dHRvbiB7XG4gICAgdG9wOiAtMTVweDtcbiAgICBmb250LXNpemU6IDU1cHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3c6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLml0ZW0tZ3JpZC1waWMge1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cgLml0ZW0tZ3JpZC1waWMgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIgLnNlY3Rpb24tcm93LmFkZGl0aW9uYWwtcm93IHtcbiAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuc2VjdGlvbi1yb3cuZnVuZHMgLml0ZW0tZ3JpZC1waWMgaW1nIHtcbiAgICBoZWlnaHQ6IDMxMHB4O1xuICB9XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5zZWN0aW9uLXJvdy5mdW5kcyAuaXRlbS1pbmZvLWJhY2tncm91bmQgLml0ZW0taW5mbyBpbWcge1xuICAgIG1pbi1oZWlnaHQ6IDYwMHB4O1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5pdGVtLWluZm8tYmFja2dyb3VuZCAuaXRlbS1pbmZvIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuaXRlbS1pbmZvLWJhY2tncm91bmQgLml0ZW0taW5mbyAubmFtZSB7XG4gICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgfVxuICAuZ3JpZC1hY2NvcmRpb24td3JhcHBlciAuaXRlbS1pbmZvLWJhY2tncm91bmQgLml0ZW0taW5mbyBpbWcge1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICB9XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIC5hZnRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5ncmlkLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG59XG5cbi5zaW5nbGUtcG9zdCAucG9zdC1tZXRhLXNlY3Rpb24gYSB7XG4gIGNvbG9yOiAjODM4MzgzO1xufVxuLnNpbmdsZS1wb3N0IC5wb3N0LWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uc2luZ2xlLXBvc3QgLmZlYXR1cmVkLWltYWdlLWNhcm91c2VsIC5zbGlkZXItZm9yIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5zaW5nbGUtcG9zdCAuZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbi5ibG9nLXNpbmdsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAuc2luZ2xlLXBvc3QgLnBvc3QtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLWltYWdlLWNhcm91c2VsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcbiAgfVxuICAuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLWltYWdlLWNhcm91c2VsIC5zbGlkZXItbmF2IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2luZ2xlLXBvc3QgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24uYmxvZy1zaW5nbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbiAgLnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uLmJsb2ctc2luZ2xlIC5oZWFkZXItc2VjdGlvbiB7XG4gICAgYm90dG9tOiA2MHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uLmJsb2ctc2luZ2xlIC5oZWFkZXItc2VjdGlvbiB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuLnNpbmdsZS1wb3N0IC5mZWF0dXJlZC1pbWFnZS1jYXJvdXNlbCAuc2xpZGVyLWZvciAuc2xpY2stc2xpZGUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5vcmJpdC1maWd1cmUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wcm9qZWN0LWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDAgMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG4ucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtZGV0YWlscyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cbi5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtZGV0YWlscyAucHJvamVjdC1zcGVjczpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LXNwZWNzIHtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xufVxuLnByb2plY3QtY29udGFpbmVyIC5wcm9qZWN0LWRldGFpbHMgLmZvcndhcmQsIC5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5iYWNrd2FyZCB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG59XG4ucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtZGV0YWlscyAucHJvamVjdC1uYXZpZ2F0aW9uLWxpbmtzIHtcbiAgY29sb3I6ICM4MDgwODA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnByb2plY3QtY29udGFpbmVyIC5wcm9qZWN0LWRldGFpbHMgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcy5mb3J3YXJkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cbi5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LW5hdmlnYXRpb24tbGlua3MuYmFja3dhcmQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLnByb2plY3QtY29udGFpbmVyIC5wcm9qZWN0LWRldGFpbHMgLnByb2plY3RzLXBhZ2UtbGluayB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDQuOTk4NzVlbSkge1xuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtZGV0YWlscyAucHJvamVjdHMtcGFnZS1saW5rIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ0Ljk5ODc1ZW0pIHtcbiAgLnByb2plY3QtY29udGFpbmVyIC5wcm9qZWN0LWRldGFpbHMge1xuICAgIHBhZGRpbmctdG9wOiAyZW07XG4gIH1cbn1cbi5wcm9qZWN0LWNvbnRhaW5lciAuc2xpZGVyLW5hdiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucHJvamVjdC1jb250YWluZXIgLnNsaWRlci1mb3IgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAtNnB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ1ZW0pIHtcbiAgLnByb2plY3QtY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIHBhZGRpbmctdG9wOiAxZW07XG4gIH1cbiAgLnByb2plY3QtY29udGFpbmVyIC5wcm9qZWN0LWRldGFpbHMgLnByb2plY3Qtc3BlY3M6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG4gIC5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LW5hdmlnYXRpb24tbGlua3MuYmFja3dhcmQge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wcm9qZWN0LWNvbnRhaW5lciAuZmVhdHVyZWQtaW1hZ2UtY2Fyb3VzZWwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIH1cbiAgLnByb2plY3QtY29udGFpbmVyIC52ZXJ0aWNsZSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgIzcxOGI3NTtcbiAgICBoZWlnaHQ6IDYwMHB4O1xuICAgIHdpZHRoOiAxcHg7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMzBweDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtZGV0YWlscyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICB9XG4gIC5wcm9qZWN0LWNvbnRhaW5lciAucHJvamVjdC1kZXRhaWxzIC5wcm9qZWN0LXNwZWNzOmxhc3Qtb2YtdHlwZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcy5mb3J3YXJkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcy5mb3J3YXJkIHNwYW4ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICByaWdodDogMDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcy5iYWNrd2FyZCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgfVxuICAucHJvamVjdC1jb250YWluZXIgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcy5iYWNrd2FyZCBzcGFuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgbGVmdDogMDtcbiAgfVxufVxuXG4ucGlwZWxpbmUgLmhlcm8td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFFMUUxRTtcbn1cbi5waXBlbGluZSAuaGVyby13cmFwcGVyIC5oZXJvIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4ucGlwZWxpbmUgLmhlcm8td3JhcHBlciAucHJvamVjdC1uYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwcHg7XG4gIHotaW5kZXg6IDU7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cbi5waXBlbGluZSAuaGVyby13cmFwcGVyIC5vdmVybGF5LXRleHQge1xuICBvcGFjaXR5OiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAzMCUpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cyBsaW5lYXIsIG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0NC45OTg3NWVtKSB7XG4gIC5waXBlbGluZSAuaGVyby13cmFwcGVyIC5vdmVybGF5LXRleHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLm92ZXJsYXktdGV4dC5pbi12aWV3IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAlKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xufVxuLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLnRhZ2xpbmUge1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5waXBlbGluZSAuaGVyby13cmFwcGVyIC5oZXJvLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLnByb2plY3QtbmFtZSB7XG4gICAgdG9wOiA1MHB4O1xuICB9XG4gIC5waXBlbGluZSAuaGVyby13cmFwcGVyIC50YWdsaW5lLCAucGlwZWxpbmUgLmhlcm8td3JhcHBlciAucHJvamVjdC1uYW1lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1heC13aWR0aDogNDVyZW07XG4gIH1cbiAgLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLm92ZXJsYXktdGV4dCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMjUlKTtcbiAgfVxuICAucGlwZWxpbmUgLmhlcm8td3JhcHBlciAub3ZlcmxheS10ZXh0LmluLXZpZXcge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGlwZWxpbmUgLmhlcm8td3JhcHBlciAudGFnbGluZSB7XG4gICAgYm90dG9tOiA3MHB4O1xuICB9XG4gIC5waXBlbGluZSAuaGVyby13cmFwcGVyIC5wcm9qZWN0LW5hbWUge1xuICAgIG1heC13aWR0aDogNjRyZW07XG4gIH1cbiAgLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLm92ZXJsYXktdGV4dCB7XG4gICAgZm9udC1zaXplOiA2MHB4O1xuICAgIGxpbmUtaGVpZ2h0OiA2NHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA4Ny41ZW0pIHtcbiAgLnBpcGVsaW5lIC5oZXJvLXdyYXBwZXIgLnByb2plY3QtbmFtZSB7XG4gICAgdG9wOiA2MHB4O1xuICB9XG4gIC5waXBlbGluZSAuaGVyby13cmFwcGVyIC5wcm9qZWN0LW5hbWUge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbi5waXBlbGluZSAucHJvamVjdC1jYXJvdXNlbCB7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG4ucGlwZWxpbmUgLnByb2plY3QtY2Fyb3VzZWwgLnNsaWRlci1mb3IgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuLnBpcGVsaW5lIC5oaWdobGlnaHQtc3Rvcnktd3JhcHBwZXIge1xuICBwYWRkaW5nLXRvcDogNjBweDtcbn1cbi5waXBlbGluZSAuaGlnaGxpZ2h0LXN0b3J5LXdyYXBwcGVyIC5oZWFkaW5nIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjFweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5waXBlbGluZSAuaGlnaGxpZ2h0LXN0b3J5LXdyYXBwcGVyIC5oaWdobGlnaHQtc3Rvcnkge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLnBpcGVsaW5lIC5mYXEtbmV3cy13cmFwcHBlciAuZmFxLWhlYWRpbmcsIC5waXBlbGluZSAuZmFxLW5ld3Mtd3JhcHBwZXIgLm5ld3MtaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4ucGlwZWxpbmUgLmZhcS1uZXdzLXdyYXBwcGVyIC5uZXdzLWhlYWRpbmcge1xuICBwYWRkaW5nLXRvcDogMjBweDtcbn1cbi5waXBlbGluZSAuZmFxLW5ld3Mtd3JhcHBwZXIgLmZhcSB7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDE2cHg7XG59XG4ucGlwZWxpbmUgLmZhcS1uZXdzLXdyYXBwcGVyIC5mYXEgLnF1ZXN0aW9uIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5waXBlbGluZSAuZmFxLW5ld3Mtd3JhcHBwZXIgLmZhcTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5waXBlbGluZSAuZmFxLW5ld3Mtd3JhcHBwZXIgLmFydGljbGUge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLnBpcGVsaW5lIC5mYXEtbmV3cy13cmFwcHBlciAuYXJ0aWNsZSAuZXh0ZXJuYWwtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGlwZWxpbmUgLmZhcS1uZXdzLXdyYXBwcGVyIC5mYXE6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAucGlwZWxpbmUgLmZhcS1uZXdzLXdyYXBwcGVyIC5uZXdzLXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gNjBweCk7XG4gIH1cbiAgLnBpcGVsaW5lIC5mYXEtbmV3cy13cmFwcHBlciAubmV3cy13cmFwcGVyIC5uZXdzLWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG4ucGlwZWxpbmUgLmNvbnRhY3QtZm9ybS13cmFwcGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5waXBlbGluZSAuY29udGFjdC1mb3JtLXdyYXBwZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbn1cbi5waXBlbGluZSAuY29udGFjdC1mb3JtLXdyYXBwZXIgLmNvbnRhY3QtZm9ybS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaW5nbGUtcHJvamVjdCAubGFiZWxlZC1pbWFnZXMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgfVxufVxuXG4uc2luZ2xlLWFydGljbGUge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlLWhlYWRlciAub3ZlcmxpbmUsIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZS1oZWFkZXIgLmRhdGUge1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZS1oZWFkZXIgLmRhdGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlLWhlYWRlciAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSAucGFnZS12aWRlbyB7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gaWZyYW1lLCAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxOTBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gLnBsYXktaWNvbiB7XG4gIHotaW5kZXg6IDQ7XG4gIGZvbnQtc2l6ZTogMTIwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnN1YmhlYWRpbmcge1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAyN3B4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4ud2YtYWN0aXZlIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSAuc3ViaGVhZGluZyB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLmJvZHkge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIC5ib2R5IGEge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSAuc3Vic2VjdGlvbiBhIHtcbiAgY29sb3I6ICNGRkZGRkY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnN1YnNlY3Rpb24gaDUge1xuICBmb250LWZhbWlseTogc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDIycHg7XG59XG4ud2YtYWN0aXZlIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSAuc3Vic2VjdGlvbiBoNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlBsYXlmYWlyIERpc3BsYXlcIiwgc2VyaWY7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnN1YnNlY3Rpb24gLnRleHQge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIC5jb250YWN0cyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLmFydGljbGUgLmNvbnRhY3RzIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbi5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSAuY29udGFjdHMgLmNvbnRhY3Qge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuLnNpbmdsZS1hcnRpY2xlIC5wcmVzcy1yZWxlYXNlIC5wcmVzcy1pbm5lci13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLnByZXNzLXJlbGVhc2UgLnNpZGViYXItaGVhZGluZyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLnByZXNzLXJlbGVhc2UgLnNpZGViYXItYXJ0aWNsZSB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4uc2luZ2xlLWFydGljbGUgLnByZXNzLXJlbGVhc2UgLnNpZGViYXItYXJ0aWNsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5zaW5nbGUtYXJ0aWNsZSAucHJlc3MtcmVsZWFzZSAuc2lkZWJhci1hcnRpY2xlIC5zaWRlYmFyLWRhdGUge1xuICBjb2xvcjogIzgzODM4Mztcbn1cbi5zaW5nbGUtYXJ0aWNsZSAucHJlc3MtcmVsZWFzZSAuc2lkZWJhci1hcnRpY2xlIC5saW5rLXdyYXBwZXIgLmV4dGVybmFsLWxpbmsge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogI0ZGRkZGRjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5zaW5nbGUtYXJ0aWNsZSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxuICAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gaWZyYW1lLCAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgdmlkZW8ge1xuICAgIGhlaWdodDogNDYwcHg7XG4gIH1cbiAgLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIC5zdWJzZWN0aW9uIGg1IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gIH1cbiAgLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIC5jb250YWN0cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNpbmdsZS1hcnRpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG4gIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZS1oZWFkZXIgLnRpdGxlIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICB9XG4gIC5zaW5nbGUtYXJ0aWNsZSAuYXJ0aWNsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gaWZyYW1lLCAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgdmlkZW8ge1xuICAgIGhlaWdodDogNDcwcHg7XG4gIH1cbiAgLnNpbmdsZS1hcnRpY2xlIC5hcnRpY2xlIC5jb250YWN0cyAuY29udGFjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAuc2luZ2xlLWFydGljbGUgLmZlYXR1cmVkLWltYWdlLWNhcm91c2VsIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIC5zaW5nbGUtYXJ0aWNsZSAucHJlc3MtcmVsZWFzZSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gIH1cbiAgLnNpbmdsZS1hcnRpY2xlIC5wcmVzcy1yZWxlYXNlIC5wcmVzcy1pbm5lci13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDg3LjVlbSkge1xuICAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgLnBhZ2UtdmlkZW8gaWZyYW1lLCAuc2luZ2xlLWFydGljbGUgLmFydGljbGUgdmlkZW8ge1xuICAgIGhlaWdodDogNTYwcHg7XG4gIH1cbn1cblxuLnNpbmdsZS1qb2Ige1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAvKiBUaGVuIHN0eWxlIHRoZSBpZnJhbWUgdG8gZml0IGluIHRoZSBjb250YWluZXIgZGl2IHdpdGggZnVsbCBoZWlnaHQgYW5kIHdpZHRoICovXG59XG4uc2luZ2xlLWpvYiAuY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDU2LjI1JTsgLyogMTY6OSBBc3BlY3QgUmF0aW8gKGRpdmlkZSA5IGJ5IDE2ID0gMC41NjI1KSAqL1xufVxuLnNpbmdsZS1qb2IgLnJlc3BvbnNpdmUtaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc2luZ2xlLWpvYiAuam9iLWNvbnRhaW5lciBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG4uc2luZ2xlLWpvYiAuam9iLWNvbnRhaW5lciAuam9iLW1ldGFkYXRhIHtcbiAgY29sb3I6ICM4MzgzODM7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG4uc2luZ2xlLWpvYiAuam9iLWRhdGEtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItZGF0YS1jb250YWluZXIgLnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItZGF0YS1jb250YWluZXIgLnRleHQge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1kYXRhLWNvbnRhaW5lciAudGV4dC5xdWFsaWZpY2F0aW9ucyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc2luZ2xlLWpvYiAuam9iLWRhdGEtY29udGFpbmVyIC50ZXh0LnF1YWxpZmljYXRpb25zIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItZGF0YS1jb250YWluZXIgLnRleHQgdWwge1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLnVwbG9hZC1sYWJlbCB7XG4gIGNvbG9yOiAjODM4MzgzO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tdG9wOiAtMjBweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBsaW5lLWhlaWdodDogMjRweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmFkZC1maWxlcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiA0MHB4O1xuICByaWdodDogMjVweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmNvZGVkcm9wei11cGxvYWQtaGFuZGxlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5jb2RlZHJvcHotdXBsb2FkLWhhbmRsZXIgLmNvZGVkcm9wei11cGxvYWQtY29udGFpbmVyIHtcbiAgcGFkZGluZzogODBweCAyMHB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuY29kZWRyb3B6LXVwbG9hZC1oYW5kbGVyIC5jb2RlZHJvcHotdXBsb2FkLWNvbnRhaW5lciBoMyB7XG4gIGNvbG9yOiAjOGVhYTk2O1xuICBmb250LXNpemU6IDYwcHg7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICBtYXJnaW46IDAgMCAxMHB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuY29kZWRyb3B6LXVwbG9hZC1oYW5kbGVyIC5jb2RlZHJvcHotdXBsb2FkLWNvbnRhaW5lciBzcGFuIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmNvZGVkcm9wei11cGxvYWQtaGFuZGxlciAuY29kZWRyb3B6LXVwbG9hZC1jb250YWluZXIgLmNvZGVkcm9wei1idG4td3JhcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIHNwYW4uaGFzLWVycm9yLW1zZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyODBweDtcbiAgbGVmdDogMjBweDtcbiAgd2lkdGg6IDgwdnc7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1cyB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0MHB4O1xuICBsZWZ0OiAyMHB4O1xuICB3aWR0aDogODB2dztcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzOm50aC1jaGlsZCg0KSB7XG4gIHRvcDogMTMwcHg7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1czpudGgtY2hpbGQoNSkge1xuICB0b3A6IDIyMHB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuZG5kLXVwbG9hZC1zdGF0dXM6bnRoLWNoaWxkKDYpIHtcbiAgdG9wOiAyODBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzIC5kbmQtdXBsb2FkLWRldGFpbHMge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMzczNzM3O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzIC5kbmQtdXBsb2FkLWRldGFpbHMgLm5hbWUge1xuICBjb2xvcjogI0ZGRkZGRjtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuZG5kLXVwbG9hZC1zdGF0dXMgLmRuZC11cGxvYWQtZGV0YWlscyAubmFtZSBlbSB7XG4gIGNvbG9yOiAjODM4MzgzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuZG5kLXVwbG9hZC1zdGF0dXMgLmRuZC11cGxvYWQtZGV0YWlscyAuZG5kLWljb24tcmVtb3ZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwieFwiO1xuICBjb2xvcjogIzhlYWE5NjtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBmb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzIC5kbmQtdXBsb2FkLWRldGFpbHMgLmRuZC1wcm9ncmVzcy1iYXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBoZWlnaHQ6IDVweDtcbn1cbi5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzIC5kbmQtdXBsb2FkLWRldGFpbHMgLmRuZC1wcm9ncmVzcy1iYXIgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1cyAuZG5kLXVwbG9hZC1pbWFnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIHBhZGRpbmc6IDE2cHggNDVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0NWVtKSB7XG4gIC5zaW5nbGUtam9iIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmFkZC1maWxlcyB7XG4gICAgYm90dG9tOiA4MHB4O1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gc3Bhbi5oYXMtZXJyb3ItbXNnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyNjBweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHdpZHRoOiA1MjBweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1czpudGgtY2hpbGQoNCkge1xuICAgIHRvcDogMTEwcHg7XG4gIH1cbiAgLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuZG5kLXVwbG9hZC1zdGF0dXM6bnRoLWNoaWxkKDUpIHtcbiAgICB0b3A6IDE4MHB4O1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzOm50aC1jaGlsZCg2KSB7XG4gICAgdG9wOiAyNjBweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1cyAuZG5kLXVwbG9hZC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1cyAuZG5kLXVwbG9hZC1kZXRhaWxzIC5uYW1lIGVtIHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIHBhZGRpbmctbGVmdDogMjAwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmNvZGVkcm9wei11cGxvYWQtaGFuZGxlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5kbmQtdXBsb2FkLXN0YXR1cyB7XG4gICAgd2lkdGg6IDY1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2luZ2xlLWpvYiB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIHNwYW4uaGFzLWVycm9yLW1zZyB7XG4gICAgdG9wOiAyODBweDtcbiAgfVxuICAuc2luZ2xlLWpvYiAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lciAuY29udGFjdC1mb3JtIC5jb2RlZHJvcHotdXBsb2FkLWhhbmRsZXIgLmNvZGVkcm9wei11cGxvYWQtY29udGFpbmVyIHNwYW4ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnNpbmdsZS1qb2IgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXIgLmNvbnRhY3QtZm9ybSAuY29kZWRyb3B6LXVwbG9hZC1oYW5kbGVyIC5jb2RlZHJvcHotdXBsb2FkLWNvbnRhaW5lciAuY29kZWRyb3B6LWJ0bi13cmFwIHtcbiAgICBkaXNwbGF5OiBpbmhlcml0O1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmNvZGVkcm9wei11cGxvYWQtaGFuZGxlciAuY29kZWRyb3B6LXVwbG9hZC1jb250YWluZXIgLmNvZGVkcm9wei1idG4td3JhcCBhIHtcbiAgICBjb2xvcjogI0ZGRkZGRjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLmRuZC11cGxvYWQtc3RhdHVzIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaW5nbGUtam9iIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVyIC5jb250YWN0LWZvcm0gLnVwbG9hZC1sYWJlbCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogODcuNWVtKSB7XG4gIC5zaW5nbGUtam9iIC5qb2ItY29udGFpbmVyIC5qb2ItbWV0YWRhdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLnNpbmdsZS1qb2IgLmpvYi1kYXRhLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgfVxufSIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuICogVmVyc2lvbiA2LjUuMVxuICogZm91bmRhdGlvbi56dXJiLmNvbVxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gRGVwZW5kZW5jaWVzXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZVxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBzbWFsbDogMCxcbiAgbWVkaXVtOiA2NDBweCxcbiAgbGFyZ2U6IDEwMjRweCxcbiAgeGxhcmdlOiAxMjAwcHgsXG4gIHh4bGFyZ2U6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogMDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIEV2ZW50dWFsIG91dHB1dFxuICAkc3RyOiAnJztcbiAgLy8gSXMgaXQgYSBuYW1lZCBtZWRpYSBxdWVyeT9cbiAgJG5hbWVkOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cbiAgQGVsc2UgaWYgJGJwID09ICdyZXRpbmEnIHtcbiAgICBAcmV0dXJuICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSwgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpJztcbiAgfVxuXG4gIC8vIFRyeSB0byBwdWxsIGEgbmFtZWQgYnJlYWtwb2ludCBvdXQgb2YgdGhlICRicmVha3BvaW50cyBtYXBcbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgICAgICAkYnAtbWF4OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgfVxuXG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkYnApO1xuICAgICAgJG5hbWVkOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyICRicmVha3BvaW50cyBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29udmVydCBhbnkgcGl4ZWwsIHJlbSwgb3IgdW5pdGxlc3MgdmFsdWUgdG8gZW1cbiAgJGJwOiAtemYtYnAtdG8tZW0oJGJwKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gIEBpZiAkYnAtbWF4IHtcbiAgICAkYnAtbWF4OiAtemYtYnAtdG8tZW0oJGJwLW1heCkgLSAuMDAxMjU7XG4gIH1cblxuICAvLyBDb25kaXRpb25zIHRvIHNraXAgbWVkaWEgcXVlcnkgY3JlYXRpb25cbiAgLy8gLSBJdCdzIGEgbmFtZWQgYnJlYWtwb2ludCB0aGF0IHJlc29sdmVkIHRvIFwiMCBkb3duXCIgb3IgXCIwIHVwXCJcbiAgLy8gLSBJdCdzIGEgbnVtZXJpYyBicmVha3BvaW50IHRoYXQgcmVzb2x2ZWQgdG8gXCIwIFwiICsgYW55dGhpbmdcbiAgQGlmICRicCA+IDBlbSBvciAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gYG9ubHlgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbikgYW5kIChtYXgtd2lkdGg6IG4pYFxuICAgIEBpZiAkZGlyID09ICdvbmx5JyB7XG4gICAgICAvLyBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gXCJvbmx5XCIgcmFuZ2VcbiAgICAgIEBpZiAkbmFtZWQgPT0gdHJ1ZSB7XG4gICAgICAgIC8vIE9ubHkgdXNlIFwibWluLXdpZHRoXCIgaWYgdGhlIGZsb29yIGlzIGdyZWF0ZXIgdGhhbiAwXG4gICAgICAgIEBpZiAkYnAgPiAwZW0ge1xuICAgICAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG5cbiAgICAgICAgICAvLyBPbmx5IGFkZCBcImFuZFwiIHRvIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICAgIEBpZiAkYnAtbWF4ICE9IG51bGwge1xuICAgICAgICAgICAgJHN0cjogJHN0ciArICcgYW5kICc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gT25seSB1c2UgXCJtYXgtd2lkdGhcIiBpZiB0aGVyZSdzIGEgY2VpbGluZ1xuICAgICAgICBAaWYgJGJwLW1heCAhPSBudWxsIHtcbiAgICAgICAgICAkc3RyOiAkc3RyICsgJyhtYXgtd2lkdGg6ICN7JGJwLW1heH0pJztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYGRvd25gIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1heC13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGRpciA9PSAnZG93bicge1xuICAgICAgJG1heDogaWYoJG5hbWVkLCAkYnAtbWF4LCAkYnApO1xuXG4gICAgICAvLyBTa2lwIG1lZGlhIHF1ZXJ5IGNyZWF0aW9uIGlmIGlucHV0IHZhbHVlIGlzIGV4YWN0bHkgXCIwIGRvd25cIixcbiAgICAgIC8vIHVubGVzcyB0aGUgZnVuY3Rpb24gd2FzIGNhbGxlZCBhcyBcInNtYWxsIGRvd25cIiwgaW4gd2hpY2ggY2FzZSBpdCdzIGp1c3QgXCJzbWFsbCBvbmx5XCJcbiAgICAgIEBpZiAkbmFtZWQgb3IgJGJwID4gMGVtIHtcbiAgICAgICAgQGlmICRtYXggIT0gbnVsbCB7XG4gICAgICAgICAgJHN0cjogJHN0ciArICcobWF4LXdpZHRoOiAjeyRtYXh9KSc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBgdXBgIHJhbmdlcyB1c2UgdGhlIGZvcm1hdCBgKG1pbi13aWR0aDogbilgXG4gICAgQGVsc2UgaWYgJGJwID4gMGVtIHtcbiAgICAgICRzdHI6ICRzdHIgKyAnKG1pbi13aWR0aDogI3skYnB9KSc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcCwgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlKSB7XG4gICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICR2YWx1ZSk7XG4gICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuXG4gICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICB9XG4gICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgQGlmICRzdHIgPT0gJycge1xuICAgIEBjb250ZW50O1xuICB9XG5cbiAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgQGVsc2Uge1xuICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICBAaWYgJGJwICE9IG51bGwgYW5kICRicCA8PSAkcGJwIHtcbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmRfa2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kX2tleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmRfa2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gIEZvdW5kYXRpb25QcmVzcyBzZXR0aW5ncy5cclxuLy8gIEJhc2VkIG9uIEZvdW5kYXRpb24gZm9yIFNpdGVzIHY2LjQuM1xyXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy9cclxuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxyXG4vL1xyXG4vLyAgIDEuIEdsb2JhbFxyXG4vLyAgIDIuIEJyZWFrcG9pbnRzXHJcbi8vICAgMy4gVGhlIEdyaWRcclxuLy8gICA0LiBCYXNlIFR5cG9ncmFwaHlcclxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gICA2LiBBYmlkZVxyXG4vLyAgIDcuIEFjY29yZGlvblxyXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XHJcbi8vICAgOS4gQmFkZ2VcclxuLy8gIDEwLiBCcmVhZGNydW1ic1xyXG4vLyAgMTEuIEJ1dHRvblxyXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxyXG4vLyAgMTMuIENhbGxvdXRcclxuLy8gIDE0LiBDYXJkXHJcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vICAxNi4gRHJpbGxkb3duXHJcbi8vICAxNy4gRHJvcGRvd25cclxuLy8gIDE4LiBEcm9wZG93biBNZW51XHJcbi8vICAxOS4gRmxleGJveCBVdGlsaXRpZXNcclxuLy8gIDIwLiBGb3Jtc1xyXG4vLyAgMjEuIExhYmVsXHJcbi8vICAyMi4gTWVkaWEgT2JqZWN0XHJcbi8vICAyMy4gTWVudVxyXG4vLyAgMjQuIE1ldGVyXHJcbi8vICAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAgMjYuIE9yYml0XHJcbi8vICAyNy4gUGFnaW5hdGlvblxyXG4vLyAgMjguIFByb2dyZXNzIEJhclxyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XHJcbi8vICAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXHJcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcclxuLy8gIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXHJcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xyXG4vLyAgMzcuIFByb3RvdHlwZSBQb3NpdGlvblxyXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXHJcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxyXG4vLyAgNDAuIFByb3RvdHlwZSBTaGFkb3dcclxuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXHJcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gIDQzLiBQcm90b3R5cGUgVGV4dC1EZWNvcmF0aW9uXHJcbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cclxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcclxuLy8gIDQ2LiBSZXNwb25zaXZlIEVtYmVkXHJcbi8vICA0Ny4gUmV2ZWFsXHJcbi8vICA0OC4gU2xpZGVyXHJcbi8vICA0OS4gU3dpdGNoXHJcbi8vICA1MC4gVGFibGVcclxuLy8gIDUxLiBUYWJzXHJcbi8vICA1Mi4gVGh1bWJuYWlsXHJcbi8vICA1My4gVGl0bGUgQmFyXHJcbi8vICA1NC4gVG9vbHRpcFxyXG4vLyAgNTUuIFRvcCBCYXJcclxuLy8gIDU2LiBYeSBHcmlkXHJcblxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG5AaW1wb3J0ICdnbG9iYWwvY29sb3JzJztcclxuXHJcbi8vIDEuIEdsb2JhbFxyXG4vLyAtLS0tLS0tLS1cclxuJGxpZ2h0LWdyYXk6ICM3QjdCN0I7XHJcbiRtZWRpdW0tZ3JheTogIzgwODA4MDtcclxuJGdyYXk6ICM4MzgzODM7XHJcbiRkYXJrLWdyYXk6ICMyNzI3Mjc7XHJcbiRsaWdodC1ibGFjazogIzFFMUUxRTtcclxuJGJsYWNrOiAjMTQxNDE0O1xyXG4kZGFyay1ibGFjazogIzAwMDtcclxuJHdoaXRlOiAjRkZGRkZGO1xyXG4kZGFyay13aGl0ZTogI0U1RTdFOTsgIC8vYWthIHJlYWxseS1saWdodC1ncmF5XHJcbiRyZWQ6ICM4NjI3Mzc7XHJcbiRncmVlbjogIzhlYWE5NjtcclxuXHJcblxyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJTtcclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTE3MCk7XHJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xyXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXHJcbiAgcHJpbWFyeTogIzE3NzliYSxcclxuICBzZWNvbmRhcnk6ICM3Njc2NzYsXHJcbiAgc3VjY2VzczogIzNhZGI3NixcclxuICB3YXJuaW5nOiAjZmZhZTAwLFxyXG4gIGFsZXJ0OiAjY2M0YjM3LFxyXG4pO1xyXG4kYm9keS1iYWNrZ3JvdW5kOiAkbGlnaHQtYmxhY2s7XHJcbiRib2R5LWZvbnQtY29sb3I6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1mYW1pbHk6XCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuJGJvZHktZm9udC1mYWxsYmFjazogc2Fucy1zZXJpZjtcclxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XHJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XHJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XHJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xyXG4kZ2xvYmFsLXJhZGl1czogMDtcclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDA7XHJcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogdHJ1ZTtcclxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xyXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG87XHJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDA7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbi8vTWF4IHdpZHRoc1xyXG4kZ3JpZC1jb250YWluZXItbWF4LXdpZHRoLXNtOiByZW0tY2FsYyg3MTlweCk7XHJcbiRncmlkLWNvbnRhaW5lci1tYXgtd2lkdGgtbWQ6IHJlbS1jYWxjKDcyMHB4KTtcclxuJGdyaWQtY29udGFpbmVyLW1heC13aWR0aC1sZzogcmVtLWNhbGMoMTAyNHB4KTtcclxuJGdyaWQtY29udGFpbmVyLW1heC13aWR0aC14bDogcmVtLWNhbGMoMTIwMHB4KTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWtwb2ludHM6IChcclxuICBzbWFsbDogMCxcclxuICBtZWRpdW06IDcyMHB4LFxyXG4gIGxhcmdlOiAxMDI0cHgsXHJcbiAgeGxhcmdlOiAxNDAwcHgsXHJcbiAgeHhsYXJnZTogMTUwMHB4LFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcclxuXHJcbi8vIDMuIFRoZSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XHJcbiRncmlkLWNvbHVtbi1ndXR0ZXI6IChcclxuICBzbWFsbDogMzBweCxcclxuICBtZWRpdW06IDMwcHgsXHJcbik7XHJcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xyXG4kZ3JpZC1jb2x1bW4tYWxpYXM6ICdjb2x1bW5zJztcclxuJGJsb2NrLWdyaWQtbWF4OiA4O1xyXG5cclxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGhlYWRlci1mb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xyXG4kaGVhZGVyLXNlY29uZGFyeS1mb250LWZhbWlseTogXCJXb3JrIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuJGhlYWRlci1mb250LWZhbGxiYWNrOiBzZXJpZjtcclxuJGhlYWRlci1zZWNvbmRhcnktZm9udC1mYWxsYmFjazogc2Fucy1zZXJpZjtcclxuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbDtcclxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XHJcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XHJcbiRoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJGhlYWRlci1zdHlsZXM6IChcclxuICBzbWFsbDogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyOCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDI4KSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMjQpLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICksXHJcbiAgbWVkaXVtOiAoXHJcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogMzQpLFxyXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAyNCksXHJcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcclxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXHJcbiAgKSxcclxuKTtcclxuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kc21hbGwtZm9udC1zaXplOiA4MCU7XHJcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRjb2RlLWNvbG9yOiAkYmxhY2s7XHJcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4kY29kZS1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kY29kZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSk7XHJcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYW5jaG9yLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkYW5jaG9yLWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvO1xyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XHJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcclxuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcclxuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XHJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbTtcclxuJGJsb2NrcXVvdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XHJcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xyXG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjaztcclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XHJcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjaztcclxuXHJcbi8vIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1O1xyXG4kbGVhZC1saW5laGVpZ2h0OiAxLjY7XHJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xyXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW07XHJcblxyXG4vLyA2LiBBYmlkZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGFiaWRlLWlucHV0czogdHJ1ZTtcclxuJGFiaWRlLWxhYmVsczogdHJ1ZTtcclxuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuXHJcbi8vIDcuIEFjY29yZGlvblxyXG4vLyAtLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZTtcclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XHJcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICR3aGl0ZTtcclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsO1xyXG4kYWNjb3JkaW9ubWVudS1ib3JkZXI6IG51bGw7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XHJcbiRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XHJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4O1xyXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyA5LiBCYWRnZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XHJcblxyXG4vLyAxMC4gQnJlYWRjcnVtYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XHJcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJztcclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcblxyXG4vLyAxMS4gQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcclxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xyXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XHJcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcclxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcclxuJGJ1dHRvbi1zaXplczogKFxyXG4gIHRpbnk6IDAuNnJlbSxcclxuICBzbWFsbDogMC43NXJlbSxcclxuICBkZWZhdWx0OiAwLjlyZW0sXHJcbiAgbGFyZ2U6IDEuMjVyZW0sXHJcbik7XHJcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XHJcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XHJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XHJcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcclxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xyXG5cclxuLy8gMTMuIENhbGxvdXRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XHJcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xyXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XHJcblxyXG4vLyAxNC4gQ2FyZFxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGNhcmQtc2hhZG93OiBub25lO1xyXG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kY2FyZC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxyXG4gIHNtYWxsOiAwLjY2cmVtLFxyXG4gIG1lZGl1bTogMTVweCxcclxuKTtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbDogKFxyXG4gIHNtYWxsOiAwLjMzZW0sXHJcbiAgbWVkaXVtOiAyNnB4LFxyXG4pO1xyXG4kY2xvc2VidXR0b24tc2l6ZTogKFxyXG4gIHNtYWxsOiAyLjdlbSxcclxuICBtZWRpdW06IDIuN2VtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZ3JlZW47XHJcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJHdoaXRlO1xyXG5cclxuLy8gMTYuIERyaWxsZG93blxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XHJcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xyXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyAxNy4gRHJvcGRvd25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd24tcGFkZGluZzogMDtcclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XHJcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XHJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZHJvcGRvd24tc2l6ZXM6IChcclxuICB0aW55OiAxMDBweCxcclxuICBzbWFsbDogMjAwcHgsXHJcbiAgbGFyZ2U6IDQwMHB4LFxyXG4pO1xyXG5cclxuLy8gMTguIERyb3Bkb3duIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xyXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDBweDsgICAgICAgIC8vY2hhbmdlZCB0byBnZXQgcmlkIG9mIGFycm93XHJcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMDtcclxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDEwMCU7XHJcbiRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDogbnVsbDtcclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAwO1xyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XHJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XHJcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiB0cmFuc3BhcmVudDtcclxuXHJcbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcclxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZTtcclxuXHJcbi8vIDIwLiBGb3Jtc1xyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XHJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApO1xyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XHJcbiRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2s7XHJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYztcclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtO1xyXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGlucHV0LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcclxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xyXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XHJcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKTtcclxuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xyXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XHJcbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWU7XHJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIxLiBMYWJlbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XHJcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjaztcclxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcclxuJGxhYmVsLXBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDIyLiBNZWRpYSBPYmplY3RcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xyXG5cclxuLy8gMjMuIE1lbnVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRtZW51LW1hcmdpbjogMDtcclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XHJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XHJcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xyXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZTtcclxuXHJcbi8vIDI0LiBNZXRlclxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRtZXRlci1oZWlnaHQ6IDFyZW07XHJcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XHJcblxyXG4vLyAyNS4gT2ZmLWNhbnZhc1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJG9mZmNhbnZhcy1zaXplczogKFxyXG4gIHNtYWxsOiAyNTBweCxcclxuKTtcclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxyXG4gIHNtYWxsOiAyNTBweCxcclxuKTtcclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkYmxhY2s7XHJcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjcpO1xyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XHJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDUwO1xyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xyXG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nOiBlYXNlO1xyXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjcpO1xyXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xyXG5cclxuLy8gMjYuIE9yYml0XHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XHJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDIzMXB4O1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiA1cHg7XHJcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwO1xyXG5cclxuLy8gMjcuIFBhZ2luYXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDEzIDIxKTtcclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxNSk7XHJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogdHJhbnNwYXJlbnQ7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJGdyZWVuO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkd2hpdGU7XHJcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkd2hpdGU7XHJcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogdHJ1ZTtcclxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcclxuXHJcbi8vIDI4LiBQcm9ncmVzcyBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcclxuICBkb3duLFxyXG4gIHVwLFxyXG4gIHJpZ2h0LFxyXG4gIGxlZnRcclxuKTtcclxuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XHJcbiRwcm90b3R5cGUtYXJyb3ctY29sb3I6ICRibGFjaztcclxuXHJcbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcblxyXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG5cclxuLy8gMzIuIFByb3RvdHlwZSBCb3JkZXJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLWJvcmRlcmVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xyXG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcclxuJHByb3RvdHlwZS1ib3JkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtZGlzcGxheTogKFxyXG4gIGlubGluZSxcclxuICBpbmxpbmUtYmxvY2ssXHJcbiAgYmxvY2ssXHJcbiAgdGFibGUsXHJcbiAgdGFibGUtY2VsbFxyXG4pO1xyXG5cclxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtd2lkZS1sZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoNCk7XHJcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxyXG4gIGRpc2MsXHJcbiAgY2lyY2xlLFxyXG4gIHNxdWFyZVxyXG4pO1xyXG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxyXG4gIGRlY2ltYWwsXHJcbiAgbG93ZXItYWxwaGEsXHJcbiAgbG93ZXItbGF0aW4sXHJcbiAgbG93ZXItcm9tYW4sXHJcbiAgdXBwZXItYWxwaGEsXHJcbiAgdXBwZXItbGF0aW4sXHJcbiAgdXBwZXItcm9tYW5cclxuKTtcclxuXHJcbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtb3ZlcmZsb3c6IChcclxuICB2aXNpYmxlLFxyXG4gIGhpZGRlbixcclxuICBzY3JvbGxcclxuKTtcclxuXHJcbi8vIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1wb3NpdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtcG9zaXRpb246IChcclxuICBzdGF0aWMsXHJcbiAgcmVsYXRpdmUsXHJcbiAgYWJzb2x1dGUsXHJcbiAgZml4ZWRcclxuKTtcclxuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XHJcblxyXG4vLyAzOC4gUHJvdG90eXBlIFJvdW5kZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXJvdW5kZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xyXG5cclxuLy8gMzkuIFByb3RvdHlwZSBTZXBhcmF0b3JcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcclxuJHByb3RvdHlwZS1zZXBhcmF0b3Itd2lkdGg6IDNyZW07XHJcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcclxuXHJcbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDAgMnB4IDEwcHggMCByZ2JhKDAsMCwwLC4xMik7XHJcblxyXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNpemluZzogKFxyXG4gIHdpZHRoLFxyXG4gIGhlaWdodFxyXG4pO1xyXG4kcHJvdG90eXBlLXNpemVzOiAoXHJcbiAgMjU6IDI1JSxcclxuICA1MDogNTAlLFxyXG4gIDc1OiA3NSUsXHJcbiAgMTAwOiAxMDAlXHJcbik7XHJcblxyXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xyXG4kcHJvdG90eXBlLXNwYWNlcnMtY291bnQ6IDM7XHJcblxyXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcclxuJHByb3RvdHlwZS10ZXh0LWRlY29yYXRpb246IChcclxuICBvdmVybGluZSxcclxuICB1bmRlcmxpbmUsXHJcbiAgbGluZS10aHJvdWdoLFxyXG4pO1xyXG5cclxuLy8gNDQuIFByb3RvdHlwZSBUZXh0LVRyYW5zZm9ybWF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb3RvdHlwZS10cmFuc2Zvcm1hdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxyXG4gIGxvd2VyY2FzZSxcclxuICB1cHBlcmNhc2UsXHJcbiAgY2FwaXRhbGl6ZVxyXG4pO1xyXG5cclxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XHJcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDQ3LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkZGFyay1ibGFjaztcclxuJHJldmVhbC13aWR0aDogMzAwcHg7XHJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kcmV2ZWFsLXBhZGRpbmc6IDMwcHggMCAwO1xyXG4kcmV2ZWFsLWJvcmRlcjogbm9uZTtcclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kcmV2ZWFsLXppbmRleDogMTAwNTtcclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGRhcmstYmxhY2ssIDAuNyk7XHJcblxyXG4vLyA0OC4gU2xpZGVyXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbTtcclxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcclxuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcclxuJHNsaWRlci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLXdpZHRoOiAxLjRyZW07XHJcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRzbGlkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDQ5LiBTd2l0Y2hcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yO1xyXG4kc3dpdGNoLWhlaWdodDogMnJlbTtcclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcclxuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XHJcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xyXG4kc3dpdGNoLXBhZGRsZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyA1MC4gVGFibGVcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xyXG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcclxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XHJcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcclxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XHJcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW07XHJcblxyXG4vLyA1MS4gVGFic1xyXG4vLyAtLS0tLS0tLVxyXG5cclxuJHRhYi1tYXJnaW46IDA7XHJcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XHJcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XHJcbiR0YWItZXhwYW5kLW1heDogNjtcclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXk7XHJcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XHJcblxyXG4vLyA1Mi4gVGh1bWJuYWlsXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiR0aHVtYm5haWwtYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xyXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpO1xyXG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcclxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyA1My4gVGl0bGUgQmFyXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtYmxhY2s7XHJcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlO1xyXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xyXG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcclxuJHRpdGxlYmFyLWljb24tY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcclxuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuXHJcbi8vIDU0LiBUb29sdGlwXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XHJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XHJcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcclxuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XHJcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gNTUuIFRvcCBCYXJcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xyXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ibGFjaztcclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XHJcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBsYXJnZTtcclxuXHJcbi8vIDU2LiBYeSBHcmlkXHJcbi8vIC0tLS0tLS0tLS0tXHJcblxyXG4keHktZ3JpZDogdHJ1ZTtcclxuJGdyaWQtY29udGFpbmVyOiAkZ2xvYmFsLXdpZHRoO1xyXG4kZ3JpZC1jb2x1bW5zOiAxMjtcclxuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcclxuICBzbWFsbDogMzBweCxcclxuICBtZWRpdW06IDMwcHhcclxuKTtcclxuJGdyaWQtcGFkZGluZy1ndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycztcclxuLy8kZ3JpZC1jb250YWluZXItcGFkZGluZzogMDtcclxuJGdyaWQtY29udGFpbmVyLXBhZGRpbmc6ICRncmlkLXBhZGRpbmctZ3V0dGVycztcclxuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcclxuJHh5LWJsb2NrLWdyaWQtbWF4OiA4O1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENyZWF0ZXMgYW4gaW5uZXIgYm94LXNoYWRvdyBmb3Igb25seSBvbmUgc2lkZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2lkZSAtIFNpZGUgdGhlIHNoYWRvdyBpcyBzdXBwb3NlZCB0byBhcHBlYXIuIENhbiBiZSBgdG9wYCwgYGxlZnRgLCBgcmlnaHRgIG9yIGBib3R0b21gLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSAtIFdpZHRoIGZvciB0aGUgdGFyZ2V0IHNpZGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3Igb2YgdGhlIHNoYWRvdy5cbkBtaXhpbiBpbm5lci1zaWRlLXNoYWRvdyhcbiAgJHNpZGU6IGJvdHRvbSxcbiAgJHNpemU6IDIwcHgsXG4gICRjb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpXG4pIHtcblxuICAkaGVscGVyOiByb3VuZCgkc2l6ZSAqIDAuNjUpO1xuXG4gIEBpZiAoJHNpZGUgPT0gdG9wKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAkaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGxlZnQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gcmlnaHQpIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAoLTEpKiRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBib3R0b20pIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICgtMSkqJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgQ1NTIHRyaWFuZ2xlLCB3aGljaCBjYW4gYmUgdXNlZCBmb3IgZHJvcGRvd24gYXJyb3dzLCBkcm9wZG93biBwaXBzLCBhbmQgbW9yZS4gVXNlIHRoaXMgbWl4aW4gaW5zaWRlIGEgYCY6OmJlZm9yZWAgb3IgYCY6OmFmdGVyYCBzZWxlY3RvciwgdG8gYXR0YWNoIHRoZSB0cmlhbmdsZSB0byBhbiBleGlzdGluZyBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0cmlhbmdsZS1zaXplIC0gV2lkdGggb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICR0cmlhbmdsZS1jb2xvciAtIENvbG9yIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0cmlhbmdsZS1kaXJlY3Rpb24gLSBEaXJlY3Rpb24gdGhlIHRyaWFuZ2xlIHBvaW50cy4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLlxuQG1peGluIGNzcy10cmlhbmdsZShcbiAgJHRyaWFuZ2xlLXNpemUsXG4gICR0cmlhbmdsZS1jb2xvcixcbiAgJHRyaWFuZ2xlLWRpcmVjdGlvblxuKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuXG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG5cbiAgY29udGVudDogJyc7XG5cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGRvd24pIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSB1cCkge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHJpZ2h0KSB7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBtZW51IGljb24gd2l0aCBhIHNldCB3aWR0aCwgaGVpZ2h0LCBudW1iZXIgb2YgYmFycywgYW5kIGNvbG9ycy4gVGhlIG1peGluIHVzZXMgdGhlIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiB0aGUgYmFycyB0byBkZXRlcm1pbmUgc3BhY2luZy4gPGRpdiBjbGFzcz1cImRvY3MtZXhhbXBsZS1idXJnZXJcIj48L2Rpdj5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yLWhvdmVyIFskZGFyay1ncmF5XSAtIENvbG9yIHRvIHVzZSB3aGVuIHRoZSBpY29uIGlzIGhvdmVyZWQgb3Zlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIFsyMHB4XSAtIFdpZHRoIG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkaGVpZ2h0IFsxNnB4XSAtIEhlaWdodCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdlaWdodCBbMnB4XSAtIEhlaWdodCBvZiBpbmRpdmlkdWFsIGJhcnMgaW4gdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXJzIFszXSAtIE51bWJlciBvZiBiYXJzIGluIHRoZSBpY29uLlxuQG1peGluIGhhbWJ1cmdlcihcbiAgJGNvbG9yOiAkYmxhY2ssXG4gICRjb2xvci1ob3ZlcjogJGRhcmstZ3JheSxcbiAgJHdpZHRoOiAyMHB4LFxuICAkaGVpZ2h0OiAxNnB4LFxuICAkd2VpZ2h0OiAycHgsXG4gICRiYXJzOiAzXG4pIHtcbiAgLy8gYm94LXNoYWRvdyBDU1Mgb3V0cHV0XG4gICRzaGFkb3c6ICgpO1xuICAkaG92ZXItc2hhZG93OiAoKTtcblxuICAvLyBTcGFjaW5nIGJldHdlZW4gYmFycyBpcyBjYWxjdWxhdGVkIGJhc2VkIG9uIHRoZSB0b3RhbCBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgZWFjaCBiYXJcbiAgJHNwYWNpbmc6ICgkaGVpZ2h0IC0gKCR3ZWlnaHQgKiAkYmFycykpIC8gKCRiYXJzIC0gMSk7XG5cbiAgQGlmIHVuaXQoJHNwYWNpbmcpID09ICdweCcge1xuICAgICRzcGFjaW5nOiBmbG9vcigkc3BhY2luZyk7XG4gIH1cblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICRzaGFkb3c6IGFwcGVuZCgkc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3IsIGNvbW1hKTtcbiAgfVxuXG4gIC8vIEljb24gY29udGFpbmVyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogJHdpZHRoO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAvLyBJY29uIGJhcnNcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogJHdlaWdodDtcblxuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICBAaWYgJGNvbG9yLWhvdmVyIHtcbiAgICAvLyBHZW5lcmF0ZSBDU1NcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRiYXJzIHtcbiAgICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgICAkaG92ZXItc2hhZG93OiBhcHBlbmQoJGhvdmVyLXNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLWhvdmVyLCBjb21tYSk7XG4gICAgfVxuXG4gICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgICAgYm94LXNoYWRvdzogJGhvdmVyLXNoYWRvdztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgYSBkb3dud2FyZC1mYWNpbmcgdHJpYW5nbGUgYXMgYSBiYWNrZ3JvdW5kIGltYWdlIHRvIGFuIGVsZW1lbnQuIFRoZSBpbWFnZSBpcyBmb3JtYXR0ZWQgYXMgYW4gU1ZHLCBtYWtpbmcgaXQgZWFzeSB0byBjaGFuZ2UgdGhlIGNvbG9yLiBCZWNhdXNlIEludGVybmV0IEV4cGxvcmVyIGRvZXNuJ3Qgc3VwcG9ydCBlbmNvZGVkIFNWR3MgYXMgYmFja2dyb3VuZCBpbWFnZXMsIGEgUE5HIGZhbGxiYWNrIGlzIGFsc28gaW5jbHVkZWQuXG4vLy8gVGhlcmUgYXJlIHR3byBQTkcgZmFsbGJhY2tzOiBhIGJsYWNrIHRyaWFuZ2xlIGFuZCBhIHdoaXRlIHRyaWFuZ2xlLiBUaGUgb25lIHVzZWQgZGVwZW5kcyBvbiB0aGUgbGlnaHRuZXNzIG9mIHRoZSBpbnB1dCBjb2xvci5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJsYWNrXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIHRyaWFuZ2xlLlxuQG1peGluIGJhY2tncm91bmQtdHJpYW5nbGUoJGNvbG9yOiAkYmxhY2spIHtcbiAgJHJnYjogJ3JnYiUyOCN7cm91bmQocmVkKCRjb2xvcikpfSwgI3tyb3VuZChncmVlbigkY29sb3IpKX0sICN7cm91bmQoYmx1ZSgkY29sb3IpKX0lMjknO1xuXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2ZXJzaW9uPScxLjEnIHdpZHRoPSczMicgaGVpZ2h0PScyNCcgdmlld0JveD0nMCAwIDMyIDI0Jz48cG9seWdvbiBwb2ludHM9JzAsMCAzMiwwIDE2LDI0JyBzdHlsZT0nZmlsbDogI3skcmdifSc+PC9wb2x5Z29uPjwvc3ZnPlwiKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjBcXDApIHtcbiAgICBAaWYgbGlnaHRuZXNzKCRjb2xvcikgPCA2MCUge1xuICAgICAgLy8gV2hpdGUgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBCbGFjayB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQU1CSlJFRlVlTnJFbGxzT2hDQU1SVnN6QzlJbHpVN0tDbVZIVEpzb01XWU1VdHB5djlCZ2J1WFFCNVpTZGdCWVlZNHljZ0Jpdms4S1lGc1FNZk1pVFRCUDRvM25VekNLek9hYkxKYkx5Mi9nMzFldkdrQWdpblI0L1plZ0tINXFYM2JKQ3NjQTN0MHgza2dPNXRRRnloaEZmNTB4UnFGTGJ5TVVOSlF6Z3lqR1Mvd2dDcHZLcWtSQnB1V3JFNFY5ZCsxRTRkUFVYcUlnMTA3U1FPRS8yRFJReE13VER5Z0lJblZERVQ5VDNsQ29qLzZqL1ZDbUdqWk9sMmxLcFo4QUF3RFFQN3pJaW1ER0ZRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBcHBsaWVzIHRoZSBtaWNybyBjbGVhcmZpeCBoYWNrIHBvcHVsYXJpemVkIGJ5IE5pY29sYXMgR2FsbGFnaGVyLiBJbmNsdWRlIHRoaXMgbWl4aW4gb24gYSBjb250YWluZXIgaWYgaXRzIGNoaWxkcmVuIGFyZSBhbGwgZmxvYXRlZCwgdG8gZ2l2ZSB0aGUgY29udGFpbmVyIGEgcHJvcGVyIGhlaWdodC5cbi8vLyBUaGUgY2xlYXJmaXggaXMgYXVnbWVudGVkIHdpdGggc3BlY2lmaWMgc3R5bGVzIHRvIHByZXZlbnQgYm9yZGVycyBpbiBmbGV4Ym94IGVudmlyb25tZW50c1xuLy8vIEBsaW5rIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrLyBNaWNybyBDbGVhcmZpeCBIYWNrXG4vLy8gQGxpbmsgaHR0cDovL2RhbmlzYWRlc2lnbmVyLmNvbS9ibG9nL2ZsZXhib3gtY2xlYXItZml4LXBzZXVkby1lbGVtZW50cy8gRmxleGJveCBmaXhcbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLy8gQWRkcyBDU1MgZm9yIGEgXCJxdWFudGl0eSBxdWVyeVwiIHNlbGVjdG9yIHRoYXQgYXV0b21hdGljYWxseSBzaXplcyBlbGVtZW50cyBiYXNlZCBvbiBob3cgbWFueSB0aGVyZSBhcmUgaW5zaWRlIGEgY29udGFpbmVyLlxuLy8vIEBsaW5rIGh0dHA6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL3F1YW50aXR5LXF1ZXJpZXMtZm9yLWNzcyBRdWFudGl0eSBRdWVyaWVzIGZvciBDU1Ncbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IC0gTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdG8gZGV0ZWN0LiBUaGUgaGlnaGVyIHRoaXMgbnVtYmVyIGlzLCB0aGUgbW9yZSBDU1MgdGhhdCdzIHJlcXVpcmVkIHRvIGNvdmVyIGVhY2ggbnVtYmVyIG9mIGl0ZW1zLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGVsZW0gW2xpXSAtIFRhZyB0byB1c2UgZm9yIHNpYmxpbmcgc2VsZWN0b3JzLlxuQG1peGluIGF1dG8td2lkdGgoJG1heCwgJGVsZW06IGxpKSB7XG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJG1heCB7XG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQsXG4gICAgJjpudGgtbGFzdC1jaGlsZCgjeyRpfSk6Zmlyc3QtY2hpbGQgfiAjeyRlbGVtfSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgxIC8gJGkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG4gIGhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsMCwwLDApO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXI6IDA7XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgY2xpcDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLy8vIFZlcnRpY2FsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gdmVydGljYWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4vLy8gSG9yaXpvbnRhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGhvcml6b250YWwtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLy8vIEFic29sdXRlbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gYWJzb2x1dGUtY2VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLy8vIEl0ZXJhdGVzIHRocm91Z2ggYnJlYWtwb2ludHMgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgYW5kIHByaW50cyB0aGUgQ1NTIGluc2lkZSB0aGUgbWl4aW4gYXQgZWFjaCBicmVha3BvaW50J3MgbWVkaWEgcXVlcnkuIFVzZSB0aGlzIHdpdGggdGhlIGdyaWQsIG9yIGFueSBvdGhlciBjb21wb25lbnQgdGhhdCBoYXMgcmVzcG9uc2l2ZSBjbGFzc2VzLlxuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkc21hbGwgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgc2tpcCB0aGUgYHNtYWxsYCBicmVha3BvaW50LiBVc2UgdGhpcyB3aXRoIGNvbXBvbmVudHMgdGhhdCBkb24ndCBwcmVmaXggY2xhc3NlcyB3aXRoIGBzbWFsbC1gLCBvbmx5IGBtZWRpdW0tYCBhbmQgdXAuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMgW3RydWVdIC0gSWYgYGZhbHNlYCwgdGhlIG1peGluIHdpbGwgaXRlcmF0ZSBvdmVyIGJyZWFrcG9pbnRzIHdpdGhvdXQgZG9pbmcgdGhlIG1lZGlhIHF1ZXJ5IGl0c2VsZi4gVXNlZnVsIGZvciBtb3JlIGNvbXBsZXggbWVkaWEgcXVlcnkgZ2VuZXJhdGlvbiBhcyBpbiB0aGUgbWFyZ2luIGdyaWQuXG5AbWl4aW4gLXpmLWVhY2gtYnJlYWtwb2ludCgkc21hbGw6IHRydWUsICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZSkge1xuICAkbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcblxuICBAaWYgbm90ICRzbWFsbCB7XG4gICAgJGxpc3Q6IHNsLXJlbW92ZSgkbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgQGVhY2ggJG5hbWUgaW4gJGxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJG5hbWUgIWdsb2JhbDtcblxuICAgIEBpZiAkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkbmFtZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgIH1cblxuICAgIC8vIGJyZWFrcG9pbnQgdmFsdWVcbiAgICAkLXpmLWJwLXZhbHVlOiAkbmFtZSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vIE1hcmdpbiBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1iYXNlLWdyaWQtY2xhc3NlcyB7XG5cbiAgLy8gR3JpZCBDb250YWluZXJcbiAgLmdyaWQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcjtcblxuICAgICYuZmx1aWQge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXIoMTAwJSk7XG4gICAgfVxuXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUsIDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgLmdyaWQteCB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZDtcbiAgfVxuXG4gIC5jZWxsIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoKTtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkZ3JpZC1jb2x1bW5zLCBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICAgICYuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgfVxuXG4gICAgJi5zaHJpbmsge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gIH1cbiAgLmdyaWQteCB7XG4gICAgPiAuYXV0byB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKHNocmluaywgZmFsc2UpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoYXV0byk7XG4gICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAlLXh5LWNlbGwtYmFzZS1zaHJpbmstaG9yaXpvbnRhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKHNocmluayk7XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gc21hbGwpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LXNocmluayB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhhdXRvLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICRndXR0ZXItYnJlYWtwb2ludCwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRicmVha3BvaW50OiAkLXpmLXNpemUsICR2ZXJ0aWNhbDogJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItb3V0cHV0OiBmYWxzZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nLCAkYnJlYWtwb2ludDogJC16Zi1zaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IG1hcmdpbiwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbywgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09IHNtYWxsKSB7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYyhzaHJpbmssIGZhbHNlLCAkdmVydGljYWw6IHRydWUpO1xuICAgIH1cblxuXG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIC8vIFRoaXMgaXMgYSBiaXQgb2YgYSBoYWNrL3dvcmthcm91bmQsIHNlZSB0aGVzZSBpc3N1ZXMgYW5kIFBScyBmb3IgdGhlIGJhY2tzdG9yeTpcbiAgICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS96dXJiL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAyMjIgYW5kXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20venVyYi9mb3VuZGF0aW9uLXNpdGVzL3B1bGwvMTAxNjRcbiAgICAgICRzdHI6IFwiPiAuI3skLXpmLXNpemV9LXNocmluaywgPiAuI3skLXpmLXNpemV9LWZ1bGxcIjtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICRzdHI6ICRzdHIgKyBcIiwgPiAuI3skLXpmLXNpemV9LSN7JGl9XCJcbiAgICAgIH1cbiAgICAgICN7JHN0cn0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tYXV0byB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKGF1dG8pO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKGF1dG8sIGZhbHNlLCAkYnJlYWtwb2ludDogJC16Zi1zaXplLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSBzbWFsbCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zdGF0aWMoc2hyaW5rLCBmYWxzZSwgJGJyZWFrcG9pbnQ6ICQtemYtc2l6ZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLXZlcnRpY2FsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgZmFsc2UsICR2ZXJ0aWNhbDogdHJ1ZSwgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgIC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICAvLyBOZWdhdGl2ZSBtYXJnaW4gZm9yIG5lc3RlZCBncmlkc1xuICAgICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuXG4gICAgICAvLyBCYXNlIGNlbGwgc3R5bGVzXG4gICAgICA+IC5jZWxsIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRndXR0ZXItcG9zaXRpb246IHRvcCBib3R0b20pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gIH1cblxufVxuXG5AbWl4aW4geHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkOiB0cnVlLCAkbWFyZ2luLWdyaWQ6IHRydWUpIHtcbiAgLy8gRnJhbWVkIGdyaWQgc3R5bGVzXG4gIC5ncmlkLWZyYW1lIHtcbiAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lO1xuICB9XG5cbiAgLmNlbGwgLmdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICB9XG5cbiAgLmNlbGwtYmxvY2sge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgfVxuXG4gIC5jZWxsLWJsb2NrLXkge1xuICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gIH1cblxuXG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jay1jb250YWluZXIoKTtcbiAgfVxuXG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuXG4gICAgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gICAgfVxuXG4gICAgLmNlbGwgLiN7JC16Zi1zaXplfS1ncmlkLWZyYW1lIHtcbiAgICAgIHdpZHRoOiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICAgIH1cblxuICAgIC4jeyQtemYtc2l6ZX0tY2VsbC1ibG9jay15IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2sodHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICR2ZXJ0aWNhbC1ncmlkIHtcbiAgICAuZ3JpZC15IHtcbiAgICAgICYuZ3JpZC1mcmFtZSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUpO1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgICYuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cbiAgICAuY2VsbCB7XG4gICAgICAuZ3JpZC15LmdyaWQtZnJhbWUge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgICB9XG4gICAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAgIC5ncmlkLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaWYgJG1hcmdpbi1ncmlkIHtcbiAgICBAaW5jbHVkZSB4eS1tYXJnaW4tZ3JpZC1jbGFzc2VzKHRvcCBib3R0b20sIHRydWUsICcuZ3JpZC1tYXJnaW4teScpO1xuICAgIC5ncmlkLWZyYW1lLmdyaWQtbWFyZ2luLXkge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlLCBmYWxzZSwgJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRpbmNsdWRlLWJhc2U6IGZhbHNlKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludChmYWxzZSkge1xuICAgICAgLmdyaWQtbWFyZ2luLXkuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpbmFsIGNsYXNzZXNcbkBtaXhpbiBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcyhcbiAgJGJhc2UtZ3JpZDogdHJ1ZSxcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlLFxuICAkYmxvY2stZ3JpZDogdHJ1ZSxcbiAgJGNvbGxhcHNlOiB0cnVlLFxuICAkb2Zmc2V0OiB0cnVlLFxuICAkdmVydGljYWwtZ3JpZDogdHJ1ZSxcbiAgJGZyYW1lLWdyaWQ6IHRydWVcbikge1xuXG4gIC8vIEJhc2UgZ3JpZCBzdHlsZXNcbiAgQGlmKCRiYXNlLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1iYXNlLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gTWFyZ2luIGdyaWRcbiAgQGlmKCRtYXJnaW4tZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFBhZGRpbmcgZ3JpZFxuICBAaWYoJHBhZGRpbmctZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LXBhZGRpbmctZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBCbG9jayBncmlkXG4gIEBpZigkYmxvY2stZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJsb2NrLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQsICRwYWRkaW5nLWdyaWQpO1xuICB9XG5cbiAgLy8gQ29sbGFwc2UgZ3V0dGVyc1xuICBAaWYoJGNvbGxhcHNlKSB7XG4gICAgQGluY2x1ZGUgeHktY29sbGFwc2UtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBPZmZzZXQgZ3V0dGVyc1xuICBAaWYoJG9mZnNldCkge1xuICAgIEBpbmNsdWRlIHh5LW9mZnNldC1jZWxsLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGdyaWRcbiAgQGlmKCR2ZXJ0aWNhbC1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktdmVydGljYWwtZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICBAaWYgKCRmcmFtZS1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktZnJhbWUtZ3JpZC1jbGFzc2VzKCR2ZXJ0aWNhbC1ncmlkLCAkbWFyZ2luLWdyaWQpXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhIG1heCB3aWR0aCBjb250YWluZXIsIGRlc2lnbmVkIHRvIGhvdXNlIHlvdXIgZ3JpZCBjb250ZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbJGdyaWQtY29udGFpbmVyXSAtIGEgd2lkdGggdG8gbGltaXQgdGhlIGNvbnRhaW5lciB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHBhZGRpbmcgWyRncmlkLWNvbnRhaW5lci1wYWRkaW5nXSAtIHBhZGRpbmdzIG9mIHRoZSBjb250YWluZXIuXG5AbWl4aW4geHktZ3JpZC1jb250YWluZXIoXG4gICR3aWR0aDogJGdyaWQtY29udGFpbmVyLFxuICAkcGFkZGluZzogJGdyaWQtY29udGFpbmVyLXBhZGRpbmdcbikge1xuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkcGFkZGluZywgJGd1dHRlci10eXBlOiBwYWRkaW5nKTtcblxuICBtYXgtd2lkdGg6ICR3aWR0aDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENhbGN1bGF0ZSB0aGUgcGVyY2VudGFnZSBzaXplIG9mIGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRzaXplIFskZ3JpZC1jb2x1bW5zXSAtIFNpemUgdG8gbWFrZSB0aGUgY2VsbC4gWW91IGNhbiBwYXNzIGEgdmFsdWUgaW4gbXVsdGlwbGUgZm9ybWF0cywgc3VjaCBhcyBgNmAsIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8zYC5cbkBmdW5jdGlvbiB4eS1jZWxsLXNpemUoXG4gICRzaXplOiAkZ3JpZC1jb2x1bW5zXG4pIHtcbiAgLy8gUGFyc2luZyBwZXJjZW50cywgZGVjaW1hbHMsIG4gb2YgbiBhbmQgbnVtYmVyIGNvdW50c1xuICBAaWYgdHlwZS1vZigkc2l6ZSkgPT0gJ251bWJlcicge1xuICAgIEBpZiB1bml0KCRzaXplKSA9PSAnJScge1xuICAgICAgJHNpemU6ICRzaXplO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkc2l6ZSA8IDEge1xuICAgICAgJHNpemU6IHBlcmNlbnRhZ2UoJHNpemUpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZSgkc2l6ZSAvICRncmlkLWNvbHVtbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFBhcnNpbmcgXCJuIG9mIG5cIiBvciBcIm4vblwiIGV4cHJlc3Npb25zXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHNpemUpID09ICdsaXN0JyB7XG4gICAgQGlmIGxlbmd0aCgkc2l6ZSkgIT0gMyB7XG4gICAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSB0aGUgZm9ybWF0IFwibiBvZiBuXCIgb3IgXCJuL25cIi4nO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkc2l6ZTogcGVyY2VudGFnZShudGgoJHNpemUsIDEpIC8gbnRoKCRzaXplLCAzKSk7XG4gICAgfVxuICB9XG4gIC8vIEFueXRoaW5nIGVsc2UgaXMgaW5jb3JyZWN0XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgeHktY2VsbC1zaXplKCkuIFVzZSBhIG51bWJlciwgZGVjaW1hbCwgcGVyY2VudGFnZSwgb3IgXCJuIG9mIG5cIiAvIFwibi9uXCIuJztcbiAgfVxuXG4gIEByZXR1cm4gJHNpemU7XG59XG5cbi8vLyBTZXRzIGJhc2UgZmxleCBwcm9wZXJ0aWVzIGZvciBjZWxscy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBBY2NlcHRzIGBmdWxsYCwgYGF1dG9gLCBgc2hyaW5rYCBvciBgZ3Jvd2AuXG5AbWl4aW4geHktY2VsbC1iYXNlKCRzaXplOiBmdWxsKSB7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAvLyBUaGlzIGlzIHRoZSBiYXNlIHN0eWxlLCBhbGwgb3RoZXJzIGluaGVyaXQgZnJvbSBpdFxuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDBweDtcbiAgICBtaW4td2lkdGg6IDBweDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2F1dG8nKSB7XG4gICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIHdpZHRoLCBoZWlnaHQpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8gU2V0cyBvdXIgY2VsbCB3aWR0aHMgb3IgaGVpZ2h0cyBkZXBlbmRpbmcgb24gZ3V0dGVyIHR5cGUuXG5AbWl4aW4gLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJG1hcmdpbi1ndXR0ZXIsICR2ZXJ0aWNhbCkge1xuICAkZGlyZWN0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgaGVpZ2h0LCB3aWR0aCk7XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICAkdmFsOiBpZigkbWFyZ2luLWd1dHRlciA9PSAwLCAxMDAlLCBjYWxjKDEwMCUgLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICAjeyRkaXJlY3Rpb259OiAkdmFsO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnYXV0bycpIHtcbiAgICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsIDEwMCUsIGNhbGMoMTAwJSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICB9XG4gIEBlbHNlIGlmICgkc2l6ZSA9PSAnc2hyaW5rJykge1xuICAgICN7JGRpcmVjdGlvbn06IGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgICR2YWw6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICN7eHktY2VsbC1zaXplKCRzaXplKX0sIGNhbGMoI3t4eS1jZWxsLXNpemUoJHNpemUpfSAtICN7cmVtLWNhbGMoJG1hcmdpbi1ndXR0ZXIpfSkpO1xuICAgICN7JGRpcmVjdGlvbn06ICR2YWw7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBjZWxsIGZvciB5b3VyIGdyaWQuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbcmlnaHQgbGVmdF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1jZWxsKFxuICAkc2l6ZTogZnVsbCxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJwLWlzLWZhbGxiYWNrOiBmYWxzZTtcblxuICBAaWYoJGJyZWFrcG9pbnQgPT0gbnVsbCkge1xuICAgIC8vIElmIGAkYnAtc2l6ZWAgaXMgYXZhaWxhYmxlIHRoZW4gdXNlIHRoaXMsIG90aGVyd2lzZSByZXZlcnQgdG8gdGhlIHNtYWxsZXN0IGJwLlxuICAgIEBpZih2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi1zaXplO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICAgICAkYnAtaXMtZmFsbGJhY2s6IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLy8gR2V0IHRoZSBndXR0ZXIgZm9yIHRoZSBnaXZlbiBicmVha3BvaW50L3ZhbHVlLlxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIGZhbGxiYWNrLCB1c2UgYSBmYWxsYmFjayBndXR0ZXIgYXMgd2VsbFxuICBAaWYgKCRicC1pcy1mYWxsYmFjayA9PSB0cnVlIGFuZCAkZ3V0dGVyID09IG51bGwpIHtcbiAgICAkZ3V0dGVyOiAwO1xuICB9XG5cbiAgQGlmKCRndXR0ZXIgIT0gbnVsbCkge1xuICAgIC8vIEJhc2UgZmxleCBwcm9wZXJ0aWVzXG4gICAgQGluY2x1ZGUgeHktY2VsbC1iYXNlKCRzaXplKTtcblxuICAgIEBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGlmICRndXR0ZXItb3V0cHV0IHtcbiAgICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICd4eS1jZWxsOiBubyBndXR0ZXJzIHdlcmUgZm91bmQgaW4gYCRndXR0ZXJzYCBmb3IgXCIkYnJlYWtwb2ludDogI3skYnJlYWtwb2ludH1cIiwgY2VsbCB3YXMgbm90IGdlbmVyYXRlZGAnXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAgKGRlZmF1bHQpIGZvciAxMDAlIHdpZHRoLCBgYXV0b2AgdG8gdXNlIHVwIGF2YWlsYWJsZSBzcGFjZSBhbmQgYHNocmlua2AgdG8gdXNlIHVwIG9ubHkgcmVxdWlyZWQgc3BhY2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZ3V0dGVyLW91dHB1dCBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVyc1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcblxuICAkZ3V0dGVyOiAtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAkZ3V0dGVyLXBvc2l0aW9uOiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgdG9wIGJvdHRvbSwgbGVmdCByaWdodCk7XG5cbiAgQGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJykge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsICRndXR0ZXIsICR2ZXJ0aWNhbCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIC14eS1jZWxsLXByb3BlcnRpZXMoJHNpemUsIDAsICR2ZXJ0aWNhbCk7XG4gIH1cblxuICAvLyBJZiB3ZSB3YW50IHRvIG91dHB1dCB0aGUgZ3V0dGVyc1xuICBAaWYoJGd1dHRlci1vdXRwdXQpIHtcbiAgICAvLyBUT0RPOiBGaWd1cmUgb3V0IGlmIHdlIG5lZWQgdG8gcGFzcyBicmVha3BvaW50IGluIGhlcmUgdG9vLlxuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFt0cnVlXSAtIFdoZXRoZXIgb3Igbm90IHRvIG91dHB1dCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCBvciBgcGFkZGluZ2AuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIGJyZWFrcG9pbnQgdG8gdXNlIGZvciB0aGUgY2VsbCBnZW5lcmF0aW9uLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IHRydWUsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IHJpZ2h0IGxlZnQsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBDb2xsYXBzZXMgdGhlIGdyaWQgYSBjZWxscyB3aXRoaW4gaXQuXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsuY2VsbF0gLSBUaGUgY2hpbGQgZWxlbWVudCB0byByZW1vdmUgdGhlIGd1dHRlciBmcm9tLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHJlbW92ZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW3JpZ2h0IGxlZnRdIC0gVGhlIHBvc2l0aW9ucyB0byByZW1vdmUgZ3V0dGVycyBmcm9tLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRtaW4tYnJlYWtwb2ludCBbJC16Zi16ZXJvLWJyZWFrcG9pbnRdIC0gTWluaW11bSBicmVha3BvaW50IGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBmb3Igd2hpY2ggdG8gY29sbGFwc2UgdGhlIGd1dHRlci5cbkBtaXhpbiB4eS1ncmlkLWNvbGxhcHNlKFxuICAkc2VsZWN0b3I6ICcuY2VsbCcsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbWluLWJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50XG4pIHtcbiAgLy8gRmlyc3QsIGxldHMgbmVnYXRlIGFueSBtYXJnaW5zIG9uIHRoZSB0b3AgbGV2ZWxcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkZXhjbHVkZWQtYnBzOiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRtaW4tYnJlYWtwb2ludCk7XG5cbiAgICAvLyBPdXRwdXQgbmV3IHdpZHRocyB0byBub3QgaW5jbHVkZSBndXR0ZXJzXG4gICAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmKHNsLWNvbnRhaW4oJGV4Y2x1ZGVkLWJwcywgJGJwKSkge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgICAgICA+IC4jeyRicH0tI3skaX0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXN0YXRpYygkaSwgJGd1dHRlci1vdXRwdXQ6IGZhbHNlLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc3RhdGljKCRpLCAkZ3V0dGVyLW91dHB1dDogZmFsc2UsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG1pbi1icmVha3BvaW50KSB7XG4gICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgIG1hcmdpbi0jeyR2YWx1ZX06IDA7XG4gICAgICB9XG5cbiAgICAgID4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAgIHBhZGRpbmctI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBPZmZzZXRzIGEgY29sdW1uIHRvIHRoZSByaWdodC9ib3R0b20gYnkgYCRuYCBjb2x1bW5zLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJG4gLSBTaXplIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYHpmLWNlbGwoKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIE1hcCBvZiBndXR0ZXJzIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UgZm9yIHJlc3BvbnNpdmUgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSBUaGUgdHlwZSBvZiBndXR0ZXIgdG8gdXNlLiBDYW4gYmUgYG1hcmdpbmAgb3IgYHBhZGRpbmdgXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJGJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIFNpbmdsZSB2YWx1ZSwgYnJlYWtwb2ludCBuYW1lLCBvciBsaXN0IG9mIGJyZWFrcG9pbnQgbmFtZXMgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBTZWUgYC16Zi1icmVha3BvaW50LXZhbHVlKClgLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogJC16Zi16ZXJvLWJyZWFrcG9pbnQsXG4gJHZlcnRpY2FsOiBmYWxzZVxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJGJyZWFrcG9pbnQsICRndXR0ZXJzKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSkgLyAyO1xuICAgICRndXR0ZXItbWFyZ2luOiBpZigkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicsICRndXR0ZXIsIDApO1xuICAgICRzaXplOiBpZigkZ3V0dGVyLW1hcmdpbiA9PSAwLCAje3h5LWNlbGwtc2l6ZSgkbil9LCBjYWxjKCN7eHktY2VsbC1zaXplKCRuKX0gKyAjeyRndXR0ZXItbWFyZ2lufSkpO1xuXG4gICAgbWFyZ2luLSN7JGRpcmVjdGlvbn06ICN7JHNpemV9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdHlwb2dyYXBoeS1iYXNlXG4vLy8vXG5cbi8vIEJhc2UgVHlwb2dyYXBoeVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbi8vIFRoZXNlIGFyZSBzdHlsZXMgYXBwbGllZCB0byBiYXNpYyBIVE1MIHRhZ3MsIGluY2x1ZGluZzpcbi8vICAgLSBQYXJhZ3JhcGhzIDxwPlxuLy8gICAtIEJvbGQvaXRhbGljcyA8Yj4gPHN0cm9uZz4gPGk+IDxlbT5cbi8vICAgLSBTbWFsbCB0ZXh0IDxzbWFsbD5cbi8vICAgLSBIZWFkaW5ncyA8aDE+LTxoNj5cbi8vICAgLSBBbmNob3JzIDxhPlxuLy8gICAtIERpdmlkZXJzIDxocj5cbi8vICAgLSBMaXN0cyA8dWw+IDxvbD4gPGRsPlxuLy8gICAtIEJsb2NrcXVvdGVzIDxibG9ja3F1b3RlPlxuLy8gICAtIENvZGUgYmxvY2tzIDxjb2RlPlxuLy8gICAtIEFiYnJldmlhdGlvbnMgPGFiYnI+XG4vLyAgIC0gQ2l0YXRpb25zIDxjaXRlPlxuLy8gICAtIEtleXN0cm9rZXMgPGtiZD5cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBoZWFkZXIgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdHlsZSAoZS5nLiBpdGFsaWNpemVkKSBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIHVzZWQgZm9yIGVsZW1lbnRzIHRoYXQgdXNlIG1vbm9zcGFjZWQgdHlwZSwgc3VjaCBhcyBjb2RlIHNhbXBsZXNcbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItY29sb3I6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyBmb3IgaGVhZGluZ3MgYXQgdmFyaW91cyBzY3JlZW4gc2l6ZXMuIEVhY2gga2V5IGlzIGEgYnJlYWtwb2ludCwgYW5kIGVhY2ggdmFsdWUgaXMgYSBtYXAgb2YgaGVhZGluZyBzdHlsZXMuXG4vLy8gQHR5cGUgTWFwXG4kaGVhZGVyLXN0eWxlczogKFxuICBzbWFsbDogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMTkpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuICBtZWRpdW06IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDQ4KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDI1KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbikgIWRlZmF1bHQ7XG5cbi8vICRoZWFkZXItc3R5bGVzIG1hcCBpcyBidWlsdCBmcm9tICRoZWFkZXItc2l6ZXMgaW4gb3JkZXIgdG8gZW5zdXJlIGRvd253YXJkIGNvbXBhdGliaWxpdHlcbi8vIHdoZW4gJGhlYWRlci1zaXplcyBpcyBkZXByZWNpYXRlZCwgJGhlYWRlci1zdHlsZXMgbmVlZHMgdG8gZ2V0ICFkZWZhdWx0IHZhbHVlcyBsaWtlIHNldHRpbmdzLnNjc3NcbkBmdW5jdGlvbiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKSB7XG4gIEB3YXJuICdOb3RlLCB0aGF0ICRoZWFkZXItc2l6ZXMgaGFzIGJlZW4gcmVwbGFjZWQgd2l0aCAkaGVhZGVyLXN0eWxlcy4gJGhlYWRlci1zaXplcyBzdGlsbCB3b3JrcywgYnV0IGl0IGlzIGdvaW5nIHRvIGJlIGRlcHJlY2lhdGVkLic7XG4gICRoZWFkZXItc3R5bGVzOiAoKTtcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc2l6ZXMge1xuICAgICRoZWFkZXItbWFwOiAoKTtcbiAgICBAZWFjaCAkaGVhZGVyLCAkZm9udC1zaXplIGluICRoZWFkZXJzIHtcbiAgICAgICRoZWFkZXItbWFwOiBtYXAtbWVyZ2UoJGhlYWRlci1tYXAsICgkaGVhZGVyOiAoJ2ZvbnQtc2l6ZSc6ICRmb250LXNpemUpKSk7XG4gICAgfVxuICAgICRoZWFkZXItc3R5bGVzOiBtYXAtbWVyZ2UoJGhlYWRlci1zdHlsZXMsICgkc2l6ZTogJGhlYWRlci1tYXApKTtcbiAgfVxuICBAcmV0dXJuICRoZWFkZXItc3R5bGVzO1xufVxuXG4vLyBJZiBpdCBleGlzdHMgJGhlYWRlcnMtc2l6ZXMgaXMgdXNlZCB0byBidWlsZCAkaGVhZGVyLXN0eWxlcy4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhoZWFkZXItc2l6ZXMpIHtcbiAgJGhlYWRlci1zdHlsZXM6IGJ1aWxkX2Zyb21faGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpO1xufVxuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYDxzbWFsbD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYDxzbWFsbD5gIGVsZW1lbnRzIHdoZW4gcGxhY2VkIGluc2lkZSBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIHRleHQgaW5zaWRlIGA8cD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjYgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2QgZm9yIHBhcmFncmFwaCB0ZXh0LlxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBjb2RlIHNhbXBsZXMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBMaXN0XG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIGNvZGUgc2FtcGxlcy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUHNldWRvIGNvbnRlbnQgZm9yIGA8Y2l0ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gYm9yZGVyIHN0eWxlIGZvciBgPGFiYnI+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBMaXN0XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10eXBvZ3JhcGh5LWJhc2Uge1xuICAvLyBUeXBvZ3JhcGh5IHJlc2V0c1xuICBkaXYsXG4gIGRsLFxuICBkdCxcbiAgZGQsXG4gIHVsLFxuICBvbCxcbiAgbGksXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYsXG4gIHByZSxcbiAgZm9ybSxcbiAgcCxcbiAgYmxvY2txdW90ZSxcbiAgdGgsXG4gIHRkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBhcmFncmFwaHNcbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG4gIH1cblxuICAvLyBFbXBoYXNpemVkIHRleHRcbiAgZW0sXG4gIGkge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFN0cm9uZyB0ZXh0XG4gIHN0cm9uZyxcbiAgYiB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTbWFsbCB0ZXh0XG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBIZWFkaW5nc1xuICBoMSwgLmgxLFxuICBoMiwgLmgyLFxuICBoMywgLmgzLFxuICBoNCwgLmg0LFxuICBoNSwgLmg1LFxuICBoNiwgLmg2IHtcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgY29sb3I6ICRoZWFkZXItY29sb3I7XG4gICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICBzbWFsbCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGNvbG9yOiAkaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSGVhZGluZyBzdHlsZXNcbiAgQGVhY2ggJHNpemUsICRoZWFkZXJzIGluICRoZWFkZXItc3R5bGVzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICBAZWFjaCAkaGVhZGVyLCAkaGVhZGVyLWRlZnMgaW4gJGhlYWRlcnMge1xuICAgICAgICAkZm9udC1zaXplLXRlbXA6IDFyZW07XG4gICAgICAgICN7JGhlYWRlcn0sIC4jeyRoZWFkZXJ9IHtcblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZnMpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZzKSk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGgpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYygkaGVhZGVyLWxpbmVoZWlnaHQsICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbXQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtdCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pKTtcbiAgICAgICAgICB9IEBlbHNlIGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbWIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYikpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJGhlYWRlci1tYXJnaW4tYm90dG9tKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBMaW5rc1xuICBhIHtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICBjb2xvcjogJGFuY2hvci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uO1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yLWhvdmVyO1xuICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvcml6b250YWwgcnVsZVxuICBociB7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICBtYXgtd2lkdGg6ICRoci13aWR0aDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbWFyZ2luOiAkaHItbWFyZ2luO1xuXG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJGhyLWJvcmRlcjtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC8vIExpc3RzXG4gIHVsLFxuICBvbCxcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRsaXN0LW1hcmdpbi1ib3R0b207XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBMaXN0IGl0ZW1zXG4gIGxpIHtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBVbm9yZGVyZWQgbGlzdHNcbiAgdWwge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogJGxpc3Qtc3R5bGUtdHlwZTtcbiAgfVxuXG4gIC8vIE9yZGVyZWQgbGlzdHNcbiAgb2wge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LXNpZGUtbWFyZ2luO1xuICB9XG5cbiAgLy8gTmVzdGVkIHVub3JkZXJlZC9vcmRlcmVkIGxpc3RzXG4gIHVsLCBvbCB7XG4gICAgJiAmIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gRGVmaW5pdGlvbiBsaXN0c1xuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LW1hcmdpbi1ib3R0b207XG5cbiAgICBkdCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tO1xuICAgICAgZm9udC13ZWlnaHQ6ICRkZWZubGlzdC10ZXJtLXdlaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBCbG9ja3F1b3Rlc1xuICBibG9ja3F1b3RlIHtcbiAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJGJsb2NrcXVvdGUtcGFkZGluZztcbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAmLCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQ7XG4gICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2l0YXRpb25zXG4gIGNpdGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkY2l0ZS1jb2xvcjtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRjaXRlLXBzZXVkby1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFiYnJldmlhdGlvbnNcbiAgYWJiciwgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206ICRhYmJyLXVuZGVybGluZTtcbiAgICBjdXJzb3I6IGhlbHA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgLy8gRmlndXJlc1xuICBmaWd1cmUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvZGVcbiAgY29kZSB7XG4gICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcblxuICAgIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGNvZGUtZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkY29kZS1jb2xvcjtcbiAgfVxuXG4gIC8vIEtleXN0cm9rZXNcbiAga2JkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGtleXN0cm9rZS1wYWRkaW5nO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGtleXN0cm9rZS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRrZXlzdHJva2UtZm9udDtcbiAgICBjb2xvcjogJGtleXN0cm9rZS1jb2xvcjtcblxuICAgIEBpZiBoYXMtdmFsdWUoJGtleXN0cm9rZS1yYWRpdXMpIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRrZXlzdHJva2UtcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIElmIGB0cnVlYCwgYWxsIGVsZW1lbnRzIHdpbGwgaGF2ZSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcyB3aGVuIHByaW50ZWQsIHRvIHNhdmUgb24gaW5rLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXlzIG5leHQgdG8gYWxsIGxpbmtzIHRoZWlyIFwiaHJlZlwiIHdoZW4gcHJpbnRlZC5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LWhyZWZzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZS1hbGxcblxuQG1peGluIGZvdW5kYXRpb24tcHJpbnQtc3R5bGVzIHtcbiAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICAqIHtcbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50OyAvLyBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zXG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkaXRpb25hbCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIC5leHBhbmRlZFxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBSZW1vdmVzIGJhY2tncm91bmQgZmlsbCBvbiBob3ZlciBhbmQgZm9jdXMgZm9yIGhvbGxvdyBidXR0b25zLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdIHtcbiAgICAmLFxuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgY29sb3I6ICRjb2xvcjtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgICYuZGlzYWJsZWQsXG4gICAgJltkaXNhYmxlZF0ge1xuICAgICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQsIHJlc2V0aW5nIHRoZSBjdXJzb3IsIGFuZCBkaXNhYmxpbmcgcG9pbnRlciBldmVudHMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cbiAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG5cbiAgQGlmICRzdHlsZSA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkc3R5bGUgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgIH1cblxuICAgICAgICAmLiN7JG5hbWV9LmRyb3Bkb3duOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGlzYWJsZWQgc3R5bGVcbiAgICAmLmRpc2FibGVkLFxuICAgICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcblxuICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZGlzYWJsZWQoJGNvbG9yLCBhdXRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEhvbGxvdyBzdHlsZVxuICAgIEBpZiAkYnV0dG9uLWZpbGwgIT0gaG9sbG93IHtcbiAgICAgICYuaG9sbG93IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRjb2xvcik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xlYXIgc3R5bGVcbiAgICBAaWYgJGJ1dHRvbi1maWxsICE9IGNsZWFyIHtcbiAgICAgICYuY2xlYXIge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICAgICAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlO1xuXG4gICAgICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuXG4gICAgICAgICAgICAmLCAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICYsXG4gICAgICAgICAgICAgICYuZGlzYWJsZWQsXG4gICAgICAgICAgICAgICZbZGlzYWJsZWRdIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd24gYXJyb3dcbiAgICAmLmRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kcm9wZG93bjtcblxuICAgICAgQGlmICRidXR0b24tZmlsbCA9PSBob2xsb3cge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaG9sbG93LCAmLmNsZWFyIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDIgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVsZW1lbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3IgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBmb3IgZm9ybSBsYWJlbHMuIFRoZSBoaWdoZXIgdGhlIG51bWJlciwgdGhlIG1vcmUgc3BhY2UgYmV0d2VlbiB0aGUgbGFiZWwgYW5kIGl0cyBpbnB1dCBmaWVsZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjggIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcblxuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvcjtcbn1cblxuQG1peGluIGZvcm0tbGFiZWwtbWlkZGxlIHtcbiAgJGlucHV0LWJvcmRlci13aWR0aDogZ2V0LWJvcmRlci12YWx1ZSgkaW5wdXQtYm9yZGVyLCB3aWR0aCk7XG5cbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogKCRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tc2VsZWN0IHtcbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAnKyc7XG4gICAgfVxuXG4gICAgLmlzLWFjdGl2ZSA+ICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnXFwyMDEzJztcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgYWNjb3JkaW9uIG1lbnVzIGhhdmUgdGhlIGRlZmF1bHQgYXJyb3cgc3R5bGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBib3JkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTGlzdFxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIGhlaWdodC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplIC8gMik7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxcmVtO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMXJlbTtcbiAgfVxufVxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnUge1xuXG4gIC5hY2NvcmRpb24tbWVudSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICAgIGJvcmRlci10b3A6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1pdGVtLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICAubmVzdGVkLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbiwgcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1hcnJvd3Mge1xuICAgICAgQGluY2x1ZGUgemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD0ndHJ1ZSddID4gYTo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudSBsaSB7XG4gICAgQGlmICRhY2NvcmRpb25tZW51LWJvcmRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICB9XG5cbiAgLy8gU3VibWVudSB0b2dnbGVcbiAgLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1yaWdodH06IDA7XG5cbiAgICB3aWR0aDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gICAgaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ7XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAkYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjtcblxuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kIHtcbiAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQWRkIHRoZSBhcnJvdyB0byB0aGUgdG9nZ2xlXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKDZweCwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIG1lbnVcbi8vLy9cblxuLy8vIE1hcmdpbiBvZiBhIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0LWhhbmQgbWFyZ2luIG9mIGEgbmVzdGVkIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGl0ZW1zIGluIGEgcGlsbCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgc2ltcGxlIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgc3RhdGUuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGBhY3RpdmVgIHdpdGggYGlzLWFjdGl2ZWAuIFxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLiBcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCBgbWVudS1jZW50ZXJlZGAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgdXNpbmcgYGljb24tKmAgY2xhc3NlcyB3aXRob3V0IGAuaWNvbnNgIGNsYXNzZXNcbi8vLyBCdXQgcGxlYXNlIG5vdGUgdGhhdCB0aGlzIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgTWVudS5cbkBtaXhpbiBtZW51LWJhc2Uge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gIGxpIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cblxuICBhLFxuICAuYnV0dG9uIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJG1lbnUtaXRlbXMtcGFkZGluZztcbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvZiBpbm5lciBlbGVtZW50c1xuICBpbnB1dCxcbiAgc2VsZWN0LFxuICBhLFxuICBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICBpbnB1dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vLyBFeHBhbmRzIHRoZSBpdGVtcyBvZiBhIE1lbnUsIHNvIGVhY2ggaXRlbSBpcyB0aGUgc2FtZSB3aWR0aC5cbkBtaXhpbiBtZW51LWV4cGFuZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGxpIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gbGkge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBbGlnbiBtZW51IGl0ZW1zLlxuQG1peGluIG1lbnUtYWxpZ24oJGFsaWdubWVudCkge1xuICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gY2VudGVyIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIGEgTWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgW2hvcml6b250YWxdIC0gRGlyZWN0aW9uIG9mIHRoZSBNZW51LiBDYW4gYmUgYGhvcml6b250YWxgIG9yIGB2ZXJ0aWNhbGAuXG5AbWl4aW4gbWVudS1kaXJlY3Rpb24oJGRpcjogaG9yaXpvbnRhbCkge1xuICBAaWYgJGRpciA9PSBob3Jpem9udGFsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIG1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW1wbGUgTWVudSwgd2hpY2ggaGFzIG5vIHBhZGRpbmcgb3IgaG92ZXIgc3RhdGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFskZ2xvYmFsLWxlZnRdIC0gRGlyZWN0aW9uIG9mIHRoZSBtZW51LiBUaGlzIGVmZmVjdHMgdGhlIHNpZGUgb2YgdGhlIGA8bGk+YCB0aGF0IHJlY2VpdmVzIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LXNpbXBsZS1tYXJnaW5dIC0gVGhlIG1hcmdpbiB0byBhcHBseSB0byBlYWNoIGA8bGk+YC5cbkBtaXhpbiBtZW51LXNpbXBsZSgkZGlyOiAkZ2xvYmFsLWxlZnQsICRtYXJnaW46ICRtZW51LXNpbXBsZS1tYXJnaW4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIGxpICsgbGkge1xuICAgIG1hcmdpbi0jeyRkaXJ9OiAkbWFyZ2luO1xuICB9XG5cbiAgYSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbmVzdGVkIE1lbnUsIGJ5IGFkZGluZyBgbWFyZ2luLWxlZnRgIHRvIHRoZSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRtYXJnaW4gWyRtZW51LW5lc3RlZC1tYXJnaW5dIC0gTGVuZ3RoIG9mIHRoZSBtYXJnaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbmVzdGVkLWFsaWdubWVudCBbbGVmdF0gLSBBbGlnbm1lbnQgb2YgdGhlIG5lc3RlZCBjbGFzc1xuQG1peGluIG1lbnUtbmVzdGVkKFxuICAkbWFyZ2luOiAkbWVudS1uZXN0ZWQtbWFyZ2luLFxuICAkbmVzdGVkLWFsaWdubWVudDogbGVmdFxuKSB7XG4gIEBpZiAkbmVzdGVkLWFsaWdubWVudCA9PSByaWdodCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRtYXJnaW47XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG1hcmdpbjtcbiAgfVxuXG59XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgaWNvbnMgaW4gbWVudXMuXG5AbWl4aW4gbWVudS1pY29ucygpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgaW1nLFxuICAgIGksXG4gICAgc3ZnIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICsgc3BhbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggbW9kaWZpZXIgZm9yIGhvcml6b250YWwgb3JpZW50YXRpb25cbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJY29uIExlZnRcbiAgICAmLmljb24tbGVmdCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24obGVmdCk7XG4gICAgfVxuXG4gICAgLy8gSWNvbiBSaWdodFxuICAgICYuaWNvbi1yaWdodCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgIH1cblxuICAgIC8vIEljb24gVG9wXG4gICAgJi5pY29uLXRvcCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJvdHRvbVxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGJvdHRvbSk7XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlXG4gICAgLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgQGluY2x1ZGUgbWVudS1zdGF0ZS1hY3RpdmU7XG4gICAgfVxuICAgIFxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uLWdyb3VwXG4vLy8vXG5cbi8vLyBNYXJnaW4gZm9yIGJ1dHRvbiBncm91cHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbicgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIG51bWJlciBvZiBidXR0b25zIHRoYXQgY2FuIGJlIGluIGFuIGV2ZW4td2lkdGggYnV0dG9uIGdyb3VwLiAoT25seSBuZWVkZWQgd2hlbiAkZ2xvYmFsLWZsZXhib3g6IGZhbHNlOylcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2ICFkZWZhdWx0O1xuXG4vLy8gRGV0ZXJtaW5lcyBpZiAkYnV0dG9uLXJhZGl1cyBpcyBhcHBsaWVkIHRvIGVhY2ggYnV0dG9uIG9yIHRoZSBidXR0b24gZ3JvdXAgYXMgYSB3aG9sZS4gVXNlICRnbG9iYWwtcmFkaXVzIGluIF9zZXR0aW5ncy5zY3NzIHRvIGNoYW5nZSByYWRpdXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQWRkIHN0eWxlcyBmb3IgYSBidXR0b24gZ3JvdXAgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkY2hpbGQtc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwKFxuICAkY2hpbGQtc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZm9udC1zaXplOiAwO1xuICB9XG5cbiAgI3skY2hpbGQtc2VsZWN0b3J9IHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gT25lIGNoaWxkXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skc3BhY2luZ30pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFR3byBvciBtb3JlIGNoaWxkcmVlblxuICAgICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYnV0dG9uZ3JvdXAtZXhwYW5kLW1heCB7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgICAmLCAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogY2FsYygje3BlcmNlbnRhZ2UoMSAvICRpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG4vLy8gVW4tc3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXVuc3RhY2soXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXG4pIHtcbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24tZ3JvdXAge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXA7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV2ZW4td2lkdGggR3JvdXBcbiAgICAmLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgQGlmICRidXR0b24tZmlsbCAhPSBob2xsb3cge1xuICAgICAgICAmLiN7JG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgJi4jeyRuYW1lfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkY29sb3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2xvc2UtYnV0dG9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uIFRoZSBmaXJzdCB2YWx1ZSBzaG91bGQgYmUgYHJpZ2h0YCBvciBgbGVmdGAsIGFuZCB0aGUgc2Vjb25kIHZhbHVlIHNob3VsZCBiZSBgdG9wYCBvciBgYm90dG9tYC5cbi8vLyBAdHlwZSBMaXN0XG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcCAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tc2l6ZTogKFxuICBzbWFsbDogMS41ZW0sXG4gIG1lZGl1bTogMmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsaW5lLWhlaWdodCBvZiB0aGUgY2xvc2UgYnV0dG9uLiBJdCBhZmZlY3RzIHRoZSBzcGFjaW5nIG9mIHRoZSBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDEgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbiB3aGVuIGJlaW5nIGhvdmVyZWQgb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrICFkZWZhdWx0O1xuXG5cbi8vLyBHZXQgdGhlIHNpemUgYW5kIHBvc2l0aW9uIGZvciBhIGNsb3NlIGJ1dHRvbi4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyLCB0aGUgbnVtYmVyIGlzIHJldHVybmVkLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBjb25maWcgbWFwIGFuZCB0aGUgbWFwIGhhcyB0aGUga2V5IGAkc2l6ZWAsIHRoZSB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJHZhbHVlIC0gQSBudW1iZXIgb3IgbWFwIHRoYXQgcmVwcmVzZW50cyB0aGUgc2l6ZSBvciBwb3NpdGlvbiB2YWx1ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBUaGUgc2l6ZSBvZiB0aGUgY2xvc2UgYnV0dG9uIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge051bWJlcn0gVGhlIGdpdmVuIG51bWJlciBvciB0aGUgdmFsdWUgZm91bmQgaW4gdGhlIG1hcC5cbkBmdW5jdGlvbiAtemYtZ2V0LXNpemUtdmFsKCR2YWx1ZSwgJHNpemUpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgIC8vIElmIGl0IGlzLCBqdXN0IHJldHVybiB0aGUgbnVtYmVyXG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cblxuICAvLyBDaGVjayBpZiB0aGUgc2l6ZSBuYW1lIGV4aXN0cyBpbiB0aGUgdmFsdWUgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCR2YWx1ZSwgJHNpemUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCR2YWx1ZSwgJHNpemUpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBzaXplIGFuZCBwb3NpdGlvbiBvZiBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFttZWRpdW1dIC0gVGhlIHNpemUgdG8gdXNlLiBTZXQgdG8gYHNtYWxsYCB0byBjcmVhdGUgYSBzbWFsbCBjbG9zZSBidXR0b24uIFRoZSAnbWVkaXVtJyB2YWx1ZXMgZGVmaW5lZCBpbiBgJGNsb3NlYnV0dG9uLSpgIHZhcmlhYmxlcyB3aWxsIGJlIHVzZWQgYXMgdGhlIGRlZmF1bHQgc2l6ZSBhbmQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbkBtaXhpbiBjbG9zZS1idXR0b24tc2l6ZSgkc2l6ZSkge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICAjeyR4fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWwsICRzaXplKTtcbiAgI3skeX06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC12ZXJ0aWNhbCwgJHNpemUpO1xuICBmb250LXNpemU6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLXNpemUsICRzaXplKTtcbiAgbGluZS1oZWlnaHQ6IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQsICRzaXplKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNsb3NlIGJ1dHRvbiwgdXNpbmcgdGhlIHN0eWxlcyBpbiB0aGUgc2V0dGluZ3MgdmFyaWFibGVzLlxuQG1peGluIGNsb3NlLWJ1dHRvbiB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jbG9zZS1idXR0b24ge1xuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoc21hbGwpIH1cbiAgICAmLCAmLm1lZGl1bSB7IEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKG1lZGl1bSkgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1tZW51LWljb24ge1xuICAubWVudS1pY29uIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXIoJGNvbG9yOiAkdGl0bGViYXItaWNvbi1jb2xvciwgJGNvbG9yLWhvdmVyOiAkdGl0bGViYXItaWNvbi1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAubWVudS1pY29uLmRhcmsge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAvIDIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZGlyID09IHZlcnRpY2FsIHtcbiAgICA+IGxpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLWxlZnQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW5zLXJpZ2h0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbGVmdDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEB3YXJuICdUaGUgZGlyZWN0aW9uIHVzZWQgZm9yIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCkgbXVzdCBiZSBob3Jpem9udGFsIG9yIHZlcnRpY2FsLic7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtXG4gICAgPiBsaSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kO1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC8vIFRvcC1sZXZlbCBpdGVtIGFjdGl2ZSBzdGF0ZVxuICAgID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd24tbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlO1xuICAgIH1cblxuICAgIC5uby1qcyAmIHVsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1ob3Jpem9udGFsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuI3skc2l6ZX0tdmVydGljYWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gICAgd2lkdGg6IDEwMHB4O1xuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBhOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDVweDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplO1xuICAgIH1cblxuICAgICYub3BlbnMtaW5uZXIgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG5cbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7XG5cbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG1pbi13aWR0aDogJGRyb3Bkb3dubWVudS1taW4td2lkdGg7XG5cbiAgICBib3JkZXI6ICRkcm9wZG93bm1lbnUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kO1xuXG4gICAgLmRyb3Bkb3duICYgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICh0eXBlLW9mKCRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKSA9PSAnbnVtYmVyJykge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICBtYXJnaW4tdG9wOiAoLSRkcm9wZG93bm1lbnUtYm9yZGVyLXdpZHRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC8vIFtUT0RPXSBDdXQgYmFjayBzcGVjaWZpY2l0eVxuICAgIC8vJjpub3QoLmpzLWRyb3Bkb3duLW5vaG92ZXIpID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50OmhvdmVyID4gJiwgLy8gd2h5IGlzIHRoaXMgbGluZSBuZWVkZWQ/IE9wZW5pbmcgaXMgaGFuZGxlZCBieSBKUyBhbmQgdGhpcyBjYXVzZXMgc29tZSB1Z2x5IGZsaWNrZXJpbmcgd2hlbiB0aGUgc3ViIGlzIHJlLXBvc2l0aW9uZWQgYXV0b21hdGljYWxseS4uLlxuICAgICYuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsZGVmYXVsdCk7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHJhdGlvIGluICRyYXRpb3Mge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJi5taWRkbGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBtYXAgb2YgYSBsZWZ0L3JpZ2h0IG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgbWFwIG9mIGEgdG9wL2JvdHRvbSBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBmb3IgdGhlIG9mZi1jYW52YXMgb3ZlcmxhcCBwYW5lbC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KSAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgc2l6ZSBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHggIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IGNvbG9yIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIGNvbnRlbnQgb3ZlcmxheS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBwdXNoYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYG92ZXJsYXBgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMyAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB1c2luZyB0aGUgYHJldmVhbC1mb3ItKmAgY2xhc3NlcyBvciBtaXhpbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBMZW5ndGggb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cyAhZGVmYXVsdDtcblxuLy8vIFRpbWluZyBmdW5jdGlvbiBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuLy8vIEB0eXBlIEJvb2xcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG92ZXJsYXkgdGhhdCBhcHBlYXJzIHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gQ1NTIGNsYXNzIHVzZWQgZm9yIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhlIG9mZi1jYW52YXMgbWl4aW5zIHVzZSB0aGlzIHRvIHRhcmdldCB0aGUgcGFnZSBjb250ZW50LlxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG5cbiAgLy8vIFRyYW5zZm9ybSBkZXByZWNhdGVkIHNpemUgc2V0dGluZ3MgaW50byBtYXAgJiBzaG93IHdhcm5pbmdcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy1zaXplcyBpbnN0ZWFkJztcbiAgfVxuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzIGluc3RlYWQnO1xuICB9XG5cbiAgLy8gQ2hlY2tzIHRoZSB6LWluZGV4ZXMgYW5kIGluY3JlYXNlIHRoZW0gZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHRoZSBvdmVybGF5J3Mgei1pbmRleCBpcyBuZXcgc2luY2UgdjYuNCBhbmQgbWF5IGJlIGlkZW50aWNhbCB0byB0aGUgdXNlciBjdXN0b20gc2V0dGluZ3Mgb2YgdGhlIHB1c2ggei1pbmRleC5cbiAgQGlmICRvZmZjYW52YXMtcHVzaC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcHVzaC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXggPD0gJG9mZmNhbnZhcy1wdXNoLXppbmRleCB7ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG5cbiAgLy8gSGlkZXMgb3ZlcmZsb3cgb24gYm9keSB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbiAgLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgb3ZlcmxheSAoZ2VuZXJhdGVkIGJ5IEphdmFTY3JpcHQpXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsIHZpc2liaWxpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuXG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJi5pcy1jbG9zYWJsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGlmICRmaXhlZCA9PSB0cnVlIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC8vIFNldCB0aGUgb2ZmLWNhbnZhcyB6LWluZGV4LlxuICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZXM6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemVzLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUgaXMgc2V0LCBhZGQgaW5uZXIgYm94LXNoYWRvdy5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIHtcbiAgICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhyaWdodCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cobGVmdCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGJvdHRvbSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHRvcCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuJHBvc2l0aW9uOiBsZWZ0LFxuJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiRicmVha3BvaW50OiBzbWFsbFxuKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgei1pbmRleDogJHppbmRleDtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICBAaWYgbm90ICRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgcmV2ZWFsZWQgZWxlbWVudCBpcyBuZXN0ZWQgaW4gY29udGVudFxuICAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIEBhdC1yb290IC4jeyRjb250ZW50fS5oYXMtcmV2ZWFsLSN7JHBvc2l0aW9ufSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgKHByaW9yIHRvIHY2LjQpXG4gICYgfiAuI3skY29udGVudH0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxufVxuXG4vLy8gT3ZlcnJpZGVzIHRoZSBvZmYtY2FudmFzIHN0eWxlc1xuQG1peGluIGluLWNhbnZhcygpIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHRyYW5zaXRpb246IG5vbmU7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYucG9zaXRpb24tbGVmdCxcbiAgJi5wb3NpdGlvbi1yaWdodCxcbiAgJi5wb3NpdGlvbi10b3AsXG4gICYucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tb2ZmLWNhbnZhcyB7XG4gIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzaWNzO1xuXG4gIC8vIE9mZi1jYW52YXMgd3JhcHBlclxuICAub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXdyYXBwZXI7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lclxuICAub2ZmLWNhbnZhcyB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlO1xuXG4gICAgLy8gRm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgZm9yIG5lc3RlZCBvZmYtY2FudmFzIGJlY2F1c2UgZml4ZWQgZG9lc24ndCB3b3JrIGZvciBwdXNoIHRyYW5zaXRpb24gd2l0aGluIHRoZSB0cmFuc2Zvcm0gc2NvcGUuXG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICAgIC8vIE5PVEU6IHNpbmNlIG92ZXJsYXAgdHJhbnNpdGlvbiBpcyBjdXJyZW50bHkgZm9yY2VkIGlmIG5lc3RlZCwgdGhlcmUncyBubyBuZWVkIHRvIGZvcmNlIHBvc2l0aW9uIGFic29sdXRlIHVudGlsIG5lc3RlZCBwdXNoIHRyYW5zaXRpb24gaXMgc3VwcG9ydGVkLlxuICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyIHdpdGggYWJzb2x1dGUgcG9zaXRpb25cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZSgkZml4ZWQ6IGZhbHNlKTtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgcG9zaXRpb24gY2xhc3Nlc1xuICAucG9zaXRpb24tbGVmdCAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24obGVmdCwgICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tcmlnaHQgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24ocmlnaHQsICBob3Jpem9udGFsKTsgfVxuICAucG9zaXRpb24tdG9wICAgICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24odG9wLCAgICB2ZXJ0aWNhbCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbSAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGJvdHRvbSwgdmVydGljYWwpOyB9XG5cbiAgLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1jb250ZW50O1xuICB9XG5cbiAgLy8gUmV2ZWFsIG9mZi1jYW52YXMgcGFuZWwgb24gbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChsZWZ0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHJpZ2h0LCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbCh0b3AsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGJvdHRvbSwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgaW4tY2FudmFzIGZvciBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGluLWNhbnZhcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwYWdpbmF0aW9uXG4vLy8vXG5cbi8vLyBGb250IHNpemUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIG9mIHRoZSBwYWdpbmF0aW9uIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IG1hcmdpbiB0byBzZXBhcmF0ZSBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGVsbGlwc2lzIGluIGEgcGFnaW5hdGlvbiBtZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gSWYgYGZhbHNlYCwgZG9uJ3QgZGlzcGxheSBwYWdlIG51bWJlciBsaW5rcyBvbiBtb2JpbGUsIG9ubHkgbmV4dC9wcmV2aW91cyBsaW5rc1xuLy8vIGFuZCBvcHRpb25hbGx5IGN1cnJlbnQgcGFnZSBudW1iZXIuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheSB0aGUgY3VycmVudCBwYWdlIG51bWJlciBvbiBtb2JpbGUgZXZlbiBpZiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYGZhbHNlYC5cbi8vLyBUaGlzIHBhcmFtZXRlciB3aWxsIG9ubHkgb3ZlcnJpZGUgdGhlIHZpc2liaWxpdHkgc2V0dGluZyBvZiB0aGUgY3VycmVudCBpdGVtIGZvciBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtgLFxuLy8vIGl0IHdpbGwgbm90IGFmZmVjdCB0aGUgY3VycmVudCBwYWdlIG51bWJlciB2aXNpYmlsaXR5IHdoZW4gYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGB0cnVlYC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYXJyb3dzIGFyZSBhZGRlZCB0byB0aGUgbmV4dCBhbmQgcHJldmlvdXMgbGlua3Mgb2YgcGFnaW5hdGlvbi5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAnXFwwMGFiJztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICdcXDAwYmInO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXN0aWNreSB7XG4gIC5zdGlja3ktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuc3RpY2t5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgLnN0aWNreS5pcy1zdHVjayB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAmLmlzLWF0LXRvcCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGlja3kuaXMtYW5jaG9yZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuXG4gICAgJi5pcy1hdC1ib3R0b20ge1xuICAgICAgYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCB0YWJsZVxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgdGFibGUgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZSAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHN0cmlwZWQgdGFibGUgcm93cyBhbmQgdGhlIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHN0eWxlIGZvciB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWJsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0YW5kYXJkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxufVxuXG5AbWl4aW4gLXpmLXRhYmxlLWNoaWxkcmVuLXN0eWxlcygkc3RyaXBlOiAkdGFibGUtc3RyaXBlLCAkaXMtc3RyaXBlZDogJHRhYmxlLWlzLXN0cmlwZWQpIHtcbiAgdGhlYWQsXG4gIHRib2R5LFxuICB0Zm9vdCB7XG4gICAgYm9yZGVyOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2FwdGlvblxuICBjYXB0aW9uIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWRcbiAgdGhlYWQge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1oZWFkLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBmb290XG4gIHRmb290IHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtZm9vdC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZCBhbmQgZm9vdFxuICB0aGVhZCxcbiAgdGZvb3Qge1xuICAgIC8vIFJvd3Mgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAvLyBDZWxscyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiAjeyRnbG9iYWwtbGVmdH07XG4gICAgfVxuICB9XG5cbiAgLy8gVGFibGUgcm93c1xuICB0Ym9keSB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBzdHJpcGVkXG4gIEBpZiAkaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgIH1cblxuICAgICYudW5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgbm90IHN0cmlwZWRcbiAgQGVsc2UgaWYgJGlzLXN0cmlwZWQgPT0gZmFsc2Uge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS11bnN0cmlwZSgpO1xuICAgIH1cblxuICAgICYuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGFibGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0cmlwZSBbJHRhYmxlLXN0cmlwZV0gLSBVc2VzIGtleXdvcmRzIGV2ZW4sIG9kZCwgb3Igbm9uZSB0byBkYXJrZW4gcm93cyBvZiB0aGUgdGFibGUuIFRoZSBkZWZhdWx0IHZhbHVlIGlzIGV2ZW4uXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFic1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gb2YgdGhlIHRhYiBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRhYiBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItYWN0aXZlLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0YWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGl0ZW1zIGluIGEgTWVudS5cbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYSB0YWIgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gdGFicy1jb250YWluZXIgKFxuICAkbWFyZ2luOiAkdGFiLW1hcmdpbixcbiAgJGJhY2tncm91bmQ6ICR0YWItYmFja2dyb3VuZCxcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250YWluZXIgdG8gaGF2ZSB2ZXJ0aWNhbCB0YWJzLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRhaW5lcigpYC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbCB7XG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGxpbmtzIHdpdGhpbiBhIHRhYiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gdGhlIGA8bGk+YCBlbGVtZW50cyBpbnNpZGUgYSB0YWIgY29udGFpbmVyLlxuQG1peGluIHRhYnMtdGl0bGUgKFxuICAkcGFkZGluZzogJHRhYi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICR0YWItaXRlbS1mb250LXNpemUsXG4gICRjb2xvcjogJHRhYi1jb2xvcixcbiAgJGNvbG9yLWFjdGl2ZTogJHRhYi1hY3RpdmUtY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGJhY2tncm91bmQtYWN0aXZlOiAkdGFiLWJhY2tncm91bmQtYWN0aXZlXG4pIHtcbiAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICA+IGEge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICZbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkY29sb3ItYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSB3cmFwcGVyIHRoYXQgc3Vycm91bmRzIGEgdGFiIGdyb3VwJ3MgY29udGVudCBwYW5lcy5cbkBtaXhpbiB0YWJzLWNvbnRlbnQgKFxuICAkYmFja2dyb3VuZDogJHRhYi1jb250ZW50LWJhY2tncm91bmQsXG4gICRjb2xvcjogJHRhYi1jb250ZW50LWNvbG9yLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiAkY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi8vLyBBdWdtZW50cyBhIHRhYiBjb250ZW50IGNvbnRhaW5lciB0byBoYXZlIGEgdmVydGljYWwgc3R5bGUsIGJ5IHNoaWZ0aW5nIHRoZSBib3JkZXIgYXJvdW5kLiBVc2UgdGhpcyBpbiBjb25qdW5jdGlvbiB3aXRoIGB0YWJzLWNvbnRlbnQoKWAuXG5AbWl4aW4gdGFicy1jb250ZW50LXZlcnRpY2FsIChcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gaW5kaXZpZHVhbCB0YWIgY29udGVudCBwYW5lbCB3aXRoaW4gdGhlIHRhYiBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXBhbmVsIChcbiAgJHBhZGRpbmc6ICR0YWItY29udGVudC1wYWRkaW5nXG4pIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYnMge1xuICAudGFicyB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXI7XG4gIH1cblxuICAvLyBWZXJ0aWNhbFxuICAudGFicy52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250YWluZXItdmVydGljYWw7XG4gIH1cblxuICAvLyBTaW1wbGVcbiAgLnRhYnMuc2ltcGxlIHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJpbWFyeSBjb2xvclxuICAudGFicy5wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblxuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRwcmltYXJ5LWNvbG9yKTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkcHJpbWFyeS1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRhYnMtdGl0bGUge1xuICAgIEBpbmNsdWRlIHRhYnMtdGl0bGU7XG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQ7XG4gIH1cblxuICAudGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRlbnQtdmVydGljYWw7XG4gIH1cblxuICAudGFicy1wYW5lbCB7XG4gICAgQGluY2x1ZGUgdGFicy1wYW5lbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvcC1iYXJcbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdG9wIGJhci4gVGhpcyBjb2xvciBhbHNvIGNhc2NhZGVzIHRvIG1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igc3VibWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLiBVc2VmdWxsIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyB0cmFuc3BhcmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgZm9yIHRoZSB0b3AgYmFyIHRpdGxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci10aXRsZS1zcGFjaW5nOiAwLjVyZW0gMXJlbSAwLjVyZW0gMCAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYDxpbnB1dD5gIGVsZW1lbnRzIGluc2lkZSB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQnJlYWtwb2ludCBhdCB3aGljaCB0b3AgYmFyIHN3aXRjaGVzIGZyb20gbW9iaWxlIHRvIGRlc2t0b3Agdmlldy5cbi8vLyBAdHlwZSBCcmVha3BvaW50XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdG9wIGJhciBjb250YWluZXIuXG5AbWl4aW4gdG9wLWJhci1jb250YWluZXIge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICAmLFxuICB1bCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1iYWNrZ3JvdW5kO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIGRpZmZlcm50IGZyb20gJHRvcGJhci1iYWNrZ3JvdW5kLXN1Ym1lbnVcbiAgQGlmICgkdG9wYmFyLWJhY2tncm91bmQgIT0gJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQpIHtcbiAgICB1bCB1bCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXN0cmFpbiB3aWR0aCBvZiBpbnB1dHMgYnkgZGVmYXVsdCB0byBtYWtlIHRoZW0gZWFzaWVyIHRvIGFycmFuZ2VcbiAgaW5wdXQge1xuICAgIG1heC13aWR0aDogJHRvcGJhci1pbnB1dC13aWR0aDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgfVxuXG4gIC8vIFRoZSBhYm92ZSBzdHlsZXMgc2hvdWxkbid0IGFwcGx5IHRvIGlucHV0IGdyb3VwIGZpZWxkc1xuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICB9XG5cbiAgaW5wdXQuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIE1ha2VzIHNlY3Rpb25zIG9mIGEgdG9wIGJhciBzdGFjayBvbiB0b3Agb2YgZWFjaCBvdGhlci5cbkBtaXhpbiB0b3AtYmFyLXN0YWNrZWQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuZG9lcyB0aGUgQ1NTIGFwcGxpZWQgYnkgdGhlIGB0b3AtYmFyLXN0YWNrZWQoKWAgbWl4aW4uXG5AbWl4aW4gdG9wLWJhci11bnN0YWNrIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG5cbiAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b3AtYmFyIHtcbiAgLy8gVG9wIGJhciBjb250YWluZXJcbiAgLnRvcC1iYXIge1xuICAgIEBpbmNsdWRlIHRvcC1iYXItY29udGFpbmVyO1xuXG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXMgYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3p1cmIvZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAuMDAxMjU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBcIiN7JG91dHB1dH1cIjtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIC1tdWktaXMtZnVuY3Rpb24oJG1hcCkge1xuICAgICAgJG1hcDogLW11aS1zYWZlLWNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtudWxsXSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLiBCeSBkZWZhdWx0IGBsZWZ0YCBhbmQgYHJpZ2h0YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IG51bGwsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgbGVmdCwgcmlnaHQpKTtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS4gQnkgZGVmYXVsdCBgMGAgYW5kIGAxYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFtudWxsXSAtIE9wYWNpdHkgdG8gZW5kIG9uLiBCeSBkZWZhdWx0IGAxYCBhbmQgYDBgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkdHVybi1vcmlnaW46IGlmKCR0dXJuLW9yaWdpbiAhPSBudWxsLCAkdHVybi1vcmlnaW4sIGlmKCRzdGF0ZSA9PSBpbiwgZnJvbS1iYWNrLCBmcm9tLWZyb250KSk7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBTaXplIHRvIHN0YXJ0IGF0LiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gU2l6ZSB0byBlbmQgYXQuIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS4gQnkgZGVmYXVsdCBgY3dgIGFuZCBgY2N3YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgY3csIGNjdykpO1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsIkBjaGFyc2V0ICd1dGYtOCc7XHJcblxyXG5cclxuQGltcG9ydCAnc2V0dGluZ3MnO1xyXG5AaW1wb3J0ICdmb3VuZGF0aW9uJztcclxuQGltcG9ydCAnbW90aW9uLXVpJztcclxuXHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XHJcblxyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1yYW5nZS1pbnB1dDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcclxuLy9AaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcclxuQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XHJcbi8vQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xyXG5AaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xyXG4vLyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XHJcbkBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzO1xyXG5cclxuLy8gQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlcztcclxuXHJcbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcclxuQGluY2x1ZGUgbW90aW9uLXVpLWFuaW1hdGlvbnM7XHJcblxyXG4vKlxyXG4gIE15IGN1c3RvbSBzdHlsZXM6XHJcbiAgQWRkIHlvdXIgc2NzcyBmaWxlcyBiZWxvdyB0byBzdHJ1Y3R1cmUgeW91ciBwcm9qZWN0IHN0eWxlc1xyXG4qL1xyXG5cclxuLy8gR2xvYmFsXHJcbkBpbXBvcnQgXCJnbG9iYWwvYWNjZXNzaWJpbGl0eVwiO1xyXG5AaW1wb3J0IFwiZ2xvYmFsL2NvbG9yc1wiO1xyXG5AaW1wb3J0IFwiZ2xvYmFsL3dwLWFkbWluXCI7XHJcbkBpbXBvcnQgXCJnbG9iYWwvd3Atb3ZlcnJpZGVzXCI7XHJcbi8vQGltcG9ydCBcImdsb2JhbC9ndXRlbmJlcmdcIjtcclxuQGltcG9ydCBcImdsb2JhbC9nbG9iYWxcIjtcclxuXHJcbi8vIE1vZHVsZXNcclxuQGltcG9ydCBcIm1vZHVsZXMvbmF2aWdhdGlvblwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9jb250ZW50XCI7XHJcbkBpbXBvcnQgXCJtb2R1bGVzL2Zvb3RlclwiO1xyXG5AaW1wb3J0IFwibW9kdWxlcy9lZGl0b3Itc3R5bGVcIjtcclxuXHJcbi8vIENvbXBvbmVudHNcclxuQGltcG9ydCBcImNvbXBvbmVudHMvYnV0dG9uc1wiO1xyXG4vL0BpbXBvcnQgXCJjb21wb25lbnRzL2NhcmRzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZlYXR1cmVkLWltYWdlXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2ZvbnRzXCI7XHJcbi8vQGltcG9ydCBcImNvbXBvbmVudHMvZGl2aWRlcnNcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvbGlua3NcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvYW5pbWF0aW9uc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9zaWRlYmFyXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3BhZ2luYXRpb25cIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvc2xpY2stc2xpZGVyXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL2NvbnRhY3QtZm9ybVwiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50cy9mZWF0dXJlZC1pbWFnZXMtY2Fyb3VzZWxcIjtcclxuQGltcG9ydCBcImNvbXBvbmVudHMvbW9zdC1wb3B1bGFyLXBvc3RzXCI7XHJcbkBpbXBvcnQgXCJjb21wb25lbnRzL3NoYXJlLW5ld3NcIjtcclxuLy9AaW1wb3J0IFwiY29tcG9uZW50cy9tb2JpbGUtc2lkZWJhclwiO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvY3VzdG9tLXV0aWxpdGllc1wiO1xyXG5cclxuQGltcG9ydCBcImNvbXBvbmVudHMvZmxleGlibGUtY29udGVudFwiO1xyXG5cclxuLy8gVGVtcGxhdGVzXHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvZnJvbnRcIjtcclxuLy9AaW1wb3J0IFwidGVtcGxhdGVzL2tpdGNoZW4tc2lua1wiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL3BvcnRmb2xpb1wiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL2pvaW4tcGVnXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvYWJvdXRcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9uZXdzXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvY29udGFjdFwiO1xyXG5AaW1wb3J0IFwidGVtcGxhdGVzL2Jsb2dcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9hcmNoaXZlXCI7XHJcbkBpbXBvcnQgXCJ0ZW1wbGF0ZXMvZ3JpZC1hY2NvcmRpb25cIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGVcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGUtcGVnLXByb2plY3RcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGUtYXJ0aWNsZXNcIjtcclxuQGltcG9ydCBcInRlbXBsYXRlcy9zaW5nbGUtcGVnLWpvYnNcIjtcclxuIiwiLy8gVGV4dCBtZWFudCBvbmx5IGZvciBzY3JlZW4gcmVhZGVycy4gQWRkcmVzc2VzIHBhcnQgb2YgdGhlbWUtY2hlY2sgaXNzdWUgIzg0MC5cclxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0F1dG9tYXR0aWMvX3MvYmxvYi9tYXN0ZXIvc3R5bGUuY3NzXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQge1xyXG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcclxuICBoZWlnaHQ6IDFweDtcclxuICB3aWR0aDogMXB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5zY3JlZW4tcmVhZGVyLXRleHQ6Zm9jdXMge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gIGJveC1zaGFkb3c6IDAgMCAycHggMnB4IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICMyMTc1OWI7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgaGVpZ2h0OiBhdXRvO1xyXG4gIGxlZnQ6IDVweDtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIHBhZGRpbmc6IDE1cHggMjNweCAxNHB4O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICB0b3A6IDVweDtcclxuICB3aWR0aDogYXV0bztcclxuICB6LWluZGV4OiAxMDAwMDA7IC8vIEFib3ZlIFdQIHRvb2xiYXIuXHJcbn1cclxuIiwiLy8gRml4IHRoZSBpc3N1ZSB3aGVyZSB0aGUgV1AgYWRtaW4tYmFyIG92ZXJsYXBzIHRoZSBtb2JpbGUgbWVudVxyXG4jd3BhZG1pbmJhciB7XHJcbiAgcG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8vIE1ha2Ugc3VyZSB0aGF0IHRoZSBXUCBhZG1pbi1iYXIgZG9lcyBub3Qgb3ZlcmxhcCBGb3VuZGF0aW9uIGNvbXBvbmVudHNcclxuYm9keS5hZG1pbi1iYXIge1xyXG4gIC8vIE9mZnNldCBzdGlja3kgdG9wIGJhclxyXG4gICYuZi10b3BiYXItZml4ZWQge1xyXG4gICAgLnN0aWNreS5maXhlZCB7XHJcbiAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDMyKTtcclxuICAgIH1cclxuICB9XHJcbiAgLy8gT2Zmc2V0IG1vYmlsZSBvZmYtY2FudmFzIG1lbnVcclxuICAmLm9mZmNhbnZhcyB7XHJcbiAgICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcclxuICAgICAgdG9wOiByZW0tY2FsYyg0Nik7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNzgzKSB7XHJcbiAgICAgICAgdG9wOiByZW0tY2FsYygzMik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLndwLWNhcHRpb24gPiBmaWdjYXB0aW9uIHtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgZm9udC1zaXplOiAwLjhyZW07XHJcbiAgY29sb3I6ICM5OTk7XHJcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xyXG59XHJcblxyXG5wLndwLWNhcHRpb24tdGV4dHtcclxuICBmb250LXNpemU6OTAlO1xyXG4gIGNvbG9yOiAjNjY2O1xyXG4gIHBhZGRpbmc6cmVtLWNhbGMoMTApIDA7XHJcbn1cclxuXHJcbi5hbGlnbmxlZnQge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XHJcbiAgbWFyZ2luOiAwO1xyXG59XHJcblxyXG4uYWxpZ25yaWdodCB7XHJcbiAgZmxvYXQ6IHJpZ2h0O1xyXG4gIHBhZGRpbmctbGVmdDogMXJlbTtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5hbGlnbmNlbnRlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xyXG59XHJcblxyXG4uZ2FsbGVyeSB7XHJcbiAgQGluY2x1ZGUgeHktZ3JpZDtcclxuICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XHJcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCA5IHtcclxuICAgICYuZ2FsbGVyeS1jb2x1bW5zLSN7JGl9IHtcclxuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoMiwgJy5nYWxsZXJ5LWl0ZW0nLCB0cnVlKTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xyXG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KDQsICcuZ2FsbGVyeS1pdGVtJywgdHJ1ZSwgKHNtYWxsOiAzMHB4KSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgJi5nYWxsZXJ5LWNvbHVtbnMtI3skaX0ge1xyXG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtbGF5b3V0KCRpLCAnLmdhbGxlcnktaXRlbScsIHRydWUsIChzbWFsbDogMzBweCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5nYWxsZXJ5LWljb24gPiBhIHtcclxuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcclxuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xyXG4gIH1cclxuICAuZ2FsbGVyeS1pY29uID4gaW1nIHtcclxuICAgIEBpbmNsdWRlIHRodW1ibmFpbDtcclxuICB9XHJcbn1cclxuIiwiYm9keSB7XHJcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbn1cclxuXHJcbmJvZHksXHJcbmh0bWwge1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm8tY29tbW9uLWxpZ2F0dXJlcyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZ3JlY2FwdGNoYS1iYWRnZSB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxyXG5cclxuLmdyaWQtY29udGFpbmVyIHtcclxuICBtYXgtd2lkdGg6ICRncmlkLWNvbnRhaW5lci1tYXgtd2lkdGgtc207XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1heC13aWR0aDogJGdyaWQtY29udGFpbmVyLW1heC13aWR0aC1tZDtcclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXItbWF4LXdpZHRoLWxnO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXItbWF4LXdpZHRoLXhsO1xyXG4gIH1cclxufVxyXG5cclxuLnRleHQtdXBwZXJjYXNle1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5wbGF5LWljb257XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IDUwJTsgcmlnaHQ6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDUwJSwtNTAlKTtcclxuICAgIGZvbnQtc2l6ZTogNzBweDtcclxufVxyXG5cclxuLm1vcmV0YWctd3JhcHBlciB7XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjE4cHg7XHJcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICBjb2xvcjogJGdyYXk7XHJcbn1cclxuXHJcbnNlbGVjdDpmb2N1cyB7XHJcbiAgYm94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLnNlcGVyYXRvciB7XHJcbiAgd2lkdGg6IDYycHg7XHJcbiAgaGVpZ2h0OiAycHg7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5kZWZhdWx0LXBhZ2Uge1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIGgxIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5vdmVybGF5LWhvdmVyLWl0ZW0ge1xyXG4gICY6aG92ZXIge1xyXG4gICAgLm92ZXJsYXkge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLm92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ibGFjaywgLjIpO1xyXG4gICAgb3BhY2l0eTogMDtcclxuICAgIHRyYW5zaXRpb246IDAuM3Mgb3BhY2l0eTtcclxuXHJcbiAgICAmLnRleHQtb3ZlcmxheSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGRhcmstYmxhY2ssIC43KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgLmdyYWRpZW50LW92ZXJsYXkge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwKSAzMCUsIHJnYmEoMCwwLDAsMC42MCkgODAlLCByZ2JhKCRsaWdodC1ibGFjaywgLjgwKSAxMDAlKTtcclxuICAgIHotaW5kZXg6IDI7XHJcbiAgfVxyXG59XHJcblxyXG4ubW9iaWxlLWdyYWRpZW50LmdyYWRpZW50LW92ZXJsYXkge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgcmdiYSgwLDAsMCwwKSAzMCUsIHJnYmEoMCwwLDAsMC42MCkgODAlLCByZ2JhKCRsaWdodC1ibGFjaywgLjcwKSAxMDAlKTtcclxuICB6LWluZGV4OiAzO1xyXG5cclxufVxyXG5cclxuLmdyYWRpZW50LWhvdmVyIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAuNyk7XHJcbiAgei1pbmRleDogMztcclxuICBvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uYmlnLWJhY2tncm91bmQtaW1hZ2Uge1xyXG4gIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyay1ibGFjaztcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgfVxyXG5cclxuICBoMSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYub3VyLXN0b3J5IHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XHJcblxyXG4gICAgLmhlYWRpbmcge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmxhY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLmZyb250LXdyYXBwZXIge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgfVxyXG5cclxuICAmLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICB9XHJcblxyXG4gICYud2hhdC13ZS1kby13cmFwcGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgfVxyXG5cclxuICAmLnBpcGVsaW5lIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmdyaWQtYWNjb3JkaW9uLXdyYXBwZXIge1xyXG4gIC5iaWctYmFja2dyb3VuZC1pbWFnZSB7XHJcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICB9XHJcbn1cclxuXHJcbi5ib3JkZXItYm90dG9tLWJsYWNrIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstYmxhY2sgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJvcmRlci10b3AtYmxhY2sge1xyXG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZGFyay1ibGFjayAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vL1NlbGVjdCBEcm9wIERvd25cclxuLnN1Ym1pdC1jYXRlZ29yeSB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHJpZ2h0OiAxNXB4O1xyXG4gIHRvcDogNXB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibGFjaztcclxuICB6LWluZGV4OiA1O1xyXG4gIGNvbG9yOiAkZ3JheTtcclxufVxyXG5cclxuLnN1Ym1pdC1jYXRlZ29yeTphZnRlciB7XHJcbiAgY29udGVudDogJyc7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxuICByaWdodDogLTEzcHg7XHJcbiAgdG9wOiA1cHg7XHJcbiAgLy8gaGVpZ2h0OiAxNXB4O1xyXG4gIC8vIHBhZGRpbmc6IDE1cHggMHB4IDE1cHggOHB4O1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmxhY2s7XHJcbiAgYm9yZGVyOiBzb2xpZCAkZ3JheTtcclxuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBwYWRkaW5nOiA0cHg7XHJcbiAgQGluY2x1ZGUgcm90YXRlKC00NSk7XHJcbn1cclxuLyogSUUxMSBoaWRlIG5hdGl2ZSBidXR0b24gKHRoYW5rcyBNYXR0ISkgKi9cclxuc2VsZWN0OjotbXMtZXhwYW5kIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uc2VsZWN0LWRpdiBzZWxlY3Qge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgYXBwZWFyYW5jZTogbm9uZTtcclxufVxyXG5cclxuLmQtaW5saW5le1xyXG4gICAgZGlzcGxheTogaW5saW5lO1xyXG59XHJcblxyXG4vL1JldmVhbFxyXG4uY2xvc2UtYnV0dG9uIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdG9wOiAwO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC1mYW1pbHk6IENvdXJpZXIsc2Fucy1zZXJpZjtcclxuICBmb250LXNpemU6IDU1cHg7XHJcblxyXG4gICY6aG92ZXIsICY6YWN0aXZlIHtcclxuICAgIGNvbG9yOiAkZ3JlZW47XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgZm9udC1zaXplOiA3MHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICB0b3A6IDEwcHg7XHJcbiAgICAgIHJpZ2h0OiAzMHB4O1xyXG4gIH1cclxufVxyXG5cclxuLnJldmVhbCB7XHJcbiAgbWF4LXdpZHRoOiAyNjBweDtcclxuICBtYXJnaW46IDAgYXV0bztcclxuICAvL21heC1oZWlnaHQ6IDQ1MHB4O1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtaW4taGVpZ2h0OiBhdXRvO1xyXG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgdG9wOiA1MCU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcblxyXG5cclxuICAuYmxvY2stdmlkZW8ge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KDQ1MCl7XHJcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIC8vICAgIHdpZHRoOiA5MCU7XHJcbiAgICBtYXgtd2lkdGg6IDUxMHB4O1xyXG4gICAgd2lkdGg6IDUxMHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDgwcHg7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIC8vICAgIHdpZHRoOiA5MCU7XHJcbiAgICBtYXgtd2lkdGg6IDY1MHB4O1xyXG4gICAgd2lkdGg6IDY1MHB4O1xyXG4gICAgcGFkZGluZy10b3A6IDEwMHB4O1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgbWF4LXdpZHRoOiA3NzBweDtcclxuICAgIHdpZHRoOiA3NzBweDtcclxuICAgIHBhZGRpbmctdG9wOiAxMDBweDtcclxuICB9XHJcbn1cclxuXHJcbi8vR3JpZCBjdXN0b21pemF0aW9uXHJcbi5ncmlkLWNvbnRhaW5lciAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteCA+IC5jZWxsIHtcclxuICBwYWRkaW5nLXJpZ2h0OiAzcHg7XHJcbiAgcGFkZGluZy1sZWZ0OiAzcHg7XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAmLnNtYWxsLTYge1xyXG4gICAgICAmOm50aC1jaGlsZCgxKSxcclxuICAgICAgJjpudGgtY2hpbGQoMm4rMSkge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgfVxyXG5cclxuICAgICAgJjpudGgtY2hpbGQoMm4pIHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAmLm1lZGl1bS00IHtcclxuICAgICAgJjpudGgtY2hpbGQoMSksXHJcbiAgICAgICY6bnRoLWNoaWxkKDNuKzEpIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6bnRoLWNoaWxkKDNuKSB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAuZ3JpZC1jb250YWluZXIgPiAuZ3JpZC14Lm5hcnJvdy1ncmlkLXBhZGRpbmcteC1tZWRpdW0tdXAgPiAuY2VsbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcclxuXHJcbiAgfVxyXG5cclxuICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbC5uby1wYWRkaW5nLXgtbWVkaXVtLXVwIHtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDA7XHJcbiAgfVxyXG59XHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAuZ3JpZC1jb250YWluZXIgLmdyaWQteC5uYXJyb3ctZ3JpZC1wYWRkaW5nLXgtbGFyZ2UtdXAgPiAuY2VsbCB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcHg7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcclxuICAgICY6bm90KC5uby1wYWRkaW5nKSB7XHJcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5ncmlkLXBhZGRpbmcteCA+IC5jZWxsLm5vLXBhZGRpbmctcmlnaHQtc21hbGwtb25seSB7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwubm8tcGFkZGluZy1sZWZ0LXNtYWxsLW9ubHkge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuLmdyaWQtcGFkZGluZy14ID4gLmNlbGwubm8tcGFkZGluZy14IHtcclxuICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gIHBhZGRpbmctbGVmdDogMDtcclxufVxyXG5cclxuLm5vLW1hcmdpbi10b3AjZmxleGlibGUtY29udGVudC0wIHtcclxuICBtYXJnaW4tdG9wOiAwO1xyXG59XHJcblxyXG4uaGlkZGVuIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5ib2R5IHtcclxuICBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBuby1jb21tb24tbGlnYXR1cmVzO1xyXG59XHJcblxyXG4ubW9kYWwtY2xvc2UtYnV0dG9ue1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0b3A6IC01cHg7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgZm9udC1zaXplOiAyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgcGFkZGluZzogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgY29sb3I6ICR3aGl0ZTtcclxufVxyXG5cclxuI3ZpZGVvLW1vZGFsIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXI6IG5vbmU7XHJcbiAgcGFkZGluZzogMjVweCAwIDA7XHJcbiAgd2lkdGg6IGF1dG87XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcbiAgdG9wOiA1MCUgIWltcG9ydGFudDtcclxuICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gIC52aWRlby1wbGF5LWJ0bntcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDUwJTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgfVxyXG4gICY6Zm9jdXMge1xyXG4gICAgb3V0bGluZTogMDtcclxuICB9XHJcbiAgI3ZpZGVvLXBsYWNlaG9sZGVyIHtcclxuICAgIGhlaWdodDogMzV2aDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIGhlaWdodDogNzB2aDtcclxuICAgIH1cclxuICAgICN2YXNhLXZpZGVvIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLC01MCUpO1xyXG4gICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICBoZWlnaHQ6YXV0bztcclxuICAgICAgbWF4LWhlaWdodDoxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWF4LXdpZHRoOiA5NzBweDtcclxuICAgIGhlaWdodDogYXV0bztcclxuICB9XHJcbn1cclxuXHJcbi5wZWctY2FwaXRhbC1wYXJ0bmVycywgLnBlZy1kZXZlbG9wbWVudCwgLnBlZy1jb25zdHJ1Y3Rpb24sIC5wZWctcHJvcGVydHktZ3JvdXAge1xyXG4gIGgxIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuICAgIC5pbmZvLWJhbm5lciB7XHJcbiAgICAgIC5pbmZvLWJhbm5lci1wYXJhZ3JhcGggLnRleHQtbGVmdCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgIH1cclxuICAgICAgLmNvbnRhaW5lciAuY29sdW1uLXR3byAubG9nbyB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIG1heC13aWR0aDogMjUwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlcyBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBwcm90b3R5cGUtcm90YXRlXG4vLy8vXG5cbi8vLyBSb3RhdGUgTWl4aW46IFJvdGF0ZSBhbiBlbGVtZW50IHRvIGEgY2VydGFpbiBkZWdcbi8vLyBAcGFyYW0ge051bWJlcn0gJGRlZ1tdIERlZ3JlZSBvZiByb3RhdGlvblxuQG1peGluIHJvdGF0ZSgkZGVnKSB7XG5cdHRyYW5zZm9ybTpyb3RhdGUoJGRlZyArIGRlZyk7XG59XG5cbi8vLyBSb3RhdGVYIE1peGluOiBSb3RhdGUgYW4gZWxlbWVudCB0byBhIGNlcnRhaW4gZGVnIG9uIFgtQXhpc1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZGVnW10gRGVncmVlIG9mIHJvdGF0aW9uXG5AbWl4aW4gcm90YXRlWCgkZGVnKSB7XG5cdHRyYW5zZm9ybTpyb3RhdGVYKCRkZWcgKyBkZWcpO1xufVxuXG4vLy8gUm90YXRlWSBNaXhpbjogUm90YXRlIGFuIGVsZW1lbnQgdG8gYSBjZXJ0YWluIGRlZyBvbiBZLUF4aXNcbi8vLyBAcGFyYW0ge051bWJlcn0gJGRlZ1tdIERlZ3JlZSBvZiByb3RhdGlvblxuQG1peGluIHJvdGF0ZVkoJGRlZykge1xuXHR0cmFuc2Zvcm06cm90YXRlWSgkZGVnICsgZGVnKTtcbn1cblxuLy8vIFJvdGF0ZVogTWl4aW46IFJvdGF0ZSBhbiBlbGVtZW50IHRvIGEgY2VydGFpbiBkZWcgb24gWi1BeGlzXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRkZWdbXSBEZWdyZWUgb2Ygcm90YXRpb25cbkBtaXhpbiByb3RhdGVaKCRkZWcpIHtcblx0dHJhbnNmb3JtOnJvdGF0ZVooJGRlZyArIGRlZyk7XG59IiwiLy8gTmF2aWdhdGlvbiBicmVha3BvaW50c1xyXG5cclxuLm1vYmlsZS1tZW51LFxyXG4uc2l0ZS10aXRsZS1iYXIge1xyXG4gIEBpbmNsdWRlIGhpZGUtZm9yKHhsYXJnZSk7XHJcbn1cclxuLy9cclxuXHJcbi5kZXNrdG9wLW1lbnUsXHJcbi5zaXRlLW5hdmlnYXRpb24gLnRvcC1iYXItbGVmdCB7XHJcbiAgQGluY2x1ZGUgc2hvdy1mb3IoeGxhcmdlKTtcclxufVxyXG4vLyBTaXRlIHRpdGxlXHJcblxyXG4uc2l0ZS1kZXNrdG9wLXRpdGxlIGEge1xyXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcbi8vIFdQIHBvc3QgbmF2aWdhdGlvblxyXG5cclxuLnBvc3QtbmF2aWdhdGlvbiB7XHJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XHJcbn1cclxuXHJcbi5uYXYtcHJldmlvdXMge1xyXG4gIGZsb2F0OiBsZWZ0O1xyXG59XHJcblxyXG4ubmF2LW5leHQge1xyXG4gIGZsb2F0OiByaWdodDtcclxufVxyXG5cclxuLnNpdGUtaGVhZGVyIHtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcmstYmxhY2s7XHJcblxyXG4gIC50aXRsZS1iYXItdGl0bGUsXHJcbiAgLnRvcC1iYXItdGl0bGUge1xyXG4gICAgICBhe1xyXG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgIGltZyB7XHJcbiAgICAgIHdpZHRoOiAxNDJweDtcclxuICAgICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMTZweDtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vVG9wIEJhciAtIFhsYXJnZSBzY3JlZW5zXHJcbiAgLnRvcC1iYXIge1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gICAgcGFkZGluZzogMDtcclxuXHJcbiAgICAubWVudS1pdGVtIHtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgbWFyZ2luOiA1MnB4IDAgMjZweCA0MHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuXHJcbiAgICAgIGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgLy9wYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgfVxyXG4gICAgICAvL1hsYXJnZSAtIFRyYW5zaXRpb24gbGVmdCB0byByaWdodCBib3JkZXIgYm90dG9tIGxpbmVcclxuICAgICAgLy9zdWJtZW51IHBhcmVudCBpdGVtc1xyXG4gICAgICAmLm1lbnUtaXRlbS1oYXMtY2hpbGRyZW57XHJcbiAgICAgICAgPiBhOmFmdGVyIHtcclxuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgICAgcGFkZGluZzogMDtcclxuICAgICAgICAgIG1hcmdpbjogMDtcclxuICAgICAgICAgIHRyYW5zaXRpb246IDFzIGVhc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC8vUmVtb3ZlcyB0cmFuc2l0aW9uIGZyb20gY3VycmVudCBpdGVtIHBhcmVudFxyXG4gICAgICAgICYuY3VycmVudC1tZW51LWFuY2VzdG9yID4gYTphZnRlcntcclxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmN1cnJlbnRfcGFnZV9pdGVtID4gYTphZnRlcntcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvL1N1Ym1lbnUgY2hpbGRyZW4gaXRlbXNcclxuICAgICAgYTphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMXMgZWFzZTtcclxuICAgICAgICB0cmFuc2l0aW9uOiAxcyBlYXNlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgICAgfVxyXG5cclxuICAgIC8vICAmLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGE6YWZ0ZXIsXHJcbiAgICAgIC8vICYuY3VycmVudC1tZW51LWl0ZW0gPiBhOmFmdGVye1xyXG4gICAgICAvLyAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgICAgIC8vIH1cclxuXHJcbiAgICAgICYuY3VycmVudC1tZW51LWl0ZW0gYTphZnRlcntcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgICAmLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlcntcclxuICAgICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgYTpob3ZlcntcclxuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfS8vZW5kIG1lbnUtaXRlbVxyXG5cclxuICAgIC5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcclxuICAgICAgdG9wOiBjYWxjKDEwMCUgKyAyOHB4KTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IGF1dG87XHJcbiAgICAgIGJvcmRlcjogMDtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmxhY2s7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxMnB4O1xyXG4gICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICB6LWluZGV4OiA1MDA7XHJcblxyXG4gICAgICAubWVudS1pdGVtIHtcclxuICAgICAgICBtYXJnaW46IDAgMTI5cHggMTJweCAxOXB4O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyM3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vVGl0bGUgQmFyIC0gTGFyZ2UgYW5kIHNtYWxsZXJcclxuICAudGl0bGUtYmFyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG5cclxuICAgIC5tZW51LWljb24ge1xyXG4gICAgICBtYXJnaW4tdG9wOiAzN3B4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xyXG4gICAgICBmbG9hdDogcmlnaHQ7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMnB4O1xyXG5cclxuICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgLy9jaGFuZ2VzIHByb3BlcnRpZXMgb2YgbWVudSBpY29uXHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCAxMXB4IDAgJGdyZWVuLCAwIDIycHggMCAkZ3JlZW47XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMXB4IDAgJGdyZWVuLCAwIDIycHggMCAkZ3JlZW47XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICB3aWR0aDogMzJweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLm1vYmlsZS1vZmYtY2FudmFzLW1lbnUge1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBsZXR0ZXItc3BhY2luZzogMnB4O1xyXG4gIGxpe1xyXG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG59XHJcbiAgLmNsb3NlLWJ1dHRvbiB7XHJcbiAgICBjb2xvcjogJGdyZWVuO1xyXG4gICAgZm9udC1zaXplOiA1MHB4O1xyXG4gIH1cclxuXHJcbiAgLm1lbnUge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuXHJcbiAgICBhIHtcclxuICAgICAgbGVmdDogNXB4O1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuICAgIC8vVHJhbnNpdGlvblxyXG4gICAgYTphZnRlciB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDIwcHg7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IDFzIGVhc2U7XHJcbiAgICAgIHRyYW5zaXRpb246IDFzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLmN1cnJlbnQtbWVudS1hbmNlc3RvciA+IGE6YWZ0ZXIsXHJcbiAgICAuY3VycmVudC1tZW51LWl0ZW0gPiBhOmFmdGVye1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICBhOmhvdmVyOmFmdGVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgbGkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuaXMtYWN0aXZlID4gYSB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgLy8gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICB9XHJcblxyXG4gICAgLm5lc3RlZCB7XHJcbiAgICAgIG1hcmdpbjogMTVweCAwIDA7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ibGFjaztcclxuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdWJtZW51LXRvZ2dsZSB7XHJcbiAgICB0b3A6IC0xMHB4O1xyXG4gICAgcmlnaHQ6IDEwcHg7XHJcblxyXG4gICAgJjphZnRlciB7XHJcbiAgICAgIC8vY2hhbmdlIGFycm93IGFwcGVyYW5jZVxyXG4gICAgICBib3JkZXI6IHNvbGlkICRncmF5O1xyXG4gICAgICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAwO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgIHBhZGRpbmc6IDVweDtcclxuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXTphZnRlciB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcclxuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XHJcbiAgICBtYXJnaW4tdG9wOiAxMXB4O1xyXG4gIH1cclxufVxyXG5cclxuLmNsb3NlLWJ1dHRvbiB7XHJcbiAgY29sb3I6ICRncmVlbjtcclxufVxyXG4iLCIubWFpbi1jb250YWluZXIge1xyXG4gIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyO1xyXG59XHJcblxyXG4ubWFpbi1ncmlkIHtcclxuICBAaW5jbHVkZSB4eS1ncmlkKCk7XHJcbiAgbWFyZ2luLXRvcDogMXJlbTtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1hcmdpbi10b3A6IDNyZW07XHJcbiAgfVxyXG4gIGgyIGF7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgfVxyXG5cclxuICAmLnNpZGViYXItbGVmdCB7XHJcbiAgICAvLyBQbGFjZSB0aGUgc2lkZWJhciBiZWxvdyBtYWluIGNvbnRlbnQgb24gc21hbGwgc2NyZWVucyAuLi5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcclxuICAgICAgLm1haW4tY29udGVudCB7IG9yZGVyOiAxOyB9XHJcbiAgICAgIC5zaWRlYmFyIHsgb3JkZXI6IDI7IH1cclxuICAgIH1cclxuXHJcbiAgICAvLyAuLi4gYW5kIHRvIHRoZSBsZWZ0IG9uIG1lZGl1bS11cCBzY3JlZW5zLCB3aGVuIHVzaW5nIHRoZSBzaWRlYmFyLWxlZnQgdGVtcGxhdGVcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIC5tYWluLWNvbnRlbnQgeyBvcmRlcjogMjsgfVxyXG4gICAgICAuc2lkZWJhciB7IG9yZGVyOiAxOyB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBGdWxsIHdpZHRoIHRlbXBsYXRlXHJcbiAgLm1haW4tY29udGVudC1mdWxsLXdpZHRoIHtcclxuICAgIEBpbmNsdWRlIHh5LWNlbGwoMTIpO1xyXG4gIH1cclxuXHJcbiAgLy8gRGVmYXVsdCB0ZW1wbGF0ZVxyXG4gIC5tYWluLWNvbnRlbnQge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnNpZGViYXIge1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xyXG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDEyKTtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBAaW5jbHVkZSB4eS1jZWxsKDQpO1xyXG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xyXG4gICAgfVxyXG5cclxuICB9XHJcbn1cclxuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuRm9vdGVyIFNlY3Rpb25cclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmZvb3Rlci1jb250YWluZXIge1xyXG4gIG1hcmdpbjogMCBhdXRvIDE1cHg7XHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmVlbjtcclxuICBwYWRkaW5nLXRvcDogMjBweDtcclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAwO1xyXG4gICAgfVxyXG5cclxuXHJcbmEsXHJcbmE6YWN0aXZlLFxyXG5hOmxpbmssXHJcbmE6dmlzaXRlZCB7XHJcbiAgICBjb2xvcjogJHdoaXRlO1xyXG59XHJcbi5mb290ZXItY29udGVudHN7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxufVxyXG4ubmFtZS1zbG9nb257XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBsaW5lLWhlaWdodDogMThweDtcclxuICAgIC5uYW1le1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnNsb2dhbnN7XHJcbiAgICAgICAgLnNsb2dhbntcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLm5hbWUtYnJlYWstc21hbGx7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JlZW47XHJcbiAgICAgICAgd2lkdGg6IDE1cHg7XHJcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcclxuICAgIH1cclxuXHJcbn1cclxuLnNvY2lhbC1pY29uc3tcclxuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAuaWNvbntcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjhyZW07XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICBwYWRkaW5nLXRvcDogMjVweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDI1cHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgLmljb257XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuLnBob25le1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG59XHJcbi5jb3B5cmlnaHR7XHJcbiAgICBwYWRkaW5nLXRvcDogMzBweDtcclxuICAgIGZvbnQtc2l6ZTogMTBweDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xyXG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMDtcclxuICAgIH1cclxufVxyXG5cclxuLmNvbnRhY3R7XHJcbiAgICBwe1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKVxyXG4gICAge1xyXG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgfVxyXG59XHJcbn1cclxuIiwiYm9keSN0aW55bWNle1xyXG4gIGhlaWdodDogYXV0bzsgLy8gRml4IGVkaXRvciBzdHlsZSBidWdcclxuICBtYXgtd2lkdGg6ICRncmlkLXJvdy13aWR0aDsgLy8gR2l2ZSB0aGUgZWRpdG9yIGEgbWF4LXdpZHRoXHJcbiAgcGFkZGluZzogcmVtLWNhbGMoMjApICFpbXBvcnRhbnQ7XHJcbn0iLCJcclxuLmJ0biB7XHJcbiAgICBwYWRkaW5nOiAxNnB4IDI4cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgJi5idG4td2hpdGUtb3V0bGluZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgYSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgY29sb3I6ICRkYXJrLWJsYWNrO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuYnRuLXdoaXRlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgY29sb3I6ICRkYXJrLWJsYWNrO1xyXG4gICAgICAgIGEge1xyXG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLXdoaXRlO1xyXG4gICAgICAgICAgICBjb2xvcjogJGRhcmstYmxhY2s7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG59XHJcbiIsIkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgLmhlcm8td3JhcHBlcntcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlZC1oZXJvIHtcclxuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIGhlaWdodDogYXV0bztcclxuICBpbWd7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgfVxyXG4gIC8vIGhlaWdodDogNjB2dztcclxuICAvLyBcclxuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gIC8vICAgaGVpZ2h0OiA2MHZ3O1xyXG4gIC8vIH1cclxuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgLy8gICBoZWlnaHQ6IDYwMHB4O1xyXG4gIC8vIH1cclxuICAvLyBcclxuICAvLyBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gIC8vICAgaGVpZ2h0OiA3ODdweDtcclxuICAvLyB9XHJcbn1cclxuXHJcblxyXG4uZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbiB7XHJcbiAgLmhlYWRlci1zZWN0aW9uIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiAgICBwYWRkaW5nOiA0MHB4IDA7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgei1pbmRleDogMjU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGgyIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgLnBvc3QtbWV0YS1zZWN0aW9uIHtcclxuICAgICAgY29sb3I6ICRncmF5O1xyXG5cclxuICAgICAgPiBzcGFuIHtcclxuICAgICAgICBtYXJnaW46IDAgMTBweDtcclxuXHJcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblxyXG4gICAgLmhlYWRlci1zZWN0aW9uIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgYm90dG9tOiA0MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgaDJ7XHJcbiAgICAgICAgZm9udC1zaXplOiA1MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1NHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5wb3N0LW1ldGEtc2VjdGlvbntcclxuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcbiAgICAgIC5oZWFkZXItc2VjdGlvbiB7XHJcbiAgICAgICAgICBoMntcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNjhweDtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgLmhlYWRlci1zZWN0aW9uIHtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsImgxLFxyXG5oMixcclxuaDMsXHJcbmg0LCAuaDEge1xyXG4gIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFsbGJhY2s7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAud2YtYWN0aXZlICYge1xyXG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XHJcbiAgfVxyXG59XHJcblxyXG5oMyxcclxuaDUge1xyXG4gIGZvbnQtZmFtaWx5OiAkaGVhZGVyLXNlY29uZGFyeS1mb250LWZhbGxiYWNrO1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcblxyXG4gIC53Zi1hY3RpdmUgJiB7XHJcbiAgICBmb250LWZhbWlseTogJGhlYWRlci1zZWNvbmRhcnktZm9udC1mYW1pbHk7XHJcbiAgfVxyXG59XHJcblxyXG5oMSwgLmgxIHtcclxuICBmb250LXNpemU6IDM1cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XHJcblxyXG4gIC53Zi1hY3RpdmUgJiB7XHJcbiAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5oMiB7XHJcbiAgZm9udC1zaXplOiAyNHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG5cclxuICAud2YtYWN0aXZlICYge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gIH1cclxufVxyXG5cclxuaDMge1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBsaW5lLWhlaWdodDogMzBweDtcclxuXHJcbiAgLndmLWFjdGl2ZSAmIHtcclxuICAgIGZvbnQtc2l6ZTogMjJweDtcclxuICB9XHJcbn1cclxuXHJcbmg0IHtcclxuICBmb250LXNpemU6IDIwcHg7XHJcbiAgbGluZS1oZWlnaHQ6IDIycHg7XHJcblxyXG4gIC53Zi1hY3RpdmUgJiB7XHJcbiAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG5oNSB7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG5cclxuICAud2YtYWN0aXZlICYge1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG4gIH1cclxufVxyXG5cclxuaDYge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBsaW5lLWhlaWdodDogMThweDtcclxuXHJcbiAgLndmLWFjdGl2ZSAmIHtcclxuICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICB9XHJcbn1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICBoMSwgLmgxIHtcclxuICAgIGZvbnQtc2l6ZTogNTFweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA1MnB4O1xyXG5cclxuICAgIC53Zi1hY3RpdmUgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNDhweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA0MnB4O1xyXG5cclxuICAgIC53Zi1hY3RpdmUgJiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMzZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGgzIHtcclxuICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG5cclxuICAgIC53Zi1hY3RpdmUgJiB7XHJcbiAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLXNlY29uZGFyeS1mb250LWZhbWlseTtcclxuICAgICAgZm9udC1zaXplOiAzNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDQge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XHJcblxyXG4gICAgLndmLWFjdGl2ZSAmIHtcclxuICAgICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDUge1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XHJcblxyXG4gICAgLndmLWFjdGl2ZSAmIHtcclxuICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDYge1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcblxyXG4gICAgLndmLWFjdGl2ZSAmIHtcclxuICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxucCB7XHJcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFsbGJhY2s7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxuICBsaW5lLWhlaWdodDogMjBweDtcclxuXHJcbiAgLndmLWFjdGl2ZSAmIHtcclxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcclxuICB9XHJcbn1cclxuIiwiLy8gQXBwbHkgb3V0bGluZSBzdHlsZXMgb25seSB3aGVuIGlucHV0IG1ldGhvZCBpcyBrZXlib2FyZFxyXG4vLyByZW1vdmUgOmZvY3VzIHN0eWxlIHZpYSBXaGF0IElucHV0IHVzaW5nIHByb2dyZXNzaXZlIGVuaGFuY2VtZW50XHJcbi8vIHNvIDpmb2N1cyBpc24ndCBsZWZ0IGJyb2tlbiBpZiBKYXZhU2NyaXB0IGZhaWxzXHJcblxyXG5bZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSBhOmZvY3VzLCBidXR0b246Zm9jdXNcclxuW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0gYTpmb2N1cywgYnV0dG9uOmZvY3VzIHtcclxuICBvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5cclxuYSxcclxuYTphY3RpdmUsXHJcbmE6Zm9jdXMsXHJcbmE6bGluayxcclxuYTp2aXNpdGVkIHtcclxuICBjb2xvcjogJGdyYXk7XHJcbn1cclxuXHJcbmFbdGFyZ2V0PV9ibGFua10ge1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbn1cclxuXHJcbmEubGluay13aGl0ZSxcclxuYS5saW5rLXdoaXRlOmFjdGl2ZSxcclxuYS5saW5rLXdoaXRlOmZvY3VzLFxyXG5hLmxpbmstd2hpdGU6bGluayxcclxuYS5saW5rLXdoaXRlOnZpc2l0ZWQge1xyXG4gIGNvbG9yOiAkd2hpdGU7XHJcbn1cclxuIiwiLyphbmltYXRpb24gZWxlbWVudCovXHJcbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XHJcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xyXG4gIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcclxuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XHJcbn1cclxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24xLCAkdHJhbnNpdGlvbjI6bnVsbCkge1xyXG4gIC1tb3otdHJhbnNpdGlvbjogJHRyYW5zaXRpb24xLCAkdHJhbnNpdGlvbjI7XHJcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjEsICR0cmFuc2l0aW9uMjtcclxuICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjEsICR0cmFuc2l0aW9uMjtcclxuICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjEsICR0cmFuc2l0aW9uMjtcclxufVxyXG5cclxuLmFuaW1hdGlvbi1lbGVtZW50LFxyXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgLy9TbGlkZSBJblxyXG4gICYuc2xpZGUtZG93bixcclxuICAmLnNsaWRlLWxlZnQsXHJcbiAgJi5zbGlkZS1yaWdodCxcclxuICAmLnNsaWRlLXVwIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjhzIGxpbmVhciwgb3BhY2l0eSAxcyBlYXNlLWluLW91dCk7XHJcblxyXG4gICAgJi5pbi12aWV3IHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vdXQtb2YtdmlldyB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuc2xpZGUtdXAsXHJcbiAgJi5zbGlkZS11cC5vdXQtb2YtdmlldyB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCA3MHB4LCAwKTtcclxuICB9XHJcblxyXG4gICYuc2xpZGUtcmlnaHQsXHJcbiAgJi5zbGlkZS1yaWdodC5vdXQtb2YtdmlldyB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtNzBweCwgMCwgMCk7XHJcbiAgfVxyXG5cclxuICAmLnNsaWRlLWxlZnQsXHJcbiAgJi5zbGlkZS1sZWZ0Lm91dC1vZi12aWV3IHtcclxuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDcwcHgsIDAsIDApO1xyXG4gIH1cclxuXHJcbiAgJi5zbGlkZS1kb3duLFxyXG4gICYuc2xpZGUtZG93bi5vdXQtb2YtdmlldyB7XHJcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwLCAtNzBweCwgMCk7XHJcbiAgfVxyXG5cclxuICAvL0ZhZGUgSW5cclxuICAmLmZhZGUtaW4ge1xyXG4gICAgLmNhdC1pdGVtIHtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmLmFzLW9uZSxcclxuICAgIC5yaXBwbGUtZWxlbWVudCB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ob3BhY2l0eSAxcyBlYXNlLWluLW91dCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgICYuYXMtb25lLFxyXG4gICAgJi5pbi12aWV3IHtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICAmLm91dC1vZi12aWV3IHtcclxuICAgICAgJi5hcy1vbmUge1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYucmlwcGxlIHtcclxuICAgICAgICAucmlwcGxlLWVsZW1lbnQge1xyXG4gICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IG5vbmU7XHJcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgMC41cyBlYXNlLWluLW91dCk7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgJi5saW5lLXNsaWRlLXRvcC1kb3duIHtcclxuICAgICY6YmVmb3JlIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgdG9wOiAwO1xyXG4gICAgICBoZWlnaHQ6IDA7XHJcbiAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgIGFuaW1hdGlvbjogZ3JvdyAycyAwLjVzIDEgZm9yd2FyZHM7XHJcbiAgICB9XHJcbiAgICAvL3NpemVzXHJcbiAgICAmLmFsbDpiZWZvcmUge1xyXG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgIH1cclxuXHJcbiAgICAmLnNtYWxsOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5tZWRpdW06YmVmb3JlIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5sYXJnZTpiZWZvcmUge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIG9ubHkpIHtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYueGxhcmdlOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlIG9ubHkpIHtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYub3V0LW9mLXZpZXc6YmVmb3JlIHtcclxuICAgICAgYW5pbWF0aW9uOiByZXZlcnNlLWdyb3cgMXMgMSBmb3J3YXJkcztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5saW5lLXNsaWRlLW1pZGRsZS1vdXQtaG92ZXIge1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgfVxyXG5cclxuICAuaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQ6aG92ZXIge1xyXG4gICAgLmxpbmUtc2xpZGUtbWlkZGxlLW91dC1ob3ZlciB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcclxuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogMHM7XHJcbiAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHdpZGVuLTUwO1xyXG5cclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgICB3aWR0aDogMDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuc3BlY2lhbGl0eS1jYXJkOmhvdmVyIHtcclxuICAgIC5ncmFkaWVudC1ob3ZlciB7XHJcbiAgICAgIGFuaW1hdGlvbi1uYW1lOiBmYWRlLWdyYWRpZW50LWluO1xyXG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNXM7XHJcbiAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XHJcbiAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGZvcndhcmRzO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGtleWZyYW1lcyBtb3ZlLWdyYWRpZW50IHtcclxuICAgIGZyb20ge1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICB0b3A6IC04MCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAa2V5ZnJhbWVzIGZhZGUtZ3JhZGllbnQtaW4ge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy9AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xyXG5cclxuICAmLmxpbmUtc2xpZGUtbWlkZGxlLW91dCB7XHJcbiAgICAmOmJlZm9yZSB7XHJcbiAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIGxlZnQ6IDA7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XHJcbiAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XHJcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4ycztcclxuICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogZm9yd2FyZHM7XHJcbiAgICB9XHJcblxyXG4gICAgJi5ob3Jpem9udGFsOmJlZm9yZSB7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICBoZWlnaHQ6IDFweDtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICAvLyAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgYW5pbWF0aW9uLW5hbWU6IHdpZGVuO1xyXG4gICAgfVxyXG5cclxuICAgICYudmVydGljYWw6YmVmb3JlIHtcclxuICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICBib3R0b206IDA7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgd2lkdGg6IDFweDtcclxuICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgYW5pbWF0aW9uLW5hbWU6IGdyb3c7XHJcbiAgICB9XHJcblxyXG4gICAgLy9yaXBwbGVzIHRoZSBsaW5lIGRyYXduIGRvd25cclxuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggNCB7XHJcbiAgICAgICYjcmlwcGxlLWVsZW1lbnQtI3skaX06YmVmb3JlIHtcclxuICAgICAgICBhbmltYXRpb24tZGVsYXk6IDAuM3MgKiAkaTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy9yZW1vdmVzIGZpcnN0IGxpbmVcclxuICAgICYucmlwcGxlLWVsZW1lbnQ6Zmlyc3QtY2hpbGQ6YmVmb3JlIHtcclxuICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJi5vdXQtb2YtdmlldzpiZWZvcmUge1xyXG4gICAgICBhbmltYXRpb246IHJldmVyc2Utd2lkZW4gMXMgMSBmb3J3YXJkcztcclxuICAgIH1cclxuXHJcbiAgICAmLmFsbCB7XHJcbiAgICAgICYuaG9yaXpvbnRhbDpiZWZvcmUge1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICYudmVydGljYWw6YmVmb3JlIHtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuc21hbGwge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAmLmhvcml6b250YWw6YmVmb3JlIHtcclxuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLnZlcnRpY2FsOmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgJi5tZWRpdW0ge1xyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICAgJi5ob3Jpem9udGFsOmJlZm9yZSB7XHJcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi52ZXJ0aWNhbDpiZWZvcmUge1xyXG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5sYXJnZSB7XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Ugb25seSkge1xyXG4gICAgICAgICYuaG9yaXpvbnRhbDpiZWZvcmUge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYudmVydGljYWw6YmVmb3JlIHtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYueGxhcmdlIHtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Ugb25seSkge1xyXG4gICAgICAgICYuaG9yaXpvbnRhbDpiZWZvcmUge1xyXG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYudmVydGljYWw6YmVmb3JlIHtcclxuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGdyZWVuO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgICYubGluZS1zbGlkZS1taWRkbGUtb3V0e1xyXG4gICAgICAmLnZlcnRpY2FsOmJlZm9yZSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgIH0gXHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vfVxyXG5cclxuICBAa2V5ZnJhbWVzIGdyb3cge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyB3aWRlbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgd2lkdGg6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgdG8ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyByZXZlcnNlLWdyb3cge1xyXG4gICAgZnJvbSB7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgIGhlaWdodDogMDtcclxuICAgIH1cclxuICB9XHJcbiAgQGtleWZyYW1lcyByZXZlcnNlLXdpZGVuIHtcclxuICAgIGZyb20ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICB0byB7XHJcbiAgICAgIHdpZHRoOiAwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn1cclxuLy9hbmltYXRpb24gZWxlbWVudFxyXG5cclxuLnNwZWNpYWxpdHktY2FyZDpob3ZlciB7XHJcbiAgLmxpbmUtc2xpZGUtbGVmdC1yaWdodCB7XHJcbiAgICBhbmltYXRpb24tbmFtZTogd2lkZW4tNTA7XHJcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAxcztcclxuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDE7XHJcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxuICB9XHJcblxyXG59XHJcbkBrZXlmcmFtZXMgd2lkZW4tNTAge1xyXG4gIGZyb20ge1xyXG4gICAgd2lkdGg6IDA7XHJcbiAgfVxyXG5cclxuICB0byB7XHJcbiAgICB3aWR0aDogNTBweDtcclxuICB9XHJcbn1cclxuXHJcbi8vSG92ZXIgdW5kZXJsaW5lXHJcbi5ob3Zlci11bmRlcmxpbmUtdGV4dCB7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cclxuICAmOmFmdGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICB3aWR0aDogMDtcclxuICAgIGhlaWdodDogNHB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHRyYW5zaXRpb246IDAuNXMgd2lkdGg7XHJcbiAgfVxyXG5cclxuICAmLmdyYXk6YWZ0ZXIge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xyXG4gIH1cclxuICAmLndoaXRlOmFmdGVyIHtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgfVxyXG5cclxuICAmOmhvdmVyIHtcclxuICAgICY6YWZ0ZXIge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICYuYmFja3dhcmQ6aG92ZXI6YWZ0ZXIge1xyXG4gICAgd2lkdGg6IDYwJTtcclxuICB9XHJcbn1cclxuXHJcbi8vVG9wIG92ZXJsYXlcclxuLnRvcC1vdmVybGF5LWFuaW1hdGlvbiB7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICB0b3A6IDA7XHJcbiAgbGVmdDogMDtcclxuICB6LWluZGV4OiAyMDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4gIG9wYWNpdHk6IDE7XHJcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGU7XHJcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcclxuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xyXG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcclxuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcclxufVxyXG5Aa2V5ZnJhbWVzIGZhZGUge1xyXG4gIGZyb20ge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICB9XHJcblxyXG4gIHRvIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG59XHJcblxyXG4ub3ZlcmxheS1hbmltYXRlIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgei1pbmRleDogMTAwO1xyXG59XHJcblxyXG4uaG92ZXItc3RhdGUge1xyXG4gICYuZmFkZS1pbiB7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uaG92ZXItYW5pbWF0aW9uLWVsZW1lbnQuZmFkZS1pbi5hcy1vbmV7XHJcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAuNXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuIiwiLy8tLS0tLVNpZGViYXItLS0tLS0tLS0vL1xyXG4uc2VhcmNoZm9ybS1zbWFsbCxcclxuLnNpZGViYXIge1xyXG4gICNzZWFyY2hmb3JtIHtcclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmlucHV0LWdyb3VwLWZpZWxkIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgIGNvbG9yOiAkZ3JheTtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMCAyNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgI3NlYXJjaHN1Ym1pdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiAkZ3JheTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcclxuICAgIG1hcmdpbi1sZWZ0OiAtMnB4O1xyXG4gICAgcGFkZGluZzogNXB4IDEwcHggMTVweCAwO1xyXG4gIH1cclxufVxyXG5cclxuLnNpZGViYXItY29udGFpbmVye1xyXG4gIGhlaWdodDogY2FsYygxMDAlICsgMjBweCk7XHJcblxyXG59XHJcbi5zaWRlYmFyLXdyYXBwZXIge1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XHJcbiAgbWFyZ2luLWxlZnQ6IDYwcHg7XHJcblxyXG4gIC5zaWRlYmFyIHtcclxuICAgIC8vYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAvL1xyXG4gICAgLndpZGdldF9zZWFyY2gge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAvL05lZWRlZCBmb3IgYW5pbWF0aW9uXHJcbiAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLndpZGdldF9jYXRlZ29yaWVzIHtcclxuICAgICAgaDYge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHVsIHtcclxuICAgICAgICAuY2F0LWl0ZW0ge1xyXG4gICAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuXHJcbiAgICAgICAgICBhIHtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIG1hcmdpbi1sZWZ0OiA3NXB4O1xyXG4gICAgLnNpZGViYXIge1xyXG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSArIDUwcHgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcbi8vU2VhcmNoXHJcbi5zZWFyY2gtcmVzdWx0cy13cmFwcGVyIHtcclxuICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gIGgyIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgfVxyXG5cclxuICAuc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgLnBvc3QtaW1hZ2V7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAucG9zdC10aXRsZSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gIH1cclxuXHJcbiAgLnBvc3QtbWV0YS1zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBjb2xvcjogJGdyYXk7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgIGNvbG9yOiAkZ3JheTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5leGNlcnB0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG5cclxuICAuc2lkZWJhciB7XHJcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDQwcHgpO1xyXG4gIH1cclxuXHJcbiAgLm1vcmV0YWctd3JhcHBlcntcclxuICAgIG1hcmdpbi10b3A6IDE1cHg7XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAuZXhjZXJwdHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5zZWFyY2gtcmVzdWx0c3tcclxuICAgICAgLnBvc3QtaW1hZ2V7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIucGFnaW5hdGlvbiB7XHJcbiAgbWFyZ2luLXRvcDogMTBweDtcclxuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHJcbiAgbGkge1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xyXG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgYSwgYTpmb2N1cywgYTp2aXNpdGVkIHtcclxuICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xyXG4gICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkbGlnaHQtYmxhY2s7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuY3VycmVudCB7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgcGFkZGluZzogMThweCAyMHB4O1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHRvcDogMTQuNXB4O1xyXG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IDE1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJi5wYWdpbmF0aW9uLW5leHQsXHJcbiAgICAmLnBhZ2luYXRpb24tcHJldmlvdXMge1xyXG4gICAgICAvL3Bvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgLy9ib3R0b206IDA7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgICAgICBvcmRlcjogMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcclxuICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlcixcclxuICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXHJcbiAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcblxyXG4gIHNwYW4ubmF2aWdhdGlvbiB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gIH1cclxuXHJcbiAgLmVsbGlwc2lzIHtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgIHBhZGRpbmc6IDExcHggMThweDtcclxuXHJcbiAgICAmOmFmdGVyIHtcclxuICAgICAgcGFkZGluZzogMDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG5cclxuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIHtcclxuICAgICAgY29udGVudDogJyc7XHJcbiAgICB9XHJcblxyXG4gICAgc3Bhbi5uYXZpZ2F0aW9uIHtcclxuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgfVxyXG5cclxuICAgIGkubmF2aWdhdGlvbiB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgfVxyXG4gIH1cclxufVxyXG4iLCIvL1NsaWNrIHNsaWRlciBjdXN0b21pemF0aW9uXHJcbi8vT3JpZ2luYWwgQXV0aG9yOiBLZW4gV2hlZWxlclxyXG4vL0xpbms6IGh0dHBzOi8va2Vud2hlZWxlci5naXRodWIuaW8vc2xpY2svXHJcblxyXG4uc2xpZGVyLWNvbnRhaW5lciB7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4gIC5zbGlkZWRyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgbWFyZ2luLXRvcDogMDtcclxuXHJcbiAgICAmLnNsaWNrLXNsaWRlciB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLmRyYWdnYWJsZSB7fVxyXG5cclxuICAgIC5zbGljay1zbGlkZSB7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG5cclxuICB9XHJcblxyXG5cclxuICAgIC5zbGljay1kb3RzIHtcclxuICAgICAgYm90dG9tOiAyMiU7XHJcbiAgICAgIHotaW5kZXg6IDQ7XHJcblxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICAgIGJvdHRvbTogMTglO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG5cclxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSB7XHJcbiAgICAgICAgICBidXR0b246YmVmb3JlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICBjb250ZW50OiAn4oCiJztcclxuICAgICAgICAgICAgdG9wOiAzcHg7XHJcblxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgY29udGVudDogJ+KarCc7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcbiAgLy9TbGljayBDYXJvdXNlbFxyXG4gIC5zbGljay1kb3RzIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMTBweDtcclxuXHJcbiAgICBsaSB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuXHJcbiAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG5cclxuICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAyNnB4O1xyXG4gICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgJi5zbGljay1hY3RpdmUge1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICB3aWR0aDogMTBweDtcclxuICAgICAgICAgIGhlaWdodDogMTBweDtcclxuXHJcbiAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3B4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuIiwiLmNvbnRhY3QtZm9ybXtcclxuICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0sIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIHNlbGVjdHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZzogMCAwIDE1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIC13ZWJraXQtYm94LXNpemluZzogY29udGVudC1ib3g7IC8qIFNhZmFyaS9DaHJvbWUsIG90aGVyIFdlYktpdCAqL1xyXG4gICAgICAgIC1tb3otYm94LXNpemluZzogY29udGVudC1ib3g7ICAgIC8qIEZpcmVmb3gsIG90aGVyIEdlY2tvICovXHJcbiAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7ICAgICAgICAgLyogT3BlcmEvSUUgOCsgKi9cclxuICAgIH1cclxuICAgIGlucHV0Om5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1yYWRpb10pLCBzZWxlY3Qge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICAmOjpwbGFjZWhvbGRlcixcclxuICAgICAgICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLCAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciwgJjo6LW1vei1wbGFjZWhvbGRlciwgJjotbW96LXBsYWNlaG9sZGVyICB7XHJcbiAgICAgICAgICAgIGNvbG9yOiAgICAkZ3JheTtcclxuICAgICAgICAgICAgb3BhY2l0eTogIDE7XHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHNlbGVjdDppbnZhbGlke1xyXG4gICAgICAgIGNvbG9yOiAgICAkZ3JheTtcclxuICAgICAgICBvcGFjaXR5OiAgMTtcclxuXHJcbiAgICB9XHJcbiAgICAud3BjZjctbm90LXZhbGlkLXRpcHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xyXG4gICAgfVxyXG4gICAgbGFiZWx7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0X2JveHtcclxuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgfVxyXG4gICAgLnNlbGVjdF9ib3g6YWZ0ZXJ7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1cHg7XHJcbiAgICAgIHJpZ2h0OiA1cHg7XHJcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICAgIHotaW5kZXg6IDk4O1xyXG5cclxuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXk7XHJcbiAgICAgIGJvcmRlci13aWR0aDogMCAxcHggMXB4IDA7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XHJcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG4gICAgIH1cclxuXHJcbiAgICB0ZXh0YXJlYXtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwidGVsXCJdLCBzZWxlY3R7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRleHRhcmVhe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Upe1xyXG5cclxuICAgIH1cclxufVxyXG4iLCIvL1NsaWRlclxyXG4gLnNsaWRlci1uYXYge1xyXG4gICAgbWF4LWhlaWdodDogMTkwcHg7XHJcbiAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgIHZpZGVvLCBpbWd7XHJcbiAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgIC8vaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgaGVpZ2h0OiAzMHZ3O1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuXHJcbiAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICBtYXgtaGVpZ2h0OiAxNTBweDtcclxuICAgICAgIHZpZGVvLCBpbWd7XHJcbiAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcclxuICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgbWF4LWhlaWdodDogMTU0cHg7XHJcbiAgICAgICB2aWRlbywgaW1ne1xyXG4gICAgICAgICAgIGhlaWdodDogMTQycHg7XHJcbiAgICAgICB9XHJcbiAgICB9XHJcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Upe1xyXG4gICAgICAgICBtYXgtaGVpZ2h0OiAxODRweDtcclxuICAgICAgICAgdmlkZW8sIGltZ3tcclxuICAgICAgICAgICAgIGhlaWdodDogMTY4cHg7XHJcbiAgICAgICAgIH1cclxuICAgICB9XHJcbiAgICAgLnBsYXktaWNvbntcclxuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICB0b3A6IDUwJTsgcmlnaHQ6IDUwJTtcclxuICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoNTAlLC01MCUpO1xyXG4gICAgICAgICBmb250LXNpemU6IDcwcHg7XHJcbiAgICAgfVxyXG5cclxuICAgIC5zbGljay1zbGlkZXtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICB9XHJcbiAgICAvL092ZXJyaWRlcyBhIGlubGluZSBzdHlsZSBhZGRlZCBieSBzbGlja1xyXG4gICAgLnNsaWNrLWxpc3R7XHJcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5yZW1vdmUtdHJhbnNmb3Jte1xyXG4gICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5zbGljay10cmFja3tcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgfVxyXG4gfVxyXG5cclxuIC5zbGlkZXItZm9ye1xyXG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XHJcbiAgICAgaW1ne1xyXG4gICAgICAgICBtaW4td2lkdGg6IDMyMHB4O1xyXG4gICAgIH1cclxuICAgICBpZnJhbWUsIHZpZGVvLCBpbWd7XHJcbiAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICBoZWlnaHQ6IDY1dnc7XHJcbiAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgIH1cclxuICAgICAuc2xpY2stZG90c3tcclxuICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICBib3R0b206IDVweDtcclxuICAgICAgICAgbGl7XHJcbiAgICAgICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgICAgICAgYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgIGhlaWdodDogMTBweDtcclxuICAgICAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgICAgIGxpLnNsaWNrLWFjdGl2ZXtcclxuICAgICAgICAgICBib3R0b206IDFweDtcclxuICAgICAgICAgICAgIGJ1dHRvbntcclxuICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICY6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgfVxyXG4gICAgICAgICB9XHJcbiAgICAgfVxyXG5cclxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgIC5zbGljay1kb3Rze1xyXG4gICAgICAgICAgICAgYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICB9XHJcbiAgICAgICAgIGlmcmFtZSwgdmlkZW8sIGltZ3tcclxuICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgaGVpZ2h0OiA0NjBweDtcclxuICAgICAgICAgfVxyXG4gICAgIH1cclxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICAgaWZyYW1lLCB2aWRlbywgaW1ne1xyXG4gICAgICAgICAgICAgaGVpZ2h0OiA0MzVweDtcclxuICAgICAgICAgfVxyXG4gICAgIH1cclxuICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgIGltZywgaWZyYW1lLCB2aWRlb3tcclxuICAgICAgICAgICAgIGhlaWdodDogNTEzcHg7XHJcbiAgICAgICAgIH1cclxuICAgICB9XHJcbiB9XHJcbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVye1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxufVxyXG5cclxuXHJcblxyXG4gLnNsaWRlci13cmFwcGVye1xyXG4gICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgLy9BcnJvd3NcclxuIC5zbGljay1uZXh0LFxyXG4gLnNsaWNrLXByZXZ7XHJcbiAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgIH1cclxuIH1cclxuICAgICAuc2xpY2stYXJyb3d7XHJcbiAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgIHotaW5kZXg6IDEwMDtcclxuICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgICAgICAgIHdpZHRoOiAzMHB4O1xyXG5cclxuICAgICAgICAgJi5wcmV2e1xyXG4gICAgICAgICAgICAgbGVmdDogMTBweDtcclxuICAgICAgICAgfVxyXG4gICAgICAgICAmLm5leHR7XHJcbiAgICAgICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgICAgICAgIEBpbmNsdWRlIHJvdGF0ZSgxODApO1xyXG5cclxuICAgICAgICAgfVxyXG4gICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgfVxyXG5cclxuICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xyXG4gICAgICAgICAgICAgd2lkdGg6IDUwcHg7XHJcbiAgICAgICAgICAgICAmLnByZXZ7XHJcbiAgICAgICAgICAgICAgICAgbGVmdDogMzBweDtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICYubmV4dHtcclxuICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcclxuICAgICAgICAgICAgIH1cclxuICAgICAgICAgfVxyXG5cclxuICAgICB9XHJcbiB9XHJcblxyXG5cclxuLmlmcmFtZS5uby1jYXJvdXNlbHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiA2MHZ3O1xyXG59XHJcbiBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgLmlmcmFtZS5uby1jYXJvdXNlbHtcclxuICAgICAgICAgd2lkdGg6IDY5MHB4O1xyXG4gICAgICAgICBoZWlnaHQ6IDQ2MHB4O1xyXG4gICAgIH1cclxuIH1cclxuIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgIC5pZnJhbWUubm8tY2Fyb3VzZWx7XHJcbiAgICAgICAgIHdpZHRoOiA4NTRweDtcclxuICAgICAgICAgaGVpZ2h0OiA0MzVweDtcclxuICAgICB9XHJcbiB9XHJcbiBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgLmlmcmFtZS5uby1jYXJvdXNlbHtcclxuICAgICAgICAgaGVpZ2h0OiA1MTNweDtcclxuICAgICB9XHJcbiB9XHJcbiIsIi53cHAtdGh1bWJuYWlse1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBmbG9hdDogbm9uZTtcclxuICAgIG1heC1oZWlnaHQ6IDE4MHB4O1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNDAwcHgpe1xyXG4gICAgICBtYXgtaGVpZ2h0OiAzMDBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAyMjBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDE0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICBtYXgtaGVpZ2h0OiAxODBweDtcclxuICAgIH1cclxufVxyXG4ubW9zdC1wb3B1bGFyLXBvc3Rze1xyXG4gIC5zbGljay10cmFja3tcclxuICAgIG1hcmdpbjogMDtcclxuICB9XHJcbn1cclxuXHJcbi5wb3B1bGFyLXBvc3QtY2Fyb3VzZWx7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAuaGVhZGluZ3tcclxuICAgICAgICAvL2NvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDRweDtcclxuICAgIH1cclxuICAgIC5tb3N0LXBvcHVsYXItcG9zdHN7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMzkwcHg7XHJcbiAgICAgICAgLnBvcHVsYXItcG9zdHtcclxuXHJcbiAgICAgICAgICAgIC50aXRsZSBhe1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50aHVtYntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNwZWNze1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGljay1hcnJvd3tcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IC0zNXB4O1xyXG4gICAgICByaWdodDogMDtcclxuICAgICAgd2lkdGg6IDMwcHg7XHJcbiAgICAgIGhlaWdodDogMzBweDtcclxuICAgICAgei1pbmRleDogMTA7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stcHJldntcclxuICAgICAgbGVmdDogYXV0bztcclxuICAgICAgcmlnaHQ6IDM1cHg7XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgIC5zbGljay1wcmV2e1xyXG4gICAgICAgIGxlZnQ6IGF1dG87XHJcbiAgICAgICAgcmlnaHQ6IDUwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLnNsaWNrLW5leHR7XHJcbiAgICAgICAgcmlnaHQ6IDE1cHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5uYXYtYXJyb3dze1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICB3aWR0aDogMzBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBvcHVsYXItcG9zdC1uZXh0e1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zbGljay1kb3Rze1xyXG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIH1cclxuICAgIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3Jle1xyXG4gICAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IC01cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNjBweCAwO1xyXG4gICAgICAgIC5tb3N0LXBvcHVsYXItcG9zdHN7XHJcbiAgICAgICAgICAgIC5wb3B1bGFyLXBvc3R7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHg7XHJcblxyXG5cclxuICAgICAgICAgICAgICAgIC8vICYuc2xpY2stYWN0aXZle1xyXG4gICAgICAgICAgICAgICAgLy8gICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgIC8vICYuc2xpY2stY3VycmVudHtcclxuICAgICAgICAgICAgICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAvLyAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIHBhZGRpbmc6IDkwcHggMDtcclxuICAgICAgICAuc2xpY2stZG90c3tcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG59XHJcbiIsIi5zaGFyZS10aGlze1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIC5zaGFyZS1oZWFkaW5ne1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnNoYXJlLWljb25ze1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgICAgICAuaWNvbiwgYSwgYTpob3ZlciwgYTpsaW5rLCBhOnZpc2l0ZWR7XHJcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLm1iLTB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG4ubXQtMzB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG59XHJcbi5wdC0zMHtcclxuICAgIG1hcmdpbi10b3A6IDMwcHg7O1xyXG59XHJcbi5tYi0xMHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbn1cclxuLnBiLTEwe1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDs7XHJcbn1cclxuXHJcblxyXG4ubWItNTB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG59XHJcbi5tYi04MHtcclxuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbn1cclxuXHJcbi5yZWxhdGl2ZXtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLmJhY2tncm91bmQtZGFyay1ncmF5e1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JheTtcclxufVxyXG4uYmFja2dyb3VuZC1ibGFja3tcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxufVxyXG4uYmFja2dyb3VuZC1saWdodC1ibGFja3tcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibGFjaztcclxufVxyXG4uYmFja2dyb3VuZC1kYXJrLWJsYWNre1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstYmxhY2s7XHJcbn1cclxuXHJcblxyXG4vL1BsYXlmYWlyIEJvbGRcclxuLmV4dHJhLXN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IDkwMDtcclxufVxyXG4vL1dvcmsgU2Fuc1xyXG4uc3Ryb25nIHtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcbi8vV29yayBTYW5zXHJcbi5zZW1pLXN0cm9uZyB7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG4iLCIvLyAjZmxleGlibGUtY29udGVudC0we1xyXG4vLyBtYXJnaW4tdG9wOiA0MHB4O1xyXG4vLyBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuLy8gbWFyZ2luLXRvcDogNDVweDtcclxuLy8gfVxyXG4vLyB9XHJcbi5ob21lLWJhbm5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIC5jdXN0b20tZ3JpZHtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgIC5zdGF0cy1oaWdobGlnaHRzIHtcclxuICAgICAgZGlzcGxheTogY29udGVudHM7XHJcbiAgICAgIGgyIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICAgIH1cclxuICAgICAgLmdyaWQtY29udGFpbmVyIHtcclxuICAgICAgICAuZ3JpZC14IHtcclxuICAgICAgICAgIC5jZWxsIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDRlbTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnN0YXRzLWhpZ2hsaWdodHMge1xyXG4gICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgLy8gdG9wOiA1MCU7XHJcbiAgICAvLyBsZWZ0OiA1MCU7XHJcbiAgICAvLyB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIC8vbWFyZ2luOiA2MHB4IDAgNTVweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDgwcHg7XHJcbiAgICAuY2VsbCB7XHJcbiAgICAgIGgyIHtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XHJcbiAgICAgIH1cclxuICAgICAgLmN1c3RvbS1ncmlkIHtcclxuICAgICAgICAuaW5uZXItY2VsbCB7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDI1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgLy96LWluZGV4OiA1O1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgLy8gcGFkZGluZzogMjBweCAzNXB4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC50aXRsZSB7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuZGF0YSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgfVxyXG5cclxuICAgICAgICAgIC5zZXBlcmF0b3Ige1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcclxuICAgICAgICAgICAgd2lkdGg6IDExNXB4O1xyXG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgLy8gYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgICAgICAgICAgICAgLnNlcGVyYXRvciB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgLmlubmVyLWNlbGwge1xyXG4gICAgICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDUpIC0gNXB4KTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmRhdGEge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcclxuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAuaW5uZXItY2VsbCB7XHJcbiAgICAgICAgICAgIC5kYXRhIHtcclxuICAgICAgICAgICAgICBmb250LXNpemU6IDMycHg7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgICAgIC5pbm5lci1jZWxsIHtcclxuICAgICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmRhdGEge1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDhweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEyMHB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnJlY2VudC1uZXdzIHtcclxuICBwYWRkaW5nLXRvcDogM2VtO1xyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAuYXJ0aWNsZXN7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAgIC5zbGljay1uZXh0LCAuc2xpY2stcHJldiB7XHJcbiAgICAgIHdpZHRoOiAzNXB4O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaDIge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDJlbTtcclxuICB9XHJcbiAgLmFydGljbGUge1xyXG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAuZmVhdHVyZWQtaW1hZ2Uge1xyXG4gICAgICBtaW4taGVpZ2h0OiAyNjBweDtcclxuICAgICAgaW1nIHtcclxuICAgICAgICAvLyBtaW4taGVpZ2h0OiAxOGVtO1xyXG4gICAgICAgIGhlaWdodDogMjYwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgLmZlYXR1cmVkLWltYWdlIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICBpbWcge1xyXG4gICAgICAgICAgLy8gbWluLWhlaWdodDogMThlbTtcclxuICAgICAgICAgIGhlaWdodDogMjAwcHg7XHJcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jdGEge1xyXG4gICAgICBwYWRkaW5nOiAwO1xyXG4gICAgfVxyXG4gICAgaDQge1xyXG4gICAgICBjb2xvcjogd2hpdGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuICAgICAgcGFkZGluZy10b3A6IDFlbTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcclxuICAgIH1cclxuICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XHJcbiAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgcCB7XHJcbiAgICAgICAgY29sb3I6ICM4MzgzODM7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHhcclxuICAgICAgfVxyXG4gICAgICBwOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjODM4MzgzO1xyXG4gICAgICB9XHJcbiAgICAgIHA6bGFzdC1vZi10eXBlIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgICBhIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM4MzgzODM7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG5cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmN0YSB7XHJcbiAgICAgIGEge1xyXG4gICAgICAgIGJ1dHRvbiB7XHJcbiAgICAgICAgICBjb2xvcjogIzgzODM4MztcclxuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnNsaWNrLXByZXYge1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsLTYwMCUpXHJcbiAgfVxyXG4gIC5zbGljay1uZXh0IHtcclxuICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLC02MDAlKVxyXG5cclxuICB9XHJcbiAgLnNsaWNrLW5leHQ6YmVmb3JlIHtcclxuICAgIGZvbnQtc2l6ZTogNTVweDtcclxuICAgIGNvbnRlbnQ6IFwiIFxcMjc2RlwiO1xyXG4gICAgY29sb3I6ICM2NzhlNzg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xyXG4gIH1cclxuICAuc2xpY2stcHJldjpiZWZvcmUge1xyXG4gICAgZm9udC1zaXplOiA1NXB4O1xyXG4gICAgY29udGVudDogXCIgXFwyNzZFXCI7XHJcbiAgICBjb2xvcjogIzY3OGU3ODtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbiAgfVxyXG59XHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gIC5yZWNlbnQtbmV3cyB7XHJcbiAgICAuc2xpY2stbmV4dCB7XHJcbiAgICAgIHJpZ2h0OiAxcHg7XHJcbiAgICB9XHJcbiAgICAuc2xpY2stcHJldiB7XHJcbiAgICAgIGxlZnQ6IDFweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5pbWFnZS1zbGlkZXIge1xyXG4gIHBhZGRpbmctYm90dG9tOiA1ZW07XHJcblxyXG4gIC5zbGljay1saXN0IHtcclxuICAgIG1heC1oZWlnaHQ6IDU3MHB4O1xyXG4gIH1cclxuICAuZGV0YWlscyB7XHJcbiAgICBtYXgtaGVpZ2h0OiA1NzBweDtcclxuICB9XHJcbiAgLmltYWdlIHtcclxuICAgIG1heC1oZWlnaHQ6IDU3MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICB9XHJcbiAgLnNsaWNrLXByZXYge1xyXG4gICAgbGVmdDogM2VtO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIG1hcmdpbi1sZWZ0OiAxNTBweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xyXG4gICAgICBtYXJnaW4tbGVmdDogMDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2xpY2stbmV4dCB7XHJcbiAgICByaWdodDogM2VtO1xyXG4gICAgei1pbmRleDogMTAwMDtcclxuICAgIG1hcmdpbi1yaWdodDogMTUwcHg7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xyXG4gICAgZm9udC1zaXplOiA1NXB4O1xyXG4gICAgY29udGVudDogXCIgXFwyNzZGXCI7XHJcbiAgICBjb2xvcjogIzY3OGU3ODtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbiAgfVxyXG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XHJcbiAgICBmb250LXNpemU6IDU1cHg7XHJcbiAgICBjb250ZW50OiBcIiBcXDI3NkVcIjtcclxuICAgIGNvbG9yOiAjNjc4ZTc4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuICB9XHJcbiAgLmNvbnRhaW5lciB7XHJcbiAgICBoMiB7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgcGFkZGluZy10b3A6IDNlbTtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDBlbTtcclxuICAgIH1cclxuICAgIGhyIHtcclxuICAgICAgY29sb3I6ICM3MThiNzU7XHJcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xyXG4gICAgICBtYXgtd2lkdGg6IDUwcmVtO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgIHBhZGRpbmctbGVmdDogNGVtO1xyXG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0ZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ucmVkdWNlZC13aWR0aC1iYW5uZXIge1xyXG4gIG1hcmdpbi1ib3R0b206IDVlbTtcclxuICBiYWNrZ3JvdW5kOiAjNjc4Yzc4O1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICB9XHJcbiAgLnNsaWNrLWxpc3Qge1xyXG4gICAgbWF4LWhlaWdodDogNTcwcHg7XHJcbiAgfVxyXG4gIC5kZXRhaWxzIHtcclxuICAgIG1heC1oZWlnaHQ6IDU3MHB4O1xyXG4gIH1cclxuICAuaW1hZ2Uge1xyXG4gICAgbWF4LWhlaWdodDogNTcwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gIH1cclxuICAuc2xpY2stcHJldiB7XHJcbiAgICBsZWZ0OiAzZW07XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgbWFyZ2luLWxlZnQ6IDUwcHg7XHJcbiAgfVxyXG4gIC5zbGljay1uZXh0IHtcclxuICAgIHJpZ2h0OiAzZW07XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xyXG4gIH1cclxuICAuc2xpY2stbmV4dDpiZWZvcmUge1xyXG4gICAgZm9udC1zaXplOiA1NXB4O1xyXG4gICAgY29udGVudDogXCIgXFwyNzZGXCI7XHJcbiAgICBjb2xvcjogIzY3OGU3ODtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XHJcbiAgfVxyXG4gIC5zbGljay1wcmV2OmJlZm9yZSB7XHJcbiAgICBmb250LXNpemU6IDU1cHg7XHJcbiAgICBjb250ZW50OiBcIiBcXDI3NkVcIjtcclxuICAgIGNvbG9yOiAjNjc4ZTc4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcclxuICB9XHJcbn1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgLmltYWdlLXNsaWRlciB7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgcCB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyZW07XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMmVtO1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAxZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLnJlZHVjZWQtd2lkdGgtYmFubmVyIHtcclxuICAgIC5pbWFnZS1kZXNjcmlwdGlvbiB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogM2VtO1xyXG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDNlbTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4uaW1hZ2UtZGVzY3JpcHRpb24ge1xyXG4gIGgyIHtcclxuICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gIH1cclxuICBwIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA0ZW07XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDRlbTtcclxuICAgIHBhZGRpbmctcmlnaHQ6IDRlbTtcclxuICB9XHJcbn1cclxuXHJcbi5mdWxsLXdpZHRoLWJhbm5lciB7XHJcbiAgLmdyaWQteCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYzYTMwO1xyXG4gICAgcGFkZGluZzogNGVtIDA7XHJcbiAgICAuY29udGFpbmVyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGgyIHtcclxuICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgfVxyXG4gICAgICBociB7XHJcbiAgICAgICAgY29sb3I6ICM3MThiNzU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA1MHJlbTtcclxuICAgICAgfVxyXG4gICAgICAuY3RhIHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayB7XHJcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG4gIC5ibG9jayB7XHJcbiAgICBpbWcge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiA4MThweDtcclxuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5yb3cge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzY3OGU3ODtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIGgyIHtcclxuICAgICAgcGFkZGluZy10b3A6IDUwcHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxZW07XHJcbiAgICAgIGZvbnQ6IG5vcm1hbCBub3JtYWwgYm9sZCAyNnB4LzMycHggUGxheWZhaXIgRGlzcGxheTtcclxuICAgIH1cclxuICAgIHAge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDUwcHg7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0ZW07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi8vIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSBvbmx5KXtcclxuLy8gICAuc2luZ2xlLWRlc2NyaXB0aW9uLWJsb2Nre1xyXG4vLyAgICAgLmJsb2Nre1xyXG4vLyAgICAgICAucm93e1xyXG4vLyAgICAgICAgIGgye1xyXG4vLyAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgIHB7XHJcbi8vICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuLy8gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XHJcbi8vICAgICAgICB9XHJcbi8vICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gICB9XHJcbi8vIH1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgLnNpbmdsZS1kZXNjcmlwdGlvbi1ibG9jayB7XHJcbiAgICAuYmxvY2sge1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLnJvdyB7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE3cHg7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5oZXJvLWJhbm5lci12aWRlbyB7XHJcbiAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgLnZpZGVvLXdyYXBwZXIge1xyXG4gICAgaGVpZ2h0OiA2MDBweDtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICB9XHJcbiAgLmltYWdlLXdyYXBwZXIge1xyXG4gICAgaW1nIHtcclxuICAgICAgaGVpZ2h0OiA0MDBweDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG4gICAgLm92ZXJsYXkge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogNTAlO1xyXG4gICAgICByaWdodDogNTAlO1xyXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsIC01MCUpO1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgIGgzIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNC41dnc7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIG1hcmdpbjogMCAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAuY29udHJvbHMge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogLTcwcHg7XHJcblxyXG4gICAgaSB7XHJcbiAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICBib3JkZXI6IDEycHggc29saWQgJGdyYXk7XHJcbiAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDkwcHg7XHJcblxyXG4gICAgLmltYWdlLXdyYXBwZXIge1xyXG4gICAgICBpbWcge1xyXG4gICAgICAgIGhlaWdodDogNjAwcHg7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgICAgLm92ZXJsYXkge1xyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMzVweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxMzBweDtcclxuICAgIC5iYW5uZXItdmlkZW8ge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICB0b3A6IDA7XHJcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcclxuICAgICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgICAgIC8vbWF4LWhlaWdodDogNDAwcHg7XHJcbiAgICAgIHdpZHRoOiBhdXRvO1xyXG4gICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIHotaW5kZXg6IDA7XHJcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XHJcbiAgICAudmlkZW8td3JhcHBlciB7XHJcbiAgICAgIGhlaWdodDogNzgwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbi50ZXh0LXNlY3Rpb24tY29udGFpbmVyIHtcclxuICBwYWRkaW5nLWJvdHRvbTogNTBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xyXG5cclxuICB9XHJcbiAgLmNvbnRlbnRzIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIC5vdmVybGF5LXRleHQtc2VjdGlvbiB7XHJcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgdG9wOiA1MCU7XHJcbiAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMDBweDtcclxuICAgICAgcCB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiAjOGVhYTk2O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMzJweC80M3B4IFBsYXlmYWlyIERpc3BsYXk7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA4MDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLndpdGhvdXQtc3BpZGVyLWltYWdle1xyXG4gICAgLm92ZXJsYXktdGV4dC1zZWN0aW9ue1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBvbmx5KSB7XHJcbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIge1xyXG4gICAgLmNvbnRlbnRzIHtcclxuICAgICAgLm92ZXJsYXktdGV4dC1zZWN0aW9uIHtcclxuICAgICAgICBwIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjZweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gIC50ZXh0LXNlY3Rpb24tY29udGFpbmVyIHtcclxuICAgIC5jb250ZW50cyB7XHJcbiAgICAgIC5vdmVybGF5LXRleHQtc2VjdGlvbiB7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDIycHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgLnRleHQtc2VjdGlvbi1jb250YWluZXIge1xyXG4gICAgLmNvbnRlbnRzIHtcclxuICAgICAgLmZ1bGwtd2lkdGgtaW1hZ2Uge1xyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICBoZWlnaHQ6IDI1OHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAub3ZlcmxheS10ZXh0LXNlY3Rpb24ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgcCB7XHJcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDIsIGgzIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmluZm8tYmFubmVyIHtcclxuICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAuY29udGFpbmVyIHtcclxuICAgIC5jb2x1bW4tb25lIHtcclxuICAgICAgdmlkZW8ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgfVxyXG4gICAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICBtYXgtaGVpZ2h0OiA2NzNweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnZlcnRpY2xlIHtcclxuICAgICAgYm9yZGVyOiBub25lO1xyXG4gICAgICBib3JkZXItbGVmdDogMnB4IHNvbGlkICM3MThiNzU7XHJcbiAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgIG1hcmdpbi10b3A6IDBweDtcclxuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMzBweDtcclxuICAgIH1cclxuICAgIC5jb2x1bW4tdHdvIHtcclxuICAgICAgLy8gcGFkZGluZy1sZWZ0OiAxNTBweDtcclxuICAgICAgLmxvZ28ge1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDIzMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJlbTtcclxuICAgICAgfVxyXG4gICAgICAuY29udGVudCB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MDBweDtcclxuICAgICAgICAuaW5mby1iYW5uZXItcGFyYWdyYXBoIHtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2ZW07XHJcbiAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDFlbTtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAzOTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuLy8gQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKXtcclxuLy8gLmluZm8tYmFubmVye1xyXG4vLyAgIC5jb250YWluZXJ7XHJcbi8vICAgICAuY29sdW1uLXR3b3tcclxuLy8gICAgICAgLmNvbnRlbnR7XHJcbi8vICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcclxuLy8gICAgICAgICAuaW5mby1iYW5uZXItcGFyYWdyYXBoe1xyXG4vLyAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbi8vICAgICAgICAgICBwe1xyXG4vLyAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XHJcbi8vICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4vLyAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuLy8gICAgICAgICAgIH1cclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgLmN0YXtcclxuLy8gICAgICAgICAgIC5idXR0b257XHJcbi8vICAgICAgICAgICAgIGhlaWdodDogODBweDtcclxuLy8gICAgICAgICAgICAgd2lkdGg6IDUwMHB4O1xyXG4vLyAgICAgICAgICAgICBmb250LXNpemU6IDI1cHg7XHJcbi8vICAgICAgICAgICB9XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgfVxyXG4vLyB9XHJcbi8vIH1cclxuXHJcbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gIC5pbmZvLWJhbm5lciB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgIC5jb2x1bW4tb25lIHtcclxuICAgICAgICBociB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuY29sdW1uLXR3byB7XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgIC5sb2dvIHtcclxuICAgICAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgICAgICBtYXJnaW46IDFlbSBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudCB7XHJcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAuaW5mby1iYW5uZXItcGFyYWdyYXBoIHtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIC5jdGEge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFlbTtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDJlbTtcclxuICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgYnV0dG9uIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgLmluZm8tYmFubmVyIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAuY29sdW1uLW9uZSB7XHJcbiAgICAgICAgaHIge1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLmNvbHVtbi10d28ge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgICAgICAubG9nbyB7XHJcbiAgICAgICAgICBtYXJnaW46IDFlbSBhdXRvO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuY2VsbCB7XHJcbiAgICAgICAgLmNvbnRlbnQge1xyXG4gICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgLmluZm8tYmFubmVyLXBhcmFncmFwaCB7XHJcbiAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuY3RhIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uYXV0by1zbGlkZXIge1xyXG4gIHBhZGRpbmctYm90dG9tOiAwZW07XHJcbiAgcGFkZGluZy1sZWZ0OiAwZW0gIWltcG9ydGFudDtcclxuICBwYWRkaW5nLXJpZ2h0OiAwZW0gIWltcG9ydGFudDtcclxuICAuYXV0by1zbGlkZXItaG9tZSB7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJlbTtcclxuICAgIGltZyB7XHJcbiAgICAgIGhlaWdodDogNTcwcHg7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICBoMyB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDkwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcclxuICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIGJvbGQgMjZweC8zMnB4IFBsYXlmYWlyIERpc3BsYXk7XHJcbiAgICAgICAgZm9udC1zaXplOiAyNnB4O1xyXG4gICAgICB9XHJcbiAgICAgIGhyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjc4RTc4O1xyXG4gICAgICAgIGhlaWdodDogMnB4O1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBtYXgtd2lkdGg6IDUwcmVtO1xyXG4gICAgICB9XHJcbiAgICAgIC5jdGEge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA2MHB4O1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudmlzYWJsZS1iYWNrZ3JvdW5kIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIGJvbGQgMjZweC8zMnB4IFBsYXlmYWlyIERpc3BsYXk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTZweC8yMHB4IFdvcmsgU2FucztcclxuICAgICAgICB9XHJcbiAgICAgICAgLmN0YSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLnRyYW5zcGFyZW50LWJhY2tncm91bmQge1xyXG4gICAgICAgIC5jb250YWluZXJ7XHJcbiAgICAgICAgLmN0YSB7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAudHJpYW5nbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMxMjNBMzE7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMCAxZW07XHJcblxyXG4gICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgIGhlaWdodDogMTUwcHg7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICMxMjNBMzE7XHJcbiAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oLTQxJSAzJSwgMTAzJSA0JSwgNzUlIDY3JSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFja2dyb3VuZF90d28ge1xyXG4gICAgICAudHJpYW5nbGUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMzRTY4NTg7XHJcbiAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICBjbGlwLXBhdGg6IHBvbHlnb24oLTgxJSAtNzQlLCAxMDclIDQlLCA1MCUgNjclKTtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICMzRTY4NTg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYmFja2dyb3VuZF90aHJlZSB7XHJcbiAgICAgIC50cmlhbmdsZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzNFNjg1ODtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgIGNsaXAtcGF0aDogcG9seWdvbigtNDElIC03NCUsIDExMCUgNCUsIDI1JSA2NyUpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZDogIzNFNjg1ODtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5jdGEge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTYwcHg7XHJcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAuYXV0by1zbGlkZXItaG9tZSB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA5ZW07XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiA0ODBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgfVxyXG4gICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICAudHJhbnNwYXJlbnQtYmFja2dyb3VuZCB7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC52aXNhYmxlLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgICBoMyB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAyZW07XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDdlbTtcclxuICAgIC5hdXRvLXNsaWRlci1ob21lIHtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgICAgIGltZyB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgfVxyXG4gICAgICAuY29udGFpbmVyIHtcclxuICAgICAgICBoMyB7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBwIHtcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jdGEge1xyXG4gICAgICAgICAgd2lkdGg6IGF1dG87XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC52aXNhYmxlLWJhY2tncm91bmQge1xyXG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgaDMge1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gICYuc3RhY2tlZCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxNTBweDtcclxuICAgIC50cmlhbmdsZSB7XHJcbiAgICAgICY6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDE1MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNsaXAtcGF0aDogcG9seWdvbig3MSUgNDAlLCAxMDIlIDEwMiUsIDAlIDEwMCUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICMzRTY4NTg7XHJcbiAgICAgIH1cclxuICAgICAgJi5saWdodCB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogIzhFQUE5NiAhaW1wb3J0YW50O1xyXG4gICAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcclxuICAgICAgICAgIGJhY2tncm91bmQ6ICM4RUFBOTYgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIC5zbGlkZS1pbWFnZXMge1xyXG4gICAgICBwYWRkaW5nLXRvcDogM2VtO1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogM2VtO1xyXG4gICAgfVxyXG4gICAgLnRlc3RpbW9uaWFsLWNvbHVtbnMge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC50ZXN0aW1vbmlhbC1jb2x1bW5zIC5jZWxsIHtcclxuICAgICAgYm9yZGVyLWNvbG9yOiAjNjc4RTc4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuYXV0by1zbGlkZXItaG9tZSAuY29udGFpbmVyIGgzIHtcclxuICAgICAgcGFkZGluZy10b3A6IDJlbTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgaW1nIHtcclxuICAgICAgICBoZWlnaHQ6IDYzMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4udGVzdGltb25pYWwtY29sdW1ucyB7XHJcbiAgcGFkZGluZy1ib3R0b206IDZlbTtcclxuICBoMiB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XHJcbiAgICBmb250LXNpemU6IDI2cHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICB9XHJcbiAgLmNlbGwge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIGJvcmRlci1yaWdodDogMnB4IHNvbGlkICMzZDY4NTc7XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KXtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMzZDY4NTc7XHJcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XHJcbiAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjM2Q2ODU3O1xyXG4gICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5jZWxsOm50aC1vZi10eXBlKDNuKSxcclxuICAuY2VsbDpsYXN0LW9mLXR5cGUge1xyXG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gIH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAudGVzdGltb25pYWwtY29sdW1ucyB7XHJcbiAgICAuY2VsbCB7XHJcbiAgICAgIHAge1xyXG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgLnRlc3RpbW9uaWFsLWNvbHVtbnMge1xyXG4gICAgLmNlbGwge1xyXG4gICAgICBwIHtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IDEwMDAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8vIC5jb2x1bW4tYmxvY2tzIHtcclxuLy8gICBtYXJnaW4tdG9wOiAxMDBweDtcclxuLy8gICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuLy8gICAmLmZyb250LXdyYXBwZXIge1xyXG4vLyAgICAgcGFkZGluZy1ib3R0b206IDA7XHJcbi8vICAgfVxyXG4vLyAgIC5zcGVjaWFsaXR5LWNhcmRzIHtcclxuLy8gICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcclxuLy8gICAgIC5zcGVjaWFsaXR5LWNhcmQge1xyXG4vLyAgICAgICAuc3BlY2lhbGl0eS1jYXJkLWluZm8ge1xyXG4vLyAgICAgICAgIC8vIG1hcmdpbi10b3A6IC0yNDBweCAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgIC5ncmFkaWVudC1ob3ZlciB7XHJcbi8vICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MTBweCAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICAuZ3JhZGllbnQtb3ZlcmxheSB7XHJcbi8vICAgICAgICAgICBtYXgtaGVpZ2h0OiA1MTJweCAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICAubG9nbyB7XHJcbi8vICAgICAgICAgICBoZWlnaHQ6IDhlbTtcclxuLy8gICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgIHAge1xyXG4vLyAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDNlbTtcclxuLy8gICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDAgIWltcG9ydGFudDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgLmJsb2NrLWN0YSB7XHJcbi8vICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4vLyAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbi8vICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICAgICAgYSB7XHJcbi8vICAgICAgICAgICAgIGJ1dHRvbiB7XHJcbi8vICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbi8vICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY3OGU3ODtcclxuLy8gICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XHJcbi8vICAgICAgICAgICAgICAgaGVpZ2h0OiAzZW07XHJcbi8vICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDNweDtcclxuLy8gICAgICAgICAgICAgICB3aWR0aDogMTNlbTtcclxuLy8gICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbi8vICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuLy8gICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuLy8gICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuLy8gICAgICAgICAgICAgICB9XHJcbi8vICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgIH1cclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgIH1cclxuLy8gICAgICAgJjpob3ZlciB7XHJcbi8vICAgICAgICAgLnNwZWNpYWxpdHktY2FyZC1pbmZvIHtcclxuLy8gICAgICAgICAgIC5sb2dvLWJveCB7XHJcbi8vICAgICAgICAgICAgIC5sb2dvIHtcclxuLy8gICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuLy8gICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuLy8gICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4vLyAgICAgICAgICAgICB9XHJcbi8vICAgICAgICAgICB9XHJcblxyXG4vLyAgICAgICAgICAgLmJsb2NrLWN0YSB7XHJcbi8vICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICAgICAgICB9XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICB9XHJcbi8vICAgICB9XHJcbi8vICAgfVxyXG4vLyAgIGgyIHtcclxuLy8gICAgIGRpc3BsYXk6IGZsZXg7XHJcbi8vICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuLy8gICAgIHBhZGRpbmctYm90dG9tOiAxZW07XHJcbi8vICAgfVxyXG4vLyB9XHJcbi8vIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xyXG4vLyAgIC5jb2x1bW4tYmxvY2tze1xyXG4vLyAgICAgJjpob3ZlciB7XHJcbi8vICAgICAgIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyB7XHJcbi8vICAgICAgICAgLnRpdGxle1xyXG4vLyAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbi8vICAgICAgICAgfVxyXG4vLyAgICAgICAgIC5zZXBlcmF0b3Ige1xyXG4vLyAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4vLyAgICAgICAgICAgJjpiZWZvcmUge1xyXG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4vLyAgICAgICAgICAgfVxyXG4vLyAgICAgICAgIH1cclxuLy8gICAgICAgICBwe1xyXG4vLyAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4vLyAgICAgICAgICAgZm9udC1zaXplOiA4cHg7XHJcbi8vICAgICAgICAgICBwYWRkaW5nOiAxcHggIWltcG9ydGFudDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgLmRlc2NyaXB0aW9ue1xyXG4vLyAgICAgICAgICAgcGFkZGluZzogMDtcclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgICAgLmJsb2NrLWN0YXtcclxuLy8gICAgICAgICAgIGF7XHJcbi8vICAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbi8vICAgICAgICAgICAgIGJ1dHRvbntcclxuLy8gICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgICAgICAgICAgaGVpZ2h0OiAyZW0gIWltcG9ydGFudDtcclxuLy8gICAgICAgICAgICAgICB3aWR0aDogOWVtICFpbXBvcnRhbnQ7XHJcbi8vICAgICAgICAgICAgIH1cclxuLy8gICAgICAgICAgIH1cclxuLy8gICAgICAgICB9XHJcbi8vICAgICAgIH1cclxuLy8gICAgIH1cclxuLy8gICB9XHJcbi8vIH1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuSW1hZ2UgQmxvY2tcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmltYWdlLWJsb2NrIHtcclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgcGFkZGluZy1ib3R0b206IDQwcHg7XHJcbiAgLy8gIG1hcmdpbi10b3A6IDIwcHg7XHJcblxyXG4gIC5oZWFkaW5nIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gIH1cclxuXHJcbiAgLmRlc2NyaXB0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICB9XHJcblxyXG4gIC52aWRlby1saW5rIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWluLWhlaWdodDogMTkzcHg7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIC52aWRlby1wcmV2aWV3IHtcclxuICAgIH1cclxuXHJcbiAgICAudmlkZW8tcGxheS1pY29uIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjR2dztcclxuICAgICAgY29sb3I6ICRsaWdodC1ncmF5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gICAgLy9tYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgLnZpZGVvLXJldmVhbC1idXR0b24ge1xyXG4gICAgICBoZWlnaHQ6IDQ2MHB4O1xyXG4gICAgfVxyXG4gICAgLnZpZGVvLWxpbmsge1xyXG4gICAgICBoZWlnaHQ6IDM2MHB4O1xyXG4gICAgICAudmlkZW8tcHJldmlldyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIH1cclxuICAgICAgLnZpZGVvLXBsYXktaWNvbiB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMjBweDtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG4gICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC52aWRlby1yZXZlYWwtYnV0dG9uIHtcclxuICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgfVxyXG4gICAgLnZpZGVvLWxpbmsge1xyXG4gICAgICBoZWlnaHQ6IDM3N3B4O1xyXG4gICAgICAudmlkZW8tcHJldmlldyB7XHJcbiAgICAgICAgaGVpZ2h0OiAzNzdweDtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgfVxyXG4gICAgICAudmlkZW8tcGxheS1pY29uIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmltYWdlLWJsb2NrLXJldmVhbCB7XHJcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gIGhlaWdodDogYXV0bztcclxuICBtaW4taGVpZ2h0OiBhdXRvO1xyXG5cclxuICAuaWZyYW1lIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxNTBweDtcclxuICB9XHJcblxyXG4gIC5ibG9jay12aWRlbyB7XHJcbiAgICBwYWRkaW5nOiAwIDE1cHggMzBweDtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoNDUwKSB7XHJcbiAgICAuaWZyYW1lIHtcclxuICAgICAgaGVpZ2h0OiAzMDBweDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgLmJsb2NrLXZpZGVvIHtcclxuICAgICAgcGFkZGluZzogMCA1MHB4IDUwcHg7XHJcbiAgICB9XHJcbiAgICAuaWZyYW1lIHtcclxuICAgICAgaGVpZ2h0OiA0MDBweDtcclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgIC5ibG9jay12aWRlbyB7XHJcbiAgICAgIHBhZGRpbmc6IDAgNTBweCA1MHB4O1xyXG4gICAgfVxyXG4gICAgLmlmcmFtZSB7XHJcbiAgICAgIGhlaWdodDogNDUwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4ubGFiZWwtZGVzY3JpcHRpb24tcmV2ZWFsIHtcclxuICBwYWRkaW5nOiA0MHB4IDI1cHg7XHJcbiAgLmxvZ28ge1xyXG4gICAgbWFyZ2luOiA0MHB4IDAgNDBweDtcclxuICB9XHJcbiAgLmNsb3NlLWJ1dHRvbiB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gIH1cclxuICAucmV2ZWFsLXRpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBwYWRkaW5nOiA3MHB4O1xyXG4gICAgLmxvZ28ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICBwYWRkaW5nOiA4MHB4O1xyXG4gICAgLmNsb3NlLWJ1dHRvbiB7XHJcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcclxuICAgIH1cclxuICAgIC5sb2dvIHtcclxuICAgICAgcGFkZGluZzogMCA2MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgcGFkZGluZzogMTEwcHggMTAwcHg7XHJcbiAgICAuY2xvc2UtYnV0dG9uIHtcclxuICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLmxhYmVsZWQtaW1hZ2VzLWNvbnRhaW5lciB7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIC8vbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICBwYWRkaW5nLWJvdHRvbTogMC41cHg7IC8vU29sZSBwdXJwb3NlIGlzIHRvIGF2b2lkIGNvbGxhcHNpbmcgcGFkZGluZ1xyXG5cclxuICBoMyB7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuXHJcbiAgLmxhYmVsZWQtaW1hZ2VzLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5sYWJlbC1jZWxsIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XHJcbiAgICAgIHdpZHRoOiAyNjBweDtcclxuXHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICAgIGJvdHRvbTogNDBweDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAubGFiZWwtdGV4dCB7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgICAgICYudGl0bGUge1xyXG4gICAgICAgICAgbWFyZ2luOiAzMHB4IDAgMDtcclxuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICYuZGVzYy1sYWJlbCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAubGFiZWwtaW1hZ2Uge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE4MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XHJcbiAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbjogMTVweCAyMHB4IDMwcHggNDBweDtcclxuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgJi5zcGVjaWFsLWhlaWdodCB7XHJcbiAgICB9XHJcbiAgICAmLnRpdGxlLWxhYmVsIHtcclxuICAgICAgLmxhYmVsLWltYWdlIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAubGFiZWwtY2VsbDpub3QoLmRlc2NyaXB0aW9uLWJveCk6aG92ZXIge1xyXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlcGVyYXRvciB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgIC8vICBoZWlnaHQ6IDYwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luOiA0NXB4IDIwcHggMzBweCA0MHB4O1xyXG4gICAgICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubGluay13cmFwcGVyIHtcclxuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgIG1hcmdpbjogMzBweCAyNXB4IDUwcHggMDtcclxuICAgICAgLmxpbmsge1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xyXG4gICAgICAgIGNvbG9yOiAkZ3JheTtcclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDJweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VwZXJhdG9yIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgd2lkdGg6IDUycHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KDYwMCkge1xyXG4gICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgd2lkdGg6IDQ1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XHJcbiAgICAgICYudGl0bGUtbGFiZWwge1xyXG4gICAgICAgIC5sYWJlbC1jZWxsIHtcclxuICAgICAgICAgICYuY3JlYXRpdml0eTpob3ZlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzcwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cclxuICAgICAgLmdyaWQteCB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgICAgJi5kZXNjLWxhYmVsIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIC5sYWJlbC1pbWFnZSB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuICAgICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XHJcbiAgICAgICAgICAmLnJpZ2h0LWxhYmVsIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEwMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmLnRpdGxlLWxhYmVsIHtcclxuICAgICAgICAubGFiZWwtaW1hZ2Uge1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxhYmVsLWNlbGwge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcclxuICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGhlaWdodDtcclxuXHJcbiAgICAgICAgICAmOm5vdCguZGVzY3JpcHRpb24tYm94KTpob3ZlciB7XHJcbiAgICAgICAgICAgIGhlaWdodDogMjgwcHg7XHJcbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgICAgICAgLy8gIHRyYW5zaXRpb246IG9wYWNpdHkgMnM7XHJcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAycztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5yaWdodC1sYWJlbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICB3b3JkLWJyZWFrOiBub3JtYWw7XHJcbiAgICAgICAgICAgIC8vICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwLjVzO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgd2lkdGg6IDMzMHB4O1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC01NXB4O1xyXG5cclxuICAgICAgICAmLnJpZ2h0LWxhYmVsIHtcclxuICAgICAgICAgIHJpZ2h0OiAxNXB4O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTcwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYubGVmdC1sYWJlbCB7XHJcbiAgICAgICAgICBsZWZ0OiAxNXB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmxhYmVsLXRleHQge1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogNDVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNlcGVyYXRvciB7XHJcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0NXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAubGluay13cmFwcGVyIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDUwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIC8vbWFyZ2luLWJvdHRvbTogOTBweDtcclxuXHJcbiAgICAgIC5sYWJlbC1jZWxsIHtcclxuICAgICAgICB3aWR0aDogNDgwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogLTc1cHg7XHJcbiAgICAgICAgJi5yaWdodC1sYWJlbCB7XHJcbiAgICAgICAgICByaWdodDogMTVweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJi5sZWZ0LWxhYmVsIHtcclxuICAgICAgICAgIGxlZnQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgICYuZGVzYy1sYWJlbCB7XHJcbiAgICAgICAgLmxhYmVsLWltYWdlIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICYuZGVzYy1sYWJlbCB7XHJcbiAgICAgICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMjBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgJi50aXRsZS1sYWJlbCB7XHJcbiAgICAgICAgLmxhYmVsLWNlbGwge1xyXG4gICAgICAgICAgaGVpZ2h0OiAxMzBweDtcclxuICAgICAgICAgICY6bm90KC5kZXNjcmlwdGlvbi1ib3gpOmhvdmVyIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiAyOTBweDtcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgLmRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgICAubGFiZWwtY2VsbCB7XHJcbiAgICAgICAgd2lkdGg6IDY3MHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC02NXB4O1xyXG4gICAgICAgIC5sYWJlbC10ZXh0LnRpdGxlIHtcclxuICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcblxyXG4gICAgICAmLmRlc2MtbGFiZWwge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIH1cclxuICAgICAgJi50aXRsZS1sYWJlbCB7XHJcbiAgICAgICAgLmxhYmVsLWNlbGwge1xyXG4gICAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZXBlcmF0b3Ige1xyXG4gICAgICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDkwcHg7XHJcbiAgICAvL21hcmdpbi1ib3R0b206IDkwcHg7XHJcblxyXG4gICAgaDMge1xyXG4gICAgICBwYWRkaW5nLXRvcDogMTMwcHg7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICB9XHJcbiAgICAubGFiZWxlZC1pbWFnZXMtd3JhcHBlciAuZGVzY3JpcHRpb24ge1xyXG4gICAgICBtYXJnaW46IDQ1cHggODBweCAzMHB4IDYwcHg7XHJcbiAgICAgIC8vIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiA4MHB4O1xyXG4gICAgaDMge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gICAgLy8gIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgfVxyXG59XHJcbiIsIi5mcm9udC13cmFwcGVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgLy9iYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG4gIC8vYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBwYWRkaW5nLWJvdHRvbTogMzBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgcGFkZGluZy1ib3R0b206IDkwcHg7XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAxMzBweDtcclxuICB9XHJcblxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICBIZXJvIEJhbm5lclxyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAuaGVyby1iYW5uZXIge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAudmlkZW8td3JhcHBlcntcclxuICAgICAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgfVxyXG4gICAgLmltYWdlLXdyYXBwZXJ7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICBoZWlnaHQ6IDQwMHB4O1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICB9XHJcbiAgICAgIC5vdmVybGF5e1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7IHJpZ2h0OiA1MCU7XHJcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSg1MCUsLTUwJSk7XHJcbiAgICAgICAgICB3aWR0aDogMTAwJTtcclxuXHJcbiAgICAgICAgICBoM3tcclxuICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogNC41dnc7XHJcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcclxuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmNvbnRyb2xzIHtcclxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICB0b3A6IDUwJTtcclxuICAgICAgbGVmdDogNTAlO1xyXG4gICAgICBtYXJnaW4tdG9wOiAtMTAwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAtNzBweDtcclxuXHJcbiAgICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgYm9yZGVyOiAxMnB4IHNvbGlkICRncmF5O1xyXG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA5MHB4O1xyXG5cclxuICAgICAgLmltYWdlLXdyYXBwZXJ7XHJcbiAgICAgICAgaW1ne1xyXG4gICAgICAgICAgaGVpZ2h0OiA2MDBweDtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3ZlcmxheXtcclxuICAgICAgICAgICAgaDN7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM1cHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAxMzBweDtcclxuICAgICAgLmJhbm5lci12aWRlbyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBtaW4td2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogNDAwcHg7XHJcbiAgICAgICAgLy9tYXgtaGVpZ2h0OiA0MDBweDtcclxuICAgICAgICB3aWR0aDogYXV0bztcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgei1pbmRleDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEzMHB4O1xyXG4gICAgICAudmlkZW8td3JhcHBlcntcclxuICAgICAgICAgIGhlaWdodDogNzgwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIFRleHQgSGlnaGxpZ2h0IGJsb2NrXHJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gIC50ZXh0LWhpZ2hsaWdodC1ibG9jayB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICAudGV4dC1oaWdobGlnaHQge1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgbGluZS1oZWlnaHQ6IDM0cHg7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIG1hcmdpbjogMCAxMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogOTBweDtcclxuICAgICAgLnRleHQtaGlnaGxpZ2h0e1xyXG4gICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDEzMHB4O1xyXG4gICAgICAudGV4dC1oaWdobGlnaHR7XHJcbiAgICAgICAgICBmb250LXNpemU6IDM4cHg7XHJcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgICBTcGVjaWFsaXR5IENhcmRcclxuICAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiAgLnNwZWNpYWxpdHktY2FyZHMgLmhhcy12aWRlby5sYXJnZS00IC5zcGVjaWFsaXR5LWNhcmQgLmltYWdlIHtcclxuICAgIG1heC1oZWlnaHQ6IDMwMHB4O1xyXG4gIH1cclxuICAuc3BlY2lhbGl0eS1jYXJkcyAuaGFzLXZpZGVvLmxhcmdlLTYgLnNwZWNpYWxpdHktY2FyZCAuaW1hZ2Uge1xyXG4gICAgbWF4LWhlaWdodDogNDAwcHg7XHJcbiAgfVxyXG4gIC5zcGVjaWFsaXR5LWNhcmRzIHtcclxuICAgIC8vcGFkZGluZy1ib3R0b206IDcwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG5cclxuXHJcbiAgICBpZnJhbWU+Lm1vYmlsZS1ncmFkaWVudHtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuICAgIGlmcmFtZT4uZ3JhZGllbnQtb3ZlcmxheXtcclxuICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuZ3JhZGllbnQtb3ZlcmxheXtcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG4gICAgLmNvbHVtbi1ibG9ja3MtaGVhZGVye1xyXG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzZW07XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5zcGVjaWFsaXR5LWNhcmQge1xyXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgLm92ZXJsYXkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibGFjaztcclxuICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgLy96LWluZGV4OiAyO1xyXG4gICAgICB9XHJcbiAgICAgIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyAubG9nb3tcclxuICAgICAgICBkaXNwbGF5OmJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBtYXJnaW46IGF1dG87XHJcbiAgICAgIH1cclxuICAgICAgLnNwZWNpYWxpdHktY2FyZC1pbmZvIC5sb2dvLWJveCB7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgfVxyXG4gICAgICAudmlkZW8tYm94e1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICB9XHJcbiAgICAgIC52aWRlby1wbGF5LWJ0bntcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgfVxyXG4gICAgICAubG9nb3tcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuaW1hZ2Uge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMzgycHg7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiAyMCUgdG9wO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAudGl0bGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5zZXBlcmF0b3Ige1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmVlbjtcclxuICAgICAgICBoZWlnaHQ6IDVweDtcclxuICAgICAgICAvL3dpZHRoOiA1MHB4O1xyXG4gICAgICAgIG1hcmdpbjogYXV0bztcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIHotaW5kZXg6IDM7XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICBsZWZ0OiAtMjVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIC5kZXNjcmlwdGlvbiB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgcGFkZGluZzogMCAxNXB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyZW0gO1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XHJcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogNXB4O1xyXG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XHJcbiAgICAgICAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIC5zcGVjaWFsaXR5LWNhcmQtaW5mb3tcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgLnZpZGVvLWJveHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgaW1ne1xyXG4gXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sb2dvLWJveHtcclxuICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xyXG4gICAgICAgICAgICAudGVzdGltb25pYWwtY29sdW1ucyB7XHJcbiAgICAgICAgICAgICAgLmNlbGwge1xyXG4gICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMTAwMDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5ibG9jay1jdGEge1xyXG4gICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICBidXR0b24ge1xyXG4gICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNjAwcHgpIGFuZCAobWF4LXdpZHRoOiAxMzk5cHgpIHtcclxuICAgICAgICAgIC5sb2dvLWJveCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuYmxvY2stY3RhIHtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDFlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICAmOmhvdmVyIHtcclxuICAgICAgICAuaGlkZS1ob3ZlcntcclxuICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyB7XHJcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiAxcyBvcGFjaXR5O1xyXG4gICAgICAgICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAgICAgICAudGl0bGUge1xyXG4gICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgLmJsb2NrLWN0YXtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcGFkZGluZy10b3A6IDJlbTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XHJcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDFlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xyXG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICAuc2VwZXJhdG9yIHtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgcmlnaHQ6IDA7XHJcblxyXG4gICAgICAgICAgICBtYXJnaW46IDE2cHggYXV0bztcclxuICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgLy9tYXgtaGVpZ2h0OiAyMjBweDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgLnJlZHVjZWQtc2l6ZS1jYXJke1xyXG4gICAgICAgIC5pbWFnZXtcclxuICAgICAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jYXRlZ29yeXtcclxuICAgICAgICAgICAgcHtcclxuICAgICAgICAgICAgICBjb2xvcjogI0ZGRkZGRiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgIGZvbnQ6IFdvcmsgU2FucyBTZW1pQm9sZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuZ3JhZGllbnQtb3ZlcmxheXtcclxuICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIFxyXG4gICAgICAgICAgcmdiYSgwLCAwLCAwLCAwKSAwLCBcclxuICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC42KSA4MCUsIFxyXG4gICAgICAgICAgcmdiYSgzMCwgMzAsIDMwLCAwLjcpIDEwMCUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgICAuaW1hZ2Uge1xyXG4gICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICBoZWlnaHQ6IDMwMHB4O1xyXG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICBvYmplY3QtcG9zaXRpb246IHRvcCBsZWZ0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnRpdGxlIHtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgcGFkZGluZzogMCA5MHB4O1xyXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSl7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgIC5zcGVjaWFsaXR5LWNhcmQtaW5mbyB7XHJcbiAgICAgICAgICAgIC5zZXBlcmF0b3J7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgLmltYWdlIHtcclxuICAgICAgICAgIGhlaWdodDogNDMzcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgcGFkZGluZzogMCAyMHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAuc3BlY2lhbGl0eS1jYXJkLWluZm8ge1xyXG5cclxuICAgICAgICAgICAgLnNlcGVyYXRvciB7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAuaW1hZ2V7XHJcbiAgICAgICAgICAgICAgaGVpZ2h0OiA1MTJweDtcclxuICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHJcbiAgICAgIH1cclxuICB9IFxyXG4gIC8vZW5kIHNwZWNpYWxpdHktY2FyZFxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogOTBweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgLy9tYXJnaW4tYm90dG9tOiAxMzBweDtcclxuICAgIH1cclxuICB9XHJcbiAgLmpvYi1wb3N0aW5ncy1oZWFkZXJ7XHJcblxyXG4gIH1cclxuICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgU3RhdHMgSGlnaGxpZ2h0c1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAvLyAuc3RhdHMtaGlnaGxpZ2h0cyB7XHJcbiAgLy8gICAvL21hcmdpbjogNjBweCAwIDU1cHg7XHJcbiAgLy8gICBtYXJnaW4tYm90dG9tOiA4MHB4O1xyXG4gIC8vICAgLmN1c3RvbS1ncmlkIHtcclxuICAvLyAgICAgLmlubmVyLWNlbGwge1xyXG4gIC8vICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gIC8vICAgICAgIC8vei1pbmRleDogNTtcclxuICAvLyAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgLy8gICAgICAgcGFkZGluZzogMjBweCAzNXB4O1xyXG5cclxuICAvLyAgICAgICAudGl0bGUge1xyXG4gIC8vICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAvLyAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAvLyAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xyXG4gIC8vICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xyXG4gIC8vICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAvLyAgICAgICB9XHJcblxyXG4gIC8vICAgICAgIC5kYXRhIHtcclxuICAvLyAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAvLyAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xyXG4gIC8vICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgLy8gICAgICAgfVxyXG5cclxuICAvLyAgICAgICAuc2VwZXJhdG9yIHtcclxuICAvLyAgICAgICAgIGhlaWdodDogMnB4O1xyXG4gIC8vICAgICAgICAgd2lkdGg6IDExNXB4O1xyXG4gIC8vICAgICAgICAgbWFyZ2luOiAwIDtcclxuICAvLyAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgLy8gICAgICAgfVxyXG5cclxuICAvLyAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcclxuICAvLyAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XHJcbiAgLy8gICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XHJcbiAgLy8gICAgICAgICAgIH1cclxuICAvLyAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAvLyAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuXHJcbiAgLy8gICAgICAgICAgICAgLnNlcGVyYXRvciB7XHJcbiAgLy8gICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XHJcbiAgLy8gICAgICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgICB9XHJcbiAgLy8gICAgICAgfVxyXG4gIC8vICAgICB9XHJcbiAgLy8gICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgLy8gICAgICAgZGlzcGxheTogZmxleDtcclxuICAvLyAgICAgICAuaW5uZXItY2VsbCB7XHJcbiAgLy8gICAgICAgICB3aWR0aDogY2FsYygoMTAwJSAvIDUpIC0gNXB4KTtcclxuICAvLyAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XHJcbiAgLy8gICAgICAgICBwYWRkaW5nOiAxNXB4IDEwcHggMjVweDtcclxuICAvLyAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgLy8gICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XHJcbiAgLy8gICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAvLyAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAvLyAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG4gIC8vICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgLnRpdGxlIHtcclxuICAvLyAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIC8vICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcclxuICAvLyAgICAgICAgIH1cclxuXHJcbiAgLy8gICAgICAgICAuZGF0YSB7XHJcbiAgLy8gICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcclxuICAvLyAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XHJcbiAgLy8gICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gIC8vICAgICAgICAgfVxyXG4gIC8vICAgICAgIH1cclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgLy8gICAgICAgLmlubmVyLWNlbGx7XHJcbiAgLy8gICAgICAgICAuZGF0YXtcclxuICAvLyAgICAgICAgICAgZm9udC1zaXplOiAzMnB4O1xyXG4gIC8vICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcclxuICAvLyAgICAgICAgIH1cclxuICAvLyAgICAgICB9XHJcbiAgLy8gICAgIH1cclxuICAvLyAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAvLyAgICAgICAuaW5uZXItY2VsbHtcclxuICAvLyAgICAgICAgIC50aXRsZXtcclxuICAvLyAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIC8vICAgICAgICAgfVxyXG4gIC8vICAgICAgICAgLmRhdGF7XHJcbiAgLy8gICAgICAgICAgIGZvbnQtc2l6ZTogNDJweDtcclxuICAvLyAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XHJcbiAgLy8gICAgICAgICB9XHJcbiAgLy8gICAgICAgfVxyXG4gIC8vICAgICB9XHJcbiAgLy8gICB9XHJcbiAgICBcclxuICAvLyAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgLy8gICAgICAgbWFyZ2luLWJvdHRvbTogMTIwcHg7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuXHJcbiAgICAubG9nb3MtYmxvY2t7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTMwcHg7XHJcbiAgICAgICAgLmhlYWRlcntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBhcmFncmFwaHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmxvZ297XHJcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICAgICAgICAucGFyYWdyYXBoe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICAgICAgICAgIC5wYXJhZ3JhcGh7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSAvL2VuZCBmcm9udC13cmFwcGVyXHJcbi5mdWxsLXdpZHRoLWltYWdlIGltZyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn0iLCIucG9ydGZvbGlvLWdyaWQge1xyXG4gIC8vcGFkZGluZzogMCAxNXB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcblxyXG4gIC5jYXRlZ29yeS10aXRsZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xyXG4gICAgICBsaW5lLWhlaWdodDogMzZweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5jYXRlZ29yeS1zZWxlY3RvcixcclxuICAuY2F0ZWdvcnktc2VsZWN0b3I6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuICAgIHBhZGRpbmctbGVmdDogMDtcclxuICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICB9XHJcblxyXG4gIC5wcm9qZWN0cy1jb250YWluZXIge1xyXG4gICAgLy9cclxuXHJcbiAgICAucHJvamVjdHMge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcclxuICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAycztcclxuXHJcbiAgICAgIC5hdHRhY2htZW50LXBvc3QtdGh1bWJuYWlsIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiA5NXB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcclxuICAgICAgfVxyXG5cclxuXHJcbiAgICAgIC5wcm9qZWN0LWNhcHRpb24ge1xyXG4gICAgICAgIC5wcm9qZWN0LW5hbWUge1xyXG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcm9qZWN0LXllYXIge1xyXG4gICAgICAgICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgLy8gZW5kIHByb2plY3RzXHJcblxyXG4gICAgLy8ucHJvamVjdHMtY29udGFpbmVye1xyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcclxuICAgICAgLy8gIG1heC1oZWlnaHQ6IDgwMHB4O1xyXG4gICAgICAucHJvamVjdHMge1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgICAuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wcm9qZWN0LWNhcHRpb24ge1xyXG4gICAgICAgICAgLnByb2plY3QtbmFtZSxcclxuICAgICAgICAgIC5wcm9qZWN0LXllYXIge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYwcHg7XHJcbiAgICAgIC8vICBtYXgtaGVpZ2h0OiA2MDBweDtcclxuICAgICAgLnByb2plY3RzIHtcclxuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6IDRweDtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNnB4O1xyXG5cclxuICAgICAgICAuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxNTVweDtcclxuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmU6aG92ZXIge1xyXG4gICAgICAgICAgLnByb2plY3QtY2FwdGlvbiB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDFzIG9wYWNpdHk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgLnByb2plY3QtY2FwdGlvbiB7XHJcbiAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICBsZWZ0OiA1MCU7XHJcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xyXG5cclxuICAgICAgICAgIC5wcm9qZWN0LW5hbWUge1xyXG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xyXG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcclxuICAgICAgLy9tYXgtaGVpZ2h0OiA3NTBweDtcclxuICAgICAgLnByb2plY3RzIHtcclxuICAgICAgICAuYXR0YWNobWVudC1wb3N0LXRodW1ibmFpbCB7XHJcbiAgICAgICAgICBtaW4taGVpZ2h0OiAxODVweDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy9lbmQgcHJvamVjdC1jb250YWluZXJcclxuXHJcbiAgLy8ucG9ydGZvbGlvLWdyaWRcclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgLmNhdGVnb3J5LXRpdGxlIHtcclxuICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuY2F0ZWdvcnktc2VsZWN0b3Ige1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAuY2F0ZWdvcnktdGl0bGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5jYXRlZ29yeS1jb250YWluZXIge1xyXG4gICAgICBwYWRkaW5nLWxlZnQ6IDMycHg7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuXHJcbiAgICAgIC5jYXRlZ29yeS1uYW1lcyB7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG5cclxuICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICY6dmlzaXRlZCB7XHJcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgLmNhdGVnb3J5LXRpdGxlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiXHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5Kb2luIG91ciBUZWFtXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5qb2ItcG9zdGluZ3Mtd3JhcHBlcntcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgaDF7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIGJvbGQgNTRweC81MnB4IFBsYXlmYWlyIERpc3BsYXk7XHJcbiAgICB9XHJcbiAgICBoM3tcclxuICAgICAgICBmb250OiBub3JtYWwgbm9ybWFsIDI2cHgvMzJweCBXb3JrIFNhbnM7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcclxuICAgIH1cclxuICAgIC5qb2Itd3JhcHBlcntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDAuNXB4IHNvbGlkICRncmF5O1xyXG4gICAgICAgIC5qb2ItbmFtZXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmpvYi1tZXRhZGF0YXtcclxuICAgICAgICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuam9iLWRlc2NyaXB0aW9ue1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuYXBwbHktbGlua3tcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDVlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5qb2Itd3JhcHBlcntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgLmpvYi1kZXNjcmlwdGlvbntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmFwcGx5LWxpbmt7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpe1xyXG4gICAgICAgIC5jZWxsOm50aC1sYXN0LW9mLXR5cGUoMil7XHJcbiAgICAgICAgICAgIC5qb2Itd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG59XHJcblxyXG5cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblBhcnRuZXIgV2l0aCBQRUdcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLnBhcnRuZXItd3JhcHBlcntcclxuICAgIGgxe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIH1cclxuXHJcbiAgICAvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICAgSW5xdWlyeSBCbG9ja1xyXG4gICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuICAgIC5pbnF1aXJ5LWJsb2Nre1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQycHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgLmhlYWRpbmd7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xMmVtO1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmlucXVpcnktd3JhcHBlcntcclxuICAgICAgICAgICAgLy9kaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuXHJcblxyXG4gICAgICAgICAgICAuaW5xdWlyeXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAyNzBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG5cclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxke1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAuNTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAuc2VwZXJhdG9ye1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMjVweCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLnRpdGxle1xyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTMwcHg7XHJcbiAgICAgICAgICAgIC5oZWFkaW5ne1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaW5xdWlyeS13cmFwcGVye1xyXG4gICAgICAgICAgICAgIC8vanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XHJcbiAgICAgICAgICAgICAgICAuaW5xdWlyeXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkLCAmOm50aC1jaGlsZCgzbisxKXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNzBweDtcclxuICAgICAgICAgICAgLmlucXVpcnktd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIC5pbnF1aXJ5e1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCA3NXB4IDY1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgzbil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNDVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgICAuaGVhZGluZ3tcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgIFBhcnRuZXIgQ29udGFjdCBGb3JtXHJcbiAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4gICAgLnBhcnRuZXItY29udGFjdC1mb3Jte1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAuc2VsZWN0LXN1YmplY3R7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vV2hhdCBXZSBEb1xyXG4ud2hhdC13ZS1kby13cmFwcGVye1xyXG4gIC8vICBwYWRkaW5nLXRvcDogNDBweDtcclxuICAgIC5hYm91dC1pbWFnZS1ibG9ja3tcclxuICAgICAgLy8gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgIC8vICBwYWRkaW5nLWJvdHRvbTogNjBweDtcclxuICAgICAgICAuaW1hZ2UtYmxvY2t7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmFib3V0LWNhcmRze1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgICAgIC5zZXJ2aWNlLWNhcmR7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsYWNrO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDA7XHJcbiAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogNDBweDtcclxuXHJcbiAgICAgICAgICAgICYubG9nby1jYXJke1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLnRpdGxle1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sb2dve1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24td3JhcHBlcntcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgICAgICAgICAgLy9oZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyNXB4IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcclxuICAgICAgICAgICAgICAgICAgICBsaW5lLWJyZWFrOiBzdHJpY3Q7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogY29udGVudC1ib3g7XHJcbiAgICAgICAgICAgICAgICAgICAgaHlwaGVuczogYXV0bztcclxuICAgICAgICAgICAgICAgICAgICAvL292ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubGVhcm4tbW9yZXtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAvLyAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xNmVtO1xyXG4gICAgICAgICAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuaWNvbntcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNzVweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJjpob3ZlcntcclxuICAgICAgICAgICAgICAgIC5pY29uLCAubG9nb3tcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uLXdyYXBwZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYubG9nby1jYXJkIC5sZWFybi1tb3Jle1xyXG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAvLy5zZXJ2aWNlLWNhcmR7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSl7XHJcbiAgICAgICAgICAgICAgICAmLnNlcnZpY2V7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDE1cHggNDBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzBweCAwIDA7XHJcbiAgICAgICAgICAgICAgICAmLmxvZ28tY2FyZHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5pY29ue1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmxlYXJuLW1vcmV7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zZXJ2aWNle1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uLXdyYXBwZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kZXNjcmlwdGlvbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAvLyAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgICAgICAgICAgJi5sb2dvLWNhcmR7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICYuc2VydmljZXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMzBweCA5MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICAgICAgICAgICYuc2VydmljZXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCA5MHB4O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAmLmxnLWNhcmQtMXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmLmxnLWNhcmQtMntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5sZy1jYXJkLTN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9Ly9zZXJ2aWNlLWNhcmRcclxuICAgIH0gLy9hYm91dC1jYXJkc1xyXG5cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgICAgIC8vcGFkZGluZy10b3A6IDYwcHg7XHJcblxyXG4gICAgICAgIC5hYm91dC1pbWFnZS1ibG9ja3tcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgIC8vICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgLmltYWdlLWJsb2Nre1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAvLyAgcGFkZGluZy1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmFib3V0LWNhcmRze1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTMwcHg7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICAuYWJvdXQtY2FyZHN7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC5wYXJ0bmVyLWxvZ29ze1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyRTJFMkU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgIC8vICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIC5zZWN0aW9uLXRpdGxle1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzRweDtcclxuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xM2VtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNsaWRlci1sb2dvcy13cmFwcGVye1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcblxyXG4gICAgICAgICAgICAuc2xpZGVyLWxvZ29ze1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcblxyXG4gICAgICAgICAgICAuc2xpZGVyLWxvZ29zLW5hdiB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5sb2dvc3tcclxuICAgICAgICAgICAgICAgIC5sb2dvLXdyYXBwZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjVweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAubG9nb3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvLy5wYXJ0bmVyLWxvZ29ze1xyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xyXG4gICAgICAgICAgICAjbG9nby13cmFwcGVyLTN7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogOTBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDgwcHg7XHJcbiAgICAgICAgICAvLyAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAgICAgICAgIC5zZWN0aW9uLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNsaWRlci1sb2dvcy13cmFwcGVye1xyXG4gICAgICAgICAgICAgICAgLnNsaWNrLWRvdHMgLnNsaWNrLWFjdGl2ZXtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IC0ycHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuc2xpZGVyLWxvZ29zLW5hdiB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNTBweDtcclxuICAgICAgICAgICAgICAgICAgICAvL29wYWNpdHk6IC41O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC04MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5zaG93LW9uLWhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAvL3otaW5kZXg6IDMwO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2hvdy1vbi1ob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5oZXJpdDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuaGlkZS1vbi1ob3ZlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICYucHJldntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJi5uZXh0e1xyXG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMzA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHJvdGF0ZSgxODApO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubG9nb3N7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAubG9nby13cmFwcGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjMwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDMwcHggNTBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dve1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcbiAgICAgICAgICAgIC5zbGlkZXItbG9nb3Mtd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIC5sb2dvc3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5sb2dvLXdyYXBwZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAyNXB4IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICAgICAgLnNsaWRlci1sb2dvcy13cmFwcGVye1xyXG4gICAgICAgICAgICAgICAgLmxvZ29ze1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgLmxvZ28td3JhcHBlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDEwcHggNDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI3MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5zbGlkZXItbG9nb3MtbmF2e1xyXG4gICAgICAgICAgICAgICAgICAgICYucHJldntcclxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTc1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICYubmV4dHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC03NXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9Ly9wYXJ0bmVyLWxvZ29zXHJcbiAgICAuc2xpY2stc2xpZGUgaW1ne1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIH1cclxuXHJcbn0gIC8vd2hhdC13ZS1kby13cmFwcGVyXHJcblxyXG5AaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgIGgxe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbi5jYXJkLWRlc2NyaXB0aW9uLXJldmVhbHtcclxuICAgIHBhZGRpbmc6IDYwcHggMjVweCA0MHB4O1xyXG4gICAgLmxvZ297XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgIHBhZGRpbmc6IDgwcHggNTVweCA3MHB4O1xyXG4gICAgICAgIC5sb2dve1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDMwcHggMzBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICBwYWRkaW5nOiA5MHB4IDgwcHg7XHJcbiAgICAgICAgLmxvZ297XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNjBweCA1MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICBwYWRkaW5nOiAxMTBweCAxMDBweDtcclxuICAgICAgICAubG9nb3tcclxuICAgICAgICAgICAgcGFkZGluZzogMCA5MHB4IDUwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5uZXdzLXdyYXBwZXIsIC52aWRlb3MtcGFnZS13cmFwcGVyIHtcclxuICBtYXJnaW4tdG9wOiA0MHB4O1xyXG5cclxuICAuaGVhZGluZy1zZWN0aW9uIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIC5kaXZpZGVye1xyXG4gICAgICB3aWR0aDogMXB4O1xyXG4gICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICBjb250ZW50OiAnJztcclxuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIGgxIHtcclxuICAgICAgLy9ib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkZ3JlZW47XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuXHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLnNvY2lhbC1pY29ucyB7XHJcbiAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogMTlweDtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICAgICAgcGFkZGluZy10b3A6IDVweDtcclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgIGgxe1xyXG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMzVweDtcclxuICAgICAgfVxyXG4gICAgICAuZGl2aWRlcntcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgICB9XHJcbiAgICAgIC5zb2NpYWwtaWNvbnN7XHJcbiAgICAgICAgICBmb250LXNpemU6IDMwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XHJcbiAgICAgICAgLnNvY2lhbC1pY29uc3tcclxuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuXHJcbiAgLm5ld3MtYXJ0aWNsZS13cmFwcGVyLCAudmlkZW8tcGFnZS13cmFwcGVyIHtcclxuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMC41cHggc29saWQgJGdyYXk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgaDR7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgIH1cclxuICAgIGltZ3tcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDE5NXB4O1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICB9XHJcbiAgICAubGluayB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgfVxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCg0NTApIHtcclxuICAgICAgaW1ne1xyXG4gICAgICAgIGhlaWdodDogMzAwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNTUwKSB7XHJcbiAgICAgIGltZ3tcclxuICAgICAgICBoZWlnaHQ6IDM1MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgaW1ne1xyXG4gICAgICAgIC8vICB3aWR0aDogMTcwcHg7XHJcbiAgICAgICAgLy8gIGhlaWdodDogMTcwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgfVxyXG4gICAgICAubGluay13cmFwcGVyIHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG4gIC8vLm1lbnUtd3JhcHBlclxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XHJcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG5cclxuXHJcblxyXG4gIH1cclxufVxyXG4iLCIuY29udGFjdC13cmFwcGVyIHtcclxuICBtYXJnaW4tdG9wOiAzMHB4O1xyXG5cclxuICBoMSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gIH1cclxuXHJcbiAgLm1hcCB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuXHJcbiAgLmNvbnRhY3QtdXMtZm9ybSB7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gIH1cclxuXHJcbiAgLmRlcGFydG1lbnQtY29udGFjdC1pbmZvIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcblxyXG4gICAgLmRlcGFydG1lbnQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLm5hbWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgfVxyXG5cclxuICAgICAgLmVtYWlsLFxyXG4gICAgICAucGhvbmUge1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgbWFyZ2luLXRvcDogNjBweDtcclxuXHJcbiAgICBoMSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NHB4O1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuY29udGFjdC11cy1mb3JtIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuZGVwYXJ0bWVudC1jb250YWN0LWluZm8ge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG5cclxuICAgICAgLmRlcGFydG1lbnQge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xyXG4gICAgLm1hcCB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XHJcbiAgICBoMSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG4iLCIuaG9tZS1ibG9nLXdyYXBwZXJ7XHJcbiAgICAubW9zdC1yZWNlbnQtcG9zdC1zZWN0aW9ue1xyXG4gICAgICAgIC5tb3N0LXJlY2VudC1wb3N0e1xyXG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wb3N0LWltYWdle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucG9zdC1tZXRhLXNlY3Rpb257XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5tb3JldGFne1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMTNlbTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcblxyXG5cclxuXHJcbiAgICAucGFnaW5hdGlvbntcclxuICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5tb3N0LXJlY2VudC1wb3N0OmhvdmVye1xyXG4gICAgICAubW9yZXRhZzphZnRlcntcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgLnNpZGViYXIsIC5zZWFyY2hmb3JtLXNtYWxse1xyXG4gICAgICAgICAgICAjc2VhcmNoZm9ybXtcclxuICAgICAgICAgICAgICAgIC5pbnB1dC1ncm91cHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5tb3N0LXJlY2VudC1wb3N0e1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcblxyXG4gICAgICAgIC5tb3N0LXJlY2VudC1wb3N0e1xyXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAucGFnaW5hdGlvbntcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgIH1cclxuXHJcblxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICAuc2lkZWJhcntcclxuICAgICAgICAgICAgLy9tYXJnaW4tbGVmdDogNzVweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgKyA0MHB4KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLm1vc3QtcmVjZW50LXBvc3R7XHJcbiAgICAgICAgICAgIGg0e1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucG9zdC1pbWFnZXtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG4gICAgLnN1YnNjcmliZS1wb3N0LXNlY3Rpb257XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAuY29udGFjdC1mb3Jte1xyXG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAuc3Vic2NyaWJlLWJsb2ctdGl0bGV7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmJ0bi1zdWJzY3JpYmV7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDQ4cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAuZmVhdHVyZWQtaW1hZ2Utc2VjdGlvbntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb257XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmJsb2ctd3JhcHBlciAuY2F0ZWdvcnktc2VsZWN0b3Ige1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xyXG4gICAgY29sb3I6ICRncmF5O1xyXG5cclxufVxyXG4iLCIuYXJjaGl2ZS13cmFwcGVye1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuXHJcbiAgICAuYXJjaGl2ZS1pbm5lci13cmFwcGVye1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbiAgICBoMXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgLmNhdGVnb3J5LXNlbGVjdG9ye1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLnBvc3Qtc2VjdGlvbntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgIC5wb3N0LWltYWdle1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAucG9zdC10aXRsZXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcclxuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnBvc3QtbWV0YS1zZWN0aW9ue1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgIGF7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucGFnaW5hdGlvbntcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5zaWRlYmFye1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDYwcHg7XHJcbiAgICAgICAgLnBhZ2luYXRpb257XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5wb3N0LXNlY3Rpb257XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcmNoaXZlLWlubmVyLXdyYXBwZXJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIC5wYWdpbmF0aW9ue1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgaDF7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi8vTWVldCB0aGUgVGVhbVxyXG4uZ3JpZC1hY2NvcmRpb24td3JhcHBlcntcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICBoMXtcclxuICAgICAgICBtYXJnaW46IDMwcHggMDtcclxuICAgIH1cclxuICAgIC5zZWN0aW9uLWhlYWRlcntcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjFlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5zZWN0aW9uLXJvd3tcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5pdGVtOmhvdmVye1xyXG4gICAgICAgICAgLmhvdmVyLXN0YXRle1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmhvdmVyLXN0YXRle1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogMDtcclxuICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkZGFyay1ibGFjaywgLjcpO1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAuaG92ZXItc3RhdGUtY29udGVudHtcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xyXG4gICAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IC02NXB4O1xyXG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XHJcbiAgICAgICAgICAgICAgLnNlcGVyYXRvcntcclxuICAgICAgICAgICAgICAgIC8vZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAuaXRlbS1uYW1lLWhvdmVye1xyXG4gICAgICAgICAgICAgICAgLy9mb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIC5sZWFybi1tb3Jle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIC5qb2ItdGl0bGUtaG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgICAgICAgLmhvdmVyLXN0YXRlLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAuaXRlbS1uYW1lLWhvdmVye1xyXG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpe1xyXG5cclxuICAgICAgICAgICAgICAuaG92ZXItc3RhdGUtY29udGVudHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgICAgICAgICAubGVhcm4tbW9yZXtcclxuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCA0cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuaXRlbS1uYW1lLWhvdmVye1xyXG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC5qb2ItdGl0bGUtaG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAubGVhcm4tbW9yZXtcclxuICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0NXB4O1xyXG5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcbiAgICAgICAgICAgICAgLmhvdmVyLXN0YXRlLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAubGVhcm4tbW9yZXtcclxuICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS1ncmlkLXBpY3tcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5hZGRpdGlvbmFsLXJvd3tcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQwcHg7XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAmLmZ1bmRze1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS1ncmlkLXBpYyBpbWd7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDcwdnc7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJpb3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmhvdmVyLXN0YXRle1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRkYXJrLWJsYWNrLCAuNCk7XHJcbiAgICAgICAgICAgICAgICAuaG92ZXItc3RhdGUtY29udGVudHtcclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKHRyYW5zZm9ybSAwLjNzIGxpbmVhcik7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgNDBweCwgMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC41cyBlYXNlLWluLW91dCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciwgJi5hY3RpdmV7XHJcbiAgICAgICAgICAgICAgICAgICAgLmhvdmVyLXN0YXRlLWNvbnRlbnR7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gICAgICAgICAgICAgICAgXHJcblxyXG4gICAgfSAvL2VuZCBzZWN0aW9uLXJvd1xyXG4gICAgLmFmdGVye1xyXG4gICAgICAgIC8vaGVpZ2h0OiA2NTBweDtcclxuICAgICAgICAvL2Rpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgIH1cclxuICAgIC5pdGVtLWluZm8tYmFja2dyb3VuZHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgLy93aWR0aDogMTAwJTtcclxuICAgICAgICAvL2JvdHRvbTogMDtcclxuICAgICAgICBsZWZ0OiAycHg7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICB3aWR0aDogMTAwdnc7XHJcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblxyXG4gICAgICAgIC5pdGVtLWluZm97XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgLm5hbWV7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuam9iLXRpdGxle1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY2xvc2UtYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgdG9wOiAtMTVweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNTBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAvL21hcmdpbjogNjBweCAwO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuZm9ybS10aXRsZXtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgfVxyXG4gICAgXHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgICAgIGgxe1xyXG4gICAgICAgICAgICBtYXJnaW46IDYwcHggMCA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuc2VjdGlvbi1oZWFkZXJ7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zZWN0aW9uLXJvd3tcclxuICAgICAgICAgIC5hZnRlcntcclxuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgJi5mdW5kc3tcclxuICAgICAgICAgICAgICAuaXRlbS1ncmlkLXBpYyBpbWd7XHJcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMjE1cHg7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS1pbmZvLWJhY2tncm91bmR7XHJcbiAgICAgICAgICAgIC5pdGVtLWluZm97XHJcbiAgICAgICAgICAgICAgICAuY2xvc2UtYnV0dG9ue1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogLTE1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA1NXB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIC5zZWN0aW9uLXJvd3tcclxuICAgICAgICAgICAgLy9tYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGR7XHJcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuaXRlbS1ncmlkLXBpY3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcclxuICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgJi5hZGRpdGlvbmFsLXJvd3tcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC02MHB4O1xyXG5cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmLmZ1bmRze1xyXG4gICAgICAgICAgICAgICAgLml0ZW0tZ3JpZC1waWMgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzEwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuaXRlbS1pbmZvLWJhY2tncm91bmQgLml0ZW0taW5mb3sgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogNjAwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuaXRlbS1pbmZvLWJhY2tncm91bmR7XHJcbiAgICAgICAgICAgIC5pdGVtLWluZm97XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgICAgICAgICAgICAgIC5uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDQ1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hZnRlcntcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2Upe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICB9XHJcbn0iLCIuc2luZ2xlLXBvc3Qge1xyXG4gIC5wb3N0LW1ldGEtc2VjdGlvbiB7XHJcbiAgICBhIHtcclxuICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLnBvc3QtY29udGVudCB7XHJcbiAgICBwIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5mZWF0dXJlZC1pbWFnZS1jYXJvdXNlbCB7XHJcbiAgICAuc2xpZGVyLWZvciAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XHJcbiAgICAgIG1hcmdpbi10b3A6IC0zcHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xyXG4gICAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24uYmxvZy1zaW5nbGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wb3N0LWNvbnRlbnQge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mZWF0dXJlZC1pbWFnZS1jYXJvdXNlbCB7XHJcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG5cclxuICAgICAgLnNsaWRlci1uYXYge1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcclxuICAgIC5mZWF0dXJlZC1pbWFnZS1zZWN0aW9uLmJsb2ctc2luZ2xlIHtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAgIC5oZWFkZXItc2VjdGlvbiB7XHJcbiAgICAgICAgYm90dG9tOiA2MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xyXG4gICAgLmZlYXR1cmVkLWltYWdlLXNlY3Rpb24uYmxvZy1zaW5nbGUge1xyXG4gICAgICAuaGVhZGVyLXNlY3Rpb24ge1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgfVxyXG5cclxuICAuZmVhdHVyZWQtaW1hZ2UtY2Fyb3VzZWwge1xyXG4gICAgLnNsaWRlci1mb3IgLnNsaWNrLXNsaWRlIHtcclxuICAgICAgaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCIub3JiaXQtZmlndXJlIGltZyB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWNvbnRhaW5lciB7XHJcbiAgcGFkZGluZzogMCAxNnB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gIC5wcm9qZWN0LXRpdGxlIHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xyXG4gIH1cclxuXHJcbiAgLnByb2plY3QtZGV0YWlscyB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcblxyXG4gICAgLnByb2plY3QtZGVzY3JpcHRpb24ge1xyXG4gICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdC1zcGVjczpsYXN0LW9mLXR5cGUge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcclxuICAgIH1cclxuICAgIC5wcm9qZWN0LXNwZWNze1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMXB4O1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5mb3J3YXJkLCAuYmFja3dhcmR7XHJcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDhlbTtcclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdC1uYXZpZ2F0aW9uLWxpbmtzIHtcclxuICAgICAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgJi5mb3J3YXJke1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAmLmJhY2t3YXJke1xyXG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvamVjdHMtcGFnZS1saW5re1xyXG4gICAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcclxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgIC5wcm9qZWN0LWRldGFpbHN7XHJcbiAgICAgIHBhZGRpbmctdG9wOiAyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5zbGlkZXItbmF2e1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIH1cclxuICAuc2xpY2stYWN0aXZlOmxhc3Qtb2YtdHlwZXtcclxuICAgIC8vcGFkZGluZy1yaWdodDogMDtcclxuICB9XHJcbiAgLnNsaWRlci1mb3IgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZle1xyXG4gICAgICBidXR0b257XHJcbiAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNnB4O1xyXG4gICAgICAgICAgIH1cclxuICAgICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pe1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuXHJcbiAgICAucHJvamVjdC1kZXRhaWxze1xyXG4gICAgICAgIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICBwYWRkaW5nLXRvcDogMWVtO1xyXG4gICAgICAgIH1cclxuICAgICAgLnByb2plY3Qtc3BlY3M6bGFzdC1vZi10eXBle1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgIH1cclxuICAgICAgLnByb2plY3QtbmF2aWdhdGlvbi1saW5rcyB7XHJcbiAgICAgICAgICAmLmJhY2t3YXJke1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgIC5mZWF0dXJlZC1pbWFnZS1jYXJvdXNlbHtcclxuICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcclxuICAgIH1cclxuICAgIC52ZXJ0aWNsZSB7XHJcbiAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAjNzE4Yjc1O1xyXG4gICAgICBoZWlnaHQ6IDYwMHB4O1xyXG4gICAgICB3aWR0aDogMXB4O1xyXG4gICAgICBtYXJnaW4tdG9wOiAwcHg7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIC5wcm9qZWN0LXRpdGxle1xyXG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG4gICAgLnByb2plY3QtZGV0YWlsc3tcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAucHJvamVjdC1zcGVjczpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcm9qZWN0LW5hdmlnYXRpb24tbGlua3Mge1xyXG4gICAgICAgICYuZm9yd2FyZHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XHJcbiAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDogNTAlO1xyXG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcclxuICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgJi5iYWNrd2FyZHtcclxuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcclxuICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xMHB4O1xyXG4gICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuXHJcblxyXG4vLy0tLS0tLS0tLS1QaXBlbGluZS0tLS0tLS0tLS0tLS8vXHJcbi5waXBlbGluZXtcclxuICAgIC5oZXJvLXdyYXBwZXJ7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ibGFjaztcclxuICAgICAgICAuaGVyb3tcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAucHJvamVjdC1uYW1le1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIHRvcDoxMHB4O1xyXG4gICAgICAgICAgICB6LWluZGV4OiA1O1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5vdmVybGF5LXRleHR7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTogNTAlO1xyXG4gICAgICAgICAgICBsZWZ0OiA1MCU7ICBcclxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICB9ICAgICAgICAgIFxyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAzMCUpO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC44cyBsaW5lYXIsIG9wYWNpdHkgMXMgZWFzZS1pbi1vdXQ7XHJcbiAgICAgICAgICAgICYuaW4tdmlld3tcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAxMCUpO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHMgbGluZWFyLCBvcGFjaXR5IDFzIGVhc2UtaW4tb3V0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDU7XHJcbiAgICAgICAgICAgIC8vcGFkZGluZy1sZWZ0OiAxNXB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGFnbGluZXtcclxuICAgICAgICAgICAgei1pbmRleDogMTA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgICAgIC5oZXJvLWdyb3Vwe1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5wcm9qZWN0LW5hbWV7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDUwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC50YWdsaW5lLCAucHJvamVjdC1uYW1le1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMDtcclxuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXItbWF4LXdpZHRoLW1kO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5vdmVybGF5LXRleHR7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAyNSUpO1xyXG4gICAgICAgICAgICAgICAgJi5pbi12aWV3e1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSl7XHJcbiAgICAgICAgICAgIC50YWdsaW5le1xyXG4gICAgICAgICAgICAgIGJvdHRvbTogNzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucHJvamVjdC1uYW1le1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAkZ3JpZC1jb250YWluZXItbWF4LXdpZHRoLWxnO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5vdmVybGF5LXRleHR7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDYwcHg7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjRweDsgIFxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgIH1cclxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5wcm9qZWN0LW5hbWV7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDYwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnByb2plY3QtbmFtZXtcclxuICAgICAgICAgICAgICBtYXgtd2lkdGg6ICRncmlkLWNvbnRhaW5lci1tYXgtd2lkdGgteGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcblxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAucHJvamVjdC1jYXJvdXNlbHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIC5zbGlkZXItZm9yIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3Jle1xyXG4gICAgICAgICAgbWFyZ2luLXRvcDogLTNweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG5cclxuLy9IaWdobGlnaHQgU3RvcnlcclxuLmhpZ2hsaWdodC1zdG9yeS13cmFwcHBlcntcclxuICBwYWRkaW5nLXRvcDogNjBweDtcclxuICAgIC5oZWFkaW5ne1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICB9XHJcbiAgICAuaGlnaGxpZ2h0LXN0b3J5e1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4vL2ZhcVxyXG4uZmFxLW5ld3Mtd3JhcHBwZXJ7XHJcbiAgICAvL21hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAuZmFxLWhlYWRpbmcsIC5uZXdzLWhlYWRpbmd7XHJcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIxcHg7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgLy8gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLm5ld3MtaGVhZGluZ3tcclxuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XHJcbiAgICB9XHJcbiAgICAuZmFxe1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgIC5xdWVzdGlvbntcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gIC5hcnRpY2xle1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIC5leHRlcm5hbC1saW5re1xyXG4gICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgIC5mYXF7XHJcbiAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAubmV3cy13cmFwcGVye1xyXG4gICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICBtYXJnaW4tbGVmdDogNjBweDtcclxuICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDYwcHgpO1xyXG4gICAgICAubmV3cy1oZWFkaW5ne1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4uY29udGFjdC1mb3JtLXdyYXBwZXJ7XHJcbiAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICB9XHJcbiAgLmNvbnRhY3QtZm9ybS10aXRsZXtcclxuICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBsaW5lLWhlaWdodDogMjFweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG59XHJcblxyXG59Ly8gZW5kIC5waXBlbGluZVxyXG5cclxuXHJcbi5zaW5nbGUtcHJvamVjdHtcclxuICAgIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXJ7XHJcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIC5sYWJlbGVkLWltYWdlcy1jb250YWluZXJ7XHJcbiAgICAgICAgICAvLyAgbWFyZ2luLWJvdHRvbTogNjBweDtcclxuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxufVxyXG4iLCIuc2luZ2xlLWFydGljbGV7XHJcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxuICAgIC5hcnRpY2xlLWhlYWRlcntcclxuICAgICAgICAub3ZlcmxpbmUsIC5kYXRle1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kYXRle1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuICAgIC5hcnRpY2xle1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgICAgIC5wYWdlLXZpZGVve1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICBpZnJhbWUsIHZpZGVve1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE5MHB4O1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICBcclxuICAgICAgICAgICAgLnBsYXktaWNvbntcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEyMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdWJoZWFkaW5ne1xyXG4gICAgICAgICAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcclxuICAgICAgICAgICAgLy9mb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyN3B4O1xyXG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcblxyXG4gICAgICAgICAgICAud2YtYWN0aXZlICYge1xyXG4gICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYm9keXtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuXHJcblxyXG5cclxuICAgICAgICAuc3Vic2VjdGlvbntcclxuICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGg1e1xyXG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYWxsYmFjaztcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XHJcblxyXG4gICAgICAgICAgICAgICAgLndmLWFjdGl2ZSAmIHtcclxuICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnRleHR7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250YWN0c3tcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICAgICAgLnRpdGxle1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5jb250YWN0e1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxuXHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5wcmVzcy1yZWxlYXNle1xyXG4gICAgICAgIC5wcmVzcy1pbm5lci13cmFwcGVye1xyXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMjBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnNpZGViYXItaGVhZGluZ3tcclxuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjFweDtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zaWRlYmFyLWFydGljbGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZHtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLnNpZGViYXItZGF0ZXtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGluay13cmFwcGVye1xyXG4gICAgICAgICAgICAgICAgLmV4dGVybmFsLWxpbmt7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgLmFydGljbGV7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgIC5wYWdlLXZpZGVvIGlmcmFtZSwgdmlkZW97XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ2MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5zdWJzZWN0aW9ue1xyXG4gICAgICAgICAgICAgICAgaDV7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuY29udGFjdHN7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcbiAgICAgICAgLmFydGljbGUtaGVhZGVye1xyXG4gICAgICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgICAgICBoMXtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5hcnRpY2xle1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAucGFnZS12aWRlbyBpZnJhbWUsIHZpZGVve1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0NzBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY29udGFjdHN7XHJcbiAgICAgICAgICAgICAgICAuY29udGFjdHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5mZWF0dXJlZC1pbWFnZS1jYXJvdXNlbHtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnByZXNzLXJlbGVhc2V7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xyXG4gICAgICAgICAgICAucHJlc3MtaW5uZXItd3JhcHBlcntcclxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XHJcblxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSl7XHJcbiAgICAgICAgLmFydGljbGV7XHJcbiAgICAgICAgICAgIC5wYWdlLXZpZGVvIGlmcmFtZSwgdmlkZW97XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU2MHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIi5zaW5nbGUtam9ie1xyXG4gICAgbWFyZ2luLXRvcDogNDBweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcblxyXG4gICAgLmNvbnRhaW5lciB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDU2LjI1JTsgLyogMTY6OSBBc3BlY3QgUmF0aW8gKGRpdmlkZSA5IGJ5IDE2ID0gMC41NjI1KSAqL1xyXG4gICAgICB9XHJcbiAgICAgIFxyXG4gICAgICAvKiBUaGVuIHN0eWxlIHRoZSBpZnJhbWUgdG8gZml0IGluIHRoZSBjb250YWluZXIgZGl2IHdpdGggZnVsbCBoZWlnaHQgYW5kIHdpZHRoICovXHJcbiAgICAgIC5yZXNwb25zaXZlLWlmcmFtZSB7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgIH1cclxuICAgIC5qb2ItY29udGFpbmVye1xyXG4gICAgICAgIGgxe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuam9iLW1ldGFkYXRhe1xyXG4gICAgICAgICAgICBjb2xvcjogJGdyYXk7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5qb2ItZGF0YS1jb250YWluZXJ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcclxuICAgICAgICAudGl0bGV7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC50ZXh0e1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAmLnF1YWxpZmljYXRpb25ze1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIHVse1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdWx7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgLmpvYi1hcHBsaWNhdGlvbi1jb250YWluZXJ7XHJcbiAgICAgICAgLmNvbnRhY3QtZm9ybXtcclxuICAgICAgICAgICAgLnVwbG9hZC1sYWJlbHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC5hZGQtZmlsZXN7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvZGVkcm9wei11cGxvYWQtaGFuZGxlcntcclxuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgLmNvZGVkcm9wei11cGxvYWQtY29udGFpbmVye1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDgwcHggMjBweDtcclxuICAgICAgICAgICAgICAgICAgICAvL3BsdXNcclxuICAgICAgICAgICAgICAgICAgICBoM3tcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLy9Nb2JpbGUgdGV4dFxyXG4gICAgICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC8vRGVza3RvcCB0ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgLmNvZGVkcm9wei1idG4td3JhcHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3Bhbi5oYXMtZXJyb3ItbXNne1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiAyODBweDtcclxuICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogODB2dztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZG5kLXVwbG9hZC1zdGF0dXN7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgdG9wOiA0MHB4O1xyXG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOiA4MHZ3O1xyXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCl7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAxMzBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDUpe1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMjIwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg2KXtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDI4MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC5kbmQtdXBsb2FkLWRldGFpbHN7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMzczNzM3O1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIC5uYW1le1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmF5O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kbmQtaWNvbi1yZW1vdmU6YmVmb3Jle1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAneCc7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAuZG5kLXByb2dyZXNzLWJhcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRuZC11cGxvYWQtaW1hZ2V7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXXtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggNDVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSl7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNjBweDtcclxuICAgICAgICAuam9iLWFwcGxpY2F0aW9uLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgLmNvbnRhY3QtZm9ybXtcclxuICAgICAgICAgICAgICAgIC5hZGQtZmlsZXN7XHJcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiA4MHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3Bhbi5oYXMtZXJyb3ItbXNne1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6IDI2MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRuZC11cGxvYWQtc3RhdHVze1xyXG4gICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDQpe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDExMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCg1KXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAxODBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNil7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMjYwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIC5kbmQtdXBsb2FkLWRldGFpbHN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAubmFtZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVte1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY29kZWRyb3B6LXVwbG9hZC1oYW5kbGVye1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XHJcblxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmRuZC11cGxvYWQtc3RhdHVze1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2NTBweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKXtcclxuICAgICAgICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gICAgICAgIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAuY29udGFjdC1mb3Jte1xyXG4gICAgICAgICAgICAgICAgc3Bhbi5oYXMtZXJyb3ItbXNne1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDogMjgwcHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuY29kZWRyb3B6LXVwbG9hZC1oYW5kbGVyIC5jb2RlZHJvcHotdXBsb2FkLWNvbnRhaW5lcntcclxuICAgICAgICAgICAgICAgICAgICAvL01vYmlsZSB0ZXh0XHJcbiAgICAgICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgLy9EZXNrdG9wIHRleHRcclxuICAgICAgICAgICAgICAgICAgICAuY29kZWRyb3B6LWJ0bi13cmFwe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZG5kLXVwbG9hZC1zdGF0dXN7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2Upe1xyXG4gICAgICAgIC5qb2ItYXBwbGljYXRpb24tY29udGFpbmVye1xyXG4gICAgICAgICAgICAuY29udGFjdC1mb3JtIC51cGxvYWQtbGFiZWx7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKXtcclxuICAgICAgICAuam9iLWNvbnRhaW5lciAuam9iLW1ldGFkYXRhe1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuam9iLWRhdGEtY29udGFpbmVye1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0= */
